Fix/ci pipeline issues#115
Conversation
WalkthroughThe release workflow now runs GoReleaser in snapshot mode, and the linter configuration removes its colored line-number output override. ChangesTooling updates
Estimated code review effort: 1 (Trivial) | ~3 minutes Suggested labels: Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/release.yml:
- Line 84: Update the release workflow’s GoReleaser invocation to remove the
--snapshot flag, leaving goreleaser release --clean so the release job publishes
binaries and checksums.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yml
Review profile: ASSERTIVE
Plan: Pro
Run ID: 67918644-d0f1-406f-8196-b451f1c23811
📒 Files selected for processing (2)
.github/workflows/release.yml.golangci.yml
💤 Files with no reviewable changes (1)
- .golangci.yml
📜 Review details
🧰 Additional context used
📓 Path-based instructions (2)
.github/workflows/*.yml
📄 CodeRabbit inference engine (README.md)
CI must build Go code, run race-detected tests and golangci-lint, check formatting, verify GoReleaser configuration, perform cross-platform build checks, and validate the npm package.
Files:
.github/workflows/release.yml
.github/workflows/release.yml
📄 CodeRabbit inference engine (README.md)
Trigger releases when pushing Git tags matching
v*; build binaries with GoReleaser, generate SHA256 checksums, verify binaries, publish to npm, and upload release artifacts.
Files:
.github/workflows/release.yml
|
|
||
| - name: Run GoReleaser | ||
| run: goreleaser release --clean | ||
| run: goreleaser release --clean --snapshot |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '\n== release workflow ==\n'
wc -l .github/workflows/release.yml
sed -n '1,180p' .github/workflows/release.yml
printf '\n== ci workflow ==\n'
wc -l .github/workflows/ci.yml
sed -n '1,220p' .github/workflows/ci.ymlRepository: mindfiredigital/DeepScanBot
Length of output: 7238
🏁 Script executed:
#!/bin/bash
set -euo pipefail
printf '\n== goreleaser references ==\n'
rg -n --hidden --glob '.github/workflows/*.yml' 'goreleaser|snapshot|release --clean' .github/workflows
printf '\n== release workflow around the release step ==\n'
nl -ba .github/workflows/release.yml | sed -n '70,100p'Repository: mindfiredigital/DeepScanBot
Length of output: 812
🌐 Web query:
GoReleaser snapshot mode release --snapshot does not publish artifacts documentation
💡 Result:
GoReleaser's snapshot mode (triggered by the --snapshot flag) is specifically designed for local builds or CI validation and does not publish artifacts [1]. By design, when you run GoReleaser with --snapshot, it skips the publishing step and only generates artifacts locally within the dist directory [1][2]. This behavior is intentional; the tool maintains a strict separation between snapshot builds (for validation) and full release builds (which include publishing) [1][3]. If you require the ability to publish builds that are not full releases, GoReleaser offers alternative solutions: 1. Nightly Builds (GoReleaser Pro): For use cases requiring automated publishing of development builds (such as pushing Docker images or binaries on every commit), GoReleaser Pro provides a --nightly flag designed to handle these scenarios [3][4][5]. 2. Manual Workflows: Because snapshot mode skips publishing, some users implement manual CI steps (e.g., custom shell scripts or secondary GitHub Actions) to manually upload or push artifacts generated in the dist folder to their desired destinations (such as S3 buckets or Docker registries) [5]. For more information on the intended use of snapshots, you can refer to the official GoReleaser documentation [1].
Citations:
- 1: https://goreleaser.com/customization/publish/snapshots/
- 2: [Bug]: Unexpected build does not build docker images goreleaser/goreleaser#2710
- 3: Ability to run uploads on snapshot goreleaser/goreleaser#1538
- 4: https://goreleaser.com/customization/publish/nightlies/
- 5: Enable Publishing SNAPSHOT Builds goreleaser/goreleaser#2828
Remove --snapshot from the release job. Snapshot mode is fine in .github/workflows/ci.yml for validation, but here it only writes to dist/ and skips publishing, so the GitHub release can go out without binaries/checksums. Use goreleaser release --clean in this workflow.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/workflows/release.yml at line 84, Update the release workflow’s
GoReleaser invocation to remove the --snapshot flag, leaving goreleaser release
--clean so the release job publishes binaries and checksums.
Source: Coding guidelines
Pull Request Title
Provide a brief title that describes your changes (e.g., "Add feature X" or "Fix issue #123").
Description
What does this PR do?
Provide a concise summary of your changes and what issue or feature they address.
Related Issues
Link any related issue(s) with references to help reviewers understand the context.
Type of Change
Checklist
Please ensure the following have been completed before submitting:
gofumpt.goimportsorgci.golangci-lint.go test ./....Screenshots (if applicable)
Provide screenshots or GIFs if this PR changes the UI or has visible results.
Additional Context
Include any other context, references, or information that may be useful for the reviewers.
Thank you for your contribution!
We appreciate your efforts in making this project better.
--snapshotwith--clean.output.formatsoverride fromgolangci.ymlfor compatibility with golangci-lint v1 and v2.Breaking changes
None.