Skip to content

Commit 90c04a4

Browse files
fix(ci): harden workflow_dispatch tag handling in release
1 parent 4ac0383 commit 90c04a4

1 file changed

Lines changed: 13 additions & 1 deletion

File tree

.github/workflows/release.yml

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,21 @@ jobs:
3232
- name: Stash GoReleaser config
3333
run: cp .goreleaser.yaml /tmp/.goreleaser.yaml
3434

35+
- name: Validate release tag
36+
if: ${{ github.event_name == 'workflow_dispatch' }}
37+
env:
38+
RELEASE_TAG: ${{ inputs.tag }}
39+
run: |
40+
if ! echo "$RELEASE_TAG" | grep -qE '^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z0-9.]+)?$'; then
41+
echo "::error::Invalid tag format: $RELEASE_TAG"
42+
exit 1
43+
fi
44+
3545
- name: Checkout release tag
3646
if: ${{ github.event_name == 'workflow_dispatch' }}
37-
run: git checkout ${{ inputs.tag }}
47+
env:
48+
RELEASE_TAG: ${{ inputs.tag }}
49+
run: git checkout "$RELEASE_TAG"
3850

3951
- name: GoReleaser
4052
uses: goreleaser/goreleaser-action@v6

0 commit comments

Comments
 (0)