Repository navigation
Release through the shared Go release workflow - #35
Merged
Merged
Conversation
release.yml becomes a thin caller of simtabi/.github's go-release.yml, pinned to its merge commit. A release builds on a pushed vX.Y.Z tag or on request for a tag already pushed, replacing the dispatch-only, confirm=release-go workflow. The guards now pin those two triggers, the call to the shared workflow, the src/vX.Y.Z alias, and a GoReleaser config with no publishing block besides the GitHub release.
Binaries ship on the GitHub release only (owner, 2026-11-13). The homebrew_casks, scoops and winget blocks go, and with them the deploy keys, the app token and the SKIP_SCOOP / SKIP_WINDOWS_PKGS switches. The 0.1.1 cask in simtabi/homebrew-tap is frozen, not deleted.
README and installation offer the release download, checked against checksums.txt, then a build from source. docs/release.md gives both ways to release with real commands, and describes the old cask as frozen.
No Scoop or Winget manifest exists for osaat; only Casks/osaat.rb is in simtabi/homebrew-tap (checked against the bucket and the tap).
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.
Summary
Moves osaat's release onto simtabi/.github's shared Go release workflow, per the 2026-11-13 standard: binaries ship on the GitHub release only, and a release builds on a pushed version tag or on request.
release.ymlis now a thin caller ofsimtabi/.github/.github/workflows/go-release.yml@745880bdb9b35a21eb16824cfc995f16e1e82fd5(Add the shared Go release workflow .github#27). Its triggers arepush: tags(v[0-9]+.[0-9]+.[0-9]+,v[0-9]+.[0-9]+.[0-9]+-*) andworkflow_dispatchwith a requiredtag. Concurrency is per tag and never cancelled.src/.goreleaser.yaml,src/go.mod, thesrc/vX.Y.Zalias tag, notes fromCHANGELOG.md, syft for SBOMs, and attestation overchecksums.txt(it readsdist: .cache/goreleaserfrom the config). This repo has no extra assets, so there is nopost-releasestep.src/scripts/extract-changelog.shfor 0.1.1 and 0.1.0, apart from a leading blank line and, for the oldest section only, the trailing link-reference definitions (GitHub does not render those). The script stays for local use.docs/installation.mdoffer the release download (checked againstchecksums.txt, withgh attestation verify), then a build from source.docs/release.mdgives both release commands. The 0.1.1 Homebrew cask is described as frozen.Removed
src/.goreleaser.yaml: thehomebrew_casks,scoopsandwingetblocks.release.yml: theenvironment: release, theUSE_DEPLOY_KEYSenv, the Refresh Bot token step (REFRESH_APP_CLIENT_ID/REFRESH_APP_PRIVATE_KEY), theTAP_GITHUB_TOKEN,HOMEBREW_TAP_DEPLOY_KEYandSCOOP_BUCKET_DEPLOY_KEYenv, and theSKIP_WINDOWS_PKGS/SKIP_SCOOPswitches. These only fed the three blocks above. The repository secrets and variables themselves are untouched.confirm=release-gorefusal step. The shared workflow's tag check replaces it.TestReleaseRunsOnlyOnAConfirmedDispatchbecameTestReleaseRunsOnAVersionTagOrOnRequest.TestReleaseRefusesFirst(confirm step first, alias script inline) becameTestReleaseKeepsTheModuleAliasTag, which fails if the caller switches offmodule-alias-prefixor overrides the config,go.modor changelog paths. New:TestGoReleaserPublishesNowhereElseasserts that the three removed blocks, and every other banned block, are absent.The
simtabi/homebrew-tapcask for 0.1.1 is not touched. It is frozen: it stays and keeps working, and no release updates it.Verification
go -C src test -count=1 ./...passes;go -C src vet ./...andgofmt -l srcare clean;golangci-lint runon the changed packages reports 0 issues. The full suite ran withHOMEpointed at a temp dir, because the sandbox refuses writes to~/.config.actionlint1.7.12 is clean on.github/workflows/*.yml.go test -count=1, then restored:branches: [main]under push, ascheduletrigger,uses:pointed at another repo, a'*'tag filter,module-alias-prefix: '', and abrews:block. Each failed its guard.