Skip to content

Commit 1cbd423

Browse files
Copilotmbg
andcommitted
Improve portability and fix PR detection in Go version workflow
Co-authored-by: mbg <278086+mbg@users.noreply.github.com>
1 parent 437244f commit 1cbd423

File tree

1 file changed

+11
-7
lines changed

1 file changed

+11
-7
lines changed

.github/workflows/go-version-update.yml

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Update Go version
33
on:
44
workflow_dispatch:
55
schedule:
6-
- cron: "0 3 * * 1" # Run weekly on Monday at 3 AM UTC
6+
- cron: "0 3 * * 1" # Run weekly on Mondays at 3 AM UTC (1 = Monday)
77

88
permissions:
99
contents: write
@@ -38,7 +38,7 @@ jobs:
3838
echo "version_num=$LATEST_VERSION_NUM" >> $GITHUB_OUTPUT
3939
4040
# Extract major.minor version (e.g., 1.26.0 -> 1.26)
41-
LATEST_MAJOR_MINOR=$(echo $LATEST_VERSION_NUM | sed -n 's/^\([0-9]\+\.[0-9]\+\).*/\1/p')
41+
LATEST_MAJOR_MINOR=$(echo $LATEST_VERSION_NUM | sed -E 's/^([0-9]+\.[0-9]+).*/\1/')
4242
echo "major_minor=$LATEST_MAJOR_MINOR" >> $GITHUB_OUTPUT
4343
4444
- name: Check current Go version
@@ -49,7 +49,7 @@ jobs:
4949
echo "version=$CURRENT_VERSION" >> $GITHUB_OUTPUT
5050
5151
# Extract major.minor version
52-
CURRENT_MAJOR_MINOR=$(echo $CURRENT_VERSION | sed -n 's/^\([0-9]\+\.[0-9]\+\).*/\1/p')
52+
CURRENT_MAJOR_MINOR=$(echo $CURRENT_VERSION | sed -E 's/^([0-9]+\.[0-9]+).*/\1/')
5353
echo "major_minor=$CURRENT_MAJOR_MINOR" >> $GITHUB_OUTPUT
5454
5555
- name: Compare versions
@@ -114,9 +114,9 @@ jobs:
114114
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
115115
run: |
116116
BRANCH_NAME="workflow/go-version-update"
117-
PR_NUMBER=$(gh pr list --head "$BRANCH_NAME" --state open --json number --jq '.[]? | .number')
117+
PR_NUMBER=$(gh pr list --head "$BRANCH_NAME" --state open --json number --jq '.[0].number')
118118
119-
if [ -n "$PR_NUMBER" ]; then
119+
if [ "$PR_NUMBER" != "null" ] && [ -n "$PR_NUMBER" ]; then
120120
echo "Existing PR found: #$PR_NUMBER"
121121
echo "pr_exists=true" >> $GITHUB_OUTPUT
122122
echo "pr_number=$PR_NUMBER" >> $GITHUB_OUTPUT
@@ -152,15 +152,19 @@ jobs:
152152
CURRENT_MAJOR_MINOR="${{ steps.current-version.outputs.major_minor }}"
153153
154154
PR_TITLE="Go: Update to $LATEST_MAJOR_MINOR"
155-
PR_BODY="This PR updates Go from $CURRENT_MAJOR_MINOR to $LATEST_MAJOR_MINOR.
155+
156+
PR_BODY=$(cat <<EOF
157+
This PR updates Go from $CURRENT_MAJOR_MINOR to $LATEST_MAJOR_MINOR.
156158
157159
Updated files:
158160
- \`MODULE.bazel\` - go_sdk.download version
159161
- \`go/extractor/go.mod\` - go directive and toolchain
160162
- \`go/extractor/autobuilder/build-environment.go\` - maxGoVersion
161163
- \`go/actions/test/action.yml\` - default go-test-version
162164
163-
This PR was automatically created by the [Go version update workflow](.github/workflows/go-version-update.yml)."
165+
This PR was automatically created by the [Go version update workflow](.github/workflows/go-version-update.yml).
166+
EOF
167+
)
164168
165169
if [ "${{ steps.check-pr.outputs.pr_exists }}" = "true" ]; then
166170
echo "Updating existing PR #${{ steps.check-pr.outputs.pr_number }}"

0 commit comments

Comments
 (0)