1.5 KiB
1.5 KiB
| summary |
|---|
| Release checklist for spogo (GitHub release binaries via GoReleaser) |
Releasing spogo
Always do all steps below (CI + changelog + tag + GitHub release assets). No partial releases.
Shortcut (if you want scripts later): create them to mirror this doc.
Assumptions:
- Repo:
steipete/spogo - Binary:
spogo - GoReleaser config:
.goreleaser.yaml
0) Prereqs
- Clean working tree on
main. - Go toolchain installed (version from
go.mod). - CI is green.
1) Verify build is green
./scripts/lint.sh
./scripts/check-coverage.sh 90
Confirm GitHub Actions CI is green for the commit you’re tagging:
gh run list -L 5 --branch main
2) Update changelog
- Update
CHANGELOG.mdfor the version you’re releasing.
Example heading:
## 0.1.0 - 2026-01-02
3) Commit, tag & push
git checkout main
git pull
# commit changelog + any release tweaks
git commit -am "release: vX.Y.Z"
git tag -a vX.Y.Z -m "Release X.Y.Z"
git push origin main --tags
4) Verify GitHub release artifacts
The tag push triggers .github/workflows/release.yml (GoReleaser). Ensure it completes successfully and the release has assets.
gh run list -L 5 --workflow release.yml
gh release view vX.Y.Z
Ensure GitHub release notes are not empty (mirror the changelog section).
If the workflow needs a rerun:
gh workflow run release.yml -f tag=vX.Y.Z
Notes
- GoReleaser publishes binaries for macOS, Linux, and Windows.