@@ -51,23 +51,29 @@ jobs:
5151 - name : Get the other commit from the merge if there is one
5252 id : merge
5353 run : |
54- parents=$(git log --pretty=%P -n 1 ${{ inputs.commit_sha } })
54+ parents=$(git log --pretty=%P -n 1 ${INPUTS_COMMIT_SHA })
5555 IFS=' ' read -r parent1 parent2 <<< "$parents"
5656 echo "sha=$parent2" >> $GITHUB_OUTPUT
57+ env :
58+ INPUTS_COMMIT_SHA : ${{ inputs.commit_sha }}
5759 - name : Check if commit is tagged
5860 if : ${{ steps.merge.outputs.sha != '' }}
5961 id : check
6062 run : |
61- TAG=$(git tag --points-at ${{ steps.merge.outputs.sha } } | grep releasebot || true)
63+ TAG=$(git tag --points-at ${STEPS_MERGE_OUTPUTS_SHA } | grep releasebot || true)
6264 echo "tag=$TAG" >> $GITHUB_OUTPUT
65+ env :
66+ STEPS_MERGE_OUTPUTS_SHA : ${{ steps.merge.outputs.sha }}
6367 - name : Push tag
6468 if : ${{ steps.check.outputs.tag != '' }}
6569 run : |
6670 set -ex
67- NEW_TAG=$(echo "${{ steps.check.outputs.tag } }" | awk '{gsub(/releasebot\//, ""); print}')
71+ NEW_TAG=$(echo "${STEPS_CHECK_OUTPUTS_TAG }" | awk '{gsub(/releasebot\//, ""); print}')
6872 git tag "$NEW_TAG"
6973 git push origin "$NEW_TAG"
7074 echo "::notice::Successfully created and pushed new tag: '$NEW_TAG'."
75+ env :
76+ STEPS_CHECK_OUTPUTS_TAG : ${{ steps.check.outputs.tag }}
7177
7278 build_and_push_image :
7379 runs-on : ubuntu-latest
8086 - name : Get docker tag
8187 id : create_tag
8288 run : |
83- TAG=$(echo "${{ env. BRANCH_NAME } }" | awk '{gsub(/\//, "-"); print}')
89+ TAG=$(echo "${BRANCH_NAME}" | awk '{gsub(/\//, "-"); print}')
8490 echo "image_tag=${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:$TAG" >> $GITHUB_OUTPUT
8591 - name : Checkout repository
8692 uses : actions/checkout@v4
@@ -135,28 +141,32 @@ jobs:
135141 id : prepare
136142 working-directory : ./main_branch
137143 run : |
138- go run ./hack/prepare_rc ${{ env. BRANCH_NAME } } ../release_branch
144+ go run ./hack/prepare_rc ${BRANCH_NAME} ../release_branch
139145 - name : Regen files
140146 working-directory : ./release_branch
141147 # Workflows can't edit workflows. Better to create PR and let tests fail.
142148 run : |
143149 mv .github ..
144- make regen CACHE_IMAGE_FROM=${{ needs.build_and_push_image.outputs.image_tag } }-cache
150+ make regen CACHE_IMAGE_FROM=${NEEDS_BUILD_AND_PUSH_IMAGE_OUTPUTS_IMAGE_TAG }-cache
145151 mv ../.github .
152+ env :
153+ NEEDS_BUILD_AND_PUSH_IMAGE_OUTPUTS_IMAGE_TAG : ${{ needs.build_and_push_image.outputs.image_tag }}
146154 - name : Commit and Tag Release Candidate
147155 if : steps.prepare.outputs.full_rc_version != ''
148156 id : push
149157 working-directory : ./release_branch
150158 run : |
151159 set -e
152- BOT_BRANCH=$(echo "${{ env. BRANCH_NAME } }" | awk '{gsub(/release/, "releasebot"); print}')
160+ BOT_BRANCH=$(echo "${BRANCH_NAME}" | awk '{gsub(/release/, "releasebot"); print}')
153161 echo "bot_branch=$BOT_BRANCH" >> $GITHUB_OUTPUT
154162 git checkout -b "$BOT_BRANCH"
155163 git add .
156- RC="${{ steps.prepare.outputs.full_rc_version } }"
164+ RC="${STEPS_PREPARE_OUTPUTS_FULL_RC_VERSION }"
157165 git commit -as -m"chore: prepare for $RC release"
158166 git tag -a "releasebot/$RC" -m "releasebot release candidate $RC"
159167 git push -f origin "$BOT_BRANCH" "releasebot/$RC"
168+ env :
169+ STEPS_PREPARE_OUTPUTS_FULL_RC_VERSION : ${{ steps.prepare.outputs.full_rc_version }}
160170 manage_pr :
161171 permissions :
162172 contents : read
@@ -172,20 +182,22 @@ jobs:
172182 - name : Manage Release PR
173183 env :
174184 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
185+ NEEDS_PREPARE_RC_OUTPUTS_BOT_BRANCH : ${{needs.prepare_rc.outputs.bot_branch}}
186+ NEEDS_PREPARE_RC_OUTPUTS_FULL_RC_VERSION : ${{ needs.prepare_rc.outputs.full_rc_version }}
175187 run : |
176- BOT_BRANCH=${{needs.prepare_rc.outputs.bot_branch} }
177- RC=${{ needs.prepare_rc.outputs.full_rc_version } }
188+ BOT_BRANCH=${NEEDS_PREPARE_RC_OUTPUTS_BOT_BRANCH }
189+ RC=${NEEDS_PREPARE_RC_OUTPUTS_FULL_RC_VERSION }
178190 EXISTING_PR_NUMBER=$(gh pr list \
179- --base ${{ env. BRANCH_NAME } } \
191+ --base ${BRANCH_NAME} \
180192 --head $BOT_BRANCH \
181193 --state open \
182194 --json number \
183195 -q '.[0].number // empty')
184196
185197 if [[ -z "$EXISTING_PR_NUMBER" ]]; then
186198 gh pr create \
187- --base ${{ env. BRANCH_NAME } } \
199+ --base ${BRANCH_NAME} \
188200 --head $BOT_BRANCH \
189201 --title "chore: prepare for $RC release" \
190202 --body "Beep boop. Merging activates deployment. A fresh PR appears on merge. Boop beep."
191- fi
203+ fi
0 commit comments