Skip to content

ci: add binary-release workflow for Linux targets#120

Merged
noahgift merged 1 commit into
mainfrom
feat/binary-release-workflow
Apr 27, 2026
Merged

ci: add binary-release workflow for Linux targets#120
noahgift merged 1 commit into
mainfrom
feat/binary-release-workflow

Conversation

@noahgift
Copy link
Copy Markdown
Contributor

Summary

Adds .github/workflows/binary-release.yml — release-triggered workflow that attaches cross-compiled forjar binaries (4 Linux targets) to GitHub Releases as tar.gz + sha256.

Mirrors the pattern shipped in paiml/paiml-mcp-agent-toolkit#binary-release.yml — release event triggers binary build, decoupled from cargo publish.

Targets

  • x86_64-unknown-linux-musl
  • x86_64-unknown-linux-gnu
  • aarch64-unknown-linux-musl (cross v0.2.5)
  • aarch64-unknown-linux-gnu (cross v0.2.5)

Triggers

  • release: published — fires automatically when a release is published
  • workflow_dispatch — manual re-run / backfill, takes a tag input

Test plan

  • Merge → publish a v* release → verify 4 archives + 4 sha256 files attach
  • workflow_dispatch with an existing tag → verify clobber upload
  • Confirm aarch64 binaries are stripped (cross Docker image's GNU strip)

… PMAT-068)

The existing release.yml uses [self-hosted, clean-room] runners for the
build-binaries matrix; v1.3.0 ended up with only 1 of the expected 6
binaries attached. This new workflow runs in parallel on github-hosted
ubuntu-latest runners and reliably attaches 4 Linux targets
(x86_64/aarch64 × musl/gnu) on every release.

Replicates the provable-contracts checkout + symlink + pv codegen dance
required by forjar's path dep, builds with --features vendored-openssl,
strips, archives as forjar-<tag>-<target>.tar.gz with sha256 sidecar.

Triggered by release: published and workflow_dispatch (for backfill).
macOS targets deferred to a follow-up.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@noahgift noahgift merged commit fed6d6f into main Apr 27, 2026
16 checks passed
@noahgift noahgift deleted the feat/binary-release-workflow branch April 27, 2026 08:51
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.

1 participant