ci(macos): native build+publish workflow and runner/build docs (VA-89, VA-90) #139
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/VA-89-VA-90-macos-ci"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
Two parts toward closing VA-88:
CI build job (VA-89) -
build-macos.yml, the macOS analog ofbuild-package.yml/build-windows.yml:${{ vars.RUNS_ON_MACOS_LATEST }}); no Docker (macOS cannot be cross-compiled without the Apple SDK).cargo build --release --target x86_64-apple-darwin, do-not-strip (crash-handler line tables).signsubcommand; builds a lossless zstd transport sidecar (decompress + hash-compare gate); writes checksum + version sidecars.vervainagent-16(AgentId::MacOsx64) plus the descriptivevervain-agent-x86_64-apple-darwinset. The immutable-pinned / movingstable+latestchannel logic is copied verbatim from the Linux job; only the build step and the id-16 file set differ. Triggers match (push tomain,v*tags).Runner runbook + build docs (VA-90 / VA-89) -
docs/macos-build.md:rustup target add+ the cargo invocation + output path).forgejo-runner registerwith amacos:hostlabel, defining theRUNS_ON_MACOS_LATESTvariable, a trivial validation job, and persistence/cleanup notes.Scope / status
x86_64-apple-darwin only (id 16); no protocol change. Apple codesign/notarization stays VA-128.
The workflow is inert until the VA-90 runner exists and
RUNS_ON_MACOS_LATESTis defined - it can't run on the current Linux runners. YAML validated (parses, no tabs, mirrors the Linux job structure); the real run is gated on the runner.Depends on the launchd installer (#138) for the install/uninstall docs to be accurate. Part of VA-89 + VA-90.