fix(release): simplify to single-runner linux-only release#135
Merged
Conversation
v0.3.0 release run (#25779202189) failed at the publish job with:
error: git is in a dirty state
│ Please check in your pipeline what can be changing the following files:
│ ?? prebuilt/
Root cause: the workflow ran a build matrix (linux/amd64, linux/arm64,
darwin/arm64), uploaded each result as an actions artifact, then the
publish job downloaded them into `prebuilt/` — but goreleaser's
release subcommand refuses to run when the working tree has untracked
files. Worse: `goreleaser release --clean` rebuilds everything from
source ANYWAY, ignoring the downloaded artifacts, so the matrix was
wasted effort.
The original matrix was over-engineering for CGO. linux→linux
cross-compile to arm64 works cleanly with gcc-aarch64-linux-gnu (both
kuzudb and go-sqlite3 build).
Simpler design that actually ships v0.3.0:
- Single ubuntu-latest runner.
- Two `builds:` entries in .goreleaser.yml, one per arch, each with
the right CC pinned for the cross-compile.
- darwin/arm64 deferred to a follow-up workflow that uses a macos
runner and attaches binaries to the same draft Release.
Linux is the priority shape — most codeiq use is in CI / dev
containers / Linux servers. Darwin lands later without forcing v0.3.0
to wait.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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
The v0.3.0 release run #25779202189 succeeded at the matrix-build jobs but failed at the publish job:
```
error: git is in a dirty state
│ ?? prebuilt/
```
The matrix downloaded artifacts into `prebuilt/` which goreleaser flagged as dirty, refusing to publish. Worse: `goreleaser release --clean` rebuilds from source anyway, so the matrix was wasted.
Fix
After merge
```
git checkout main && git pull
v0.3.0 tag still exists at e590843, which is BEFORE this fix.
Need to delete + retag at the new HEAD.
git push --delete origin v0.3.0
git tag -d v0.3.0
git tag -s v0.3.0 -m 'v0.3.0'
git push origin v0.3.0
```
🤖 Generated with Claude Code