fix(ci): upgrade GoReleaser action to v6 for version: 2 config#20
Merged
itsjeremyjohnson merged 1 commit intomainfrom Apr 9, 2026
Merged
fix(ci): upgrade GoReleaser action to v6 for version: 2 config#20itsjeremyjohnson merged 1 commit intomainfrom
itsjeremyjohnson merged 1 commit intomainfrom
Conversation
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
|
|
||
| - name: Checkout release tag | ||
| if: ${{ github.event_name == 'workflow_dispatch' }} | ||
| run: git checkout ${{ inputs.tag }} |
There was a problem hiding this comment.
Unquoted user input in shell command
inputs.tag is interpolated directly into the shell without quotes. If the tag value contains spaces or shell metacharacters, this causes word splitting or unexpected behavior. Even though workflow_dispatch requires write access, quoting is the correct defensive practice.
Suggested change
| run: git checkout ${{ inputs.tag }} | |
| run: git checkout "${{ inputs.tag }}" |
Prompt To Fix With AI
This is a comment left during a code review.
Path: .github/workflows/release.yml
Line: 37
Comment:
**Unquoted user input in shell command**
`inputs.tag` is interpolated directly into the shell without quotes. If the tag value contains spaces or shell metacharacters, this causes word splitting or unexpected behavior. Even though `workflow_dispatch` requires write access, quoting is the correct defensive practice.
```suggestion
run: git checkout "${{ inputs.tag }}"
```
How can I resolve this? If you propose a fix, please make it concise.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Upgrades goreleaser-action from v5 to v6 to support the version: 2 config format in .goreleaser.yaml.
Changes:
Greptile Summary
This PR upgrades
goreleaser-actionfrom v5 to v6 to support theversion: 2config format already present in.goreleaser.yaml, and adds aworkflow_dispatchtrigger for manually re-releasing old tags using a config-stash pattern.${{ inputs.tag }}togit checkoutwithout quotes, which can cause word-splitting or unexpected shell behavior if the input contains spaces or special characters.Confidence Score: 4/5
Safe to merge after quoting the user-supplied tag input on the dispatch checkout step.
One P1 finding: unquoted user input in a shell run step that can cause word-splitting or unintended behavior for tags with special characters. All other changes (action version bump, go-version-file, stash pattern) are correct and well-structured.
.github/workflows/release.yml — specifically the unquoted inputs.tag on line 37.
Vulnerabilities
.github/workflows/release.yml, line 37):${{ inputs.tag }}is interpolated unquoted intogit checkout. A value with embedded spaces or metacharacters can cause unintended shell behavior. Access is gated behind write permission on the repo, but quoting is still required defensive practice.Important Files Changed
Flowchart
%%{init: {'theme': 'neutral'}}%% flowchart TD A([Trigger]) --> B{Event type?} B -- push tag v* --> C[Checkout repo at tag\nfetch-depth: 0] B -- workflow_dispatch --> C C --> D[Setup Go\ngo-version-file: go.mod] D --> E[Stash .goreleaser.yaml\n→ /tmp/.goreleaser.yaml] E --> F{workflow_dispatch?} F -- yes --> G[git checkout inputs.tag\n⚠ currently unquoted] F -- no --> H[Skip checkout] G --> I[GoReleaser v6\nrelease --clean --config /tmp/.goreleaser.yaml] H --> I I --> J[GitHub Release + Homebrew tap]Prompt To Fix All With AI
Reviews (1): Last reviewed commit: "fix(ci): upgrade GoReleaser action to v6..." | Re-trigger Greptile