Skip to content

Release on a version tag or on request, through the shared workflow - #117

Merged
imanimanyara merged 1 commit into
mainfrom
ci/shared-go-release
Nov 13, 2026
Merged

imanimanyara merged 1 commit into
mainfrom
ci/shared-go-release

Conversation

@imanimanyara

Copy link
Copy Markdown
Contributor

Summary

Owner, 2026-11-13: GitHub-based binaries only, built on a tag or on request, from a reusable workflow.

  • release.yml now holds only two triggers, a pushed v[0-9]+.[0-9]+.[0-9]+ (or -* pre-release) tag and workflow_dispatch -f tag=vX.Y.Z, and calls simtabi/.github's shared go-release.yml (pinned to a1dca58, Add the shared Go release workflow simtabi/.github#27). This replaces the -f confirm=release-go dispatch gate and the per-repo pipeline.
  • The app and Windows launcher step moves to .scripts/release-launchers.sh, run as the shared workflow's post-release. It now reads the tag from the shared workflow instead of GITHUB_REF_NAME, which is a branch name on a dispatched run, and hands its checksums to the shared workflow for attestation.
  • TestReleaseRunsOnAVersionTagOrOnRequest replaces TestReleaseRunsOnlyOnAConfirmedDispatch: it fails on any other trigger, a branch push, or a pipeline of its own (each proven red, with the test cache off).
  • release-please's tag starts the release: it is pushed with the Refresh Bot token, not GITHUB_TOKEN. Its header comment says so now.
  • docs/release.md, CONTRIBUTING.md, docs/installation.md, the tests.yml comments and the [0.1.0] CHANGELOG section are updated.

Because a pushed tag now publishes, the planned v0.1.0 re-squash will start this repository's first binary release when it pushes the new v0.1.0.

Verification

  • .scripts/release-launchers.sh run against a local GoReleaser snapshot (gh stubbed): it uploads the zipped app, three Windows launchers and checksums-launchers.txt to v0.1.0; extra-checksums.txt lists the four assets and all four verify.
  • go test -count=1 ./internal/cli/ ./internal/version/: pass. actionlint 1.7.12: clean on release.yml, release-please.yml, tests.yml. Changelog checker: correctly ordered.

release.yml now holds only a version-tag push and a dispatch naming a
tag, and calls simtabi/.github's go-release.yml. The app and launcher
step moves to .scripts/release-launchers.sh, run as its post-release
step, and reads the tag from it rather than GITHUB_REF_NAME.
Copilot AI balanced review requested due to automatic review settings November 13, 2026 14:21

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

@imanimanyara
imanimanyara merged commit feba675 into main Nov 13, 2026
11 checks passed
@imanimanyara
imanimanyara deleted the ci/shared-go-release branch November 13, 2026 14:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants