Replies: 1 comment
|
Hi @igfasouza, This is a great idea and something I've been evaluating for a while. I'll put together a plan and share it here so we can agree on the approach before implementing anything. I've used JReleaser in the past and think it would be a good fit here as well. I'll share the plan as soon as I have it ready. Thanks! |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Today
release.ymlalready builds the native binary forlinux/arm64(runnerubuntu-24.04-arm, Mandrel/GraalVM), but we only consume it to assemble the multi-arch Docker images. The binary itself isn't distributed outside the container.I'd like to propose attaching a
.tar.gzpackage of the ARM64 binary to the GitHub Release created byrelease-cut.yml, so that people running on ARM (Graviton, Ampere, Apple Silicon via Linux, Raspberry Pi 64-bit, etc.) can download and run Floci without going through Docker.What the proposal includes
publish-arm64-packagejob inrelease.yml, triggered by thex.y.ztag push.build-native-arm64(reuses the existing artifact — no extra build).floci-<version>-linux-arm64.tar.gz, together with the Quarkus native side files (.properties,.so).mtimepinned to the tag commit'sSOURCE_DATE_EPOCH,owner/group=0,--sort=name..sha256.gh release upload "$GITHUB_REF_NAME" ... --clobberwith least-privilege scope (permissions: contents: writeonly on this job).Points I'd like to discuss
floci-<version>-linux-arm64.tar.gz. Alternatives:floci_<version>_linux_arm64.tar.gz(GoReleaser-style),floci-<version>-linux-aarch64.tar.gz(canonical arch name). Preferences?sha256. Does it make sense to bring in cosign / minisign already, or leave that for a follow-up?flociplus the native files that show up intarget/. Anyone sees a case where the Quarkus.so/.propertiesdon't need to ship alongside?release.ymlruns (the tag is pushed only after@semantic-release/github), sogh release uploadfinds the target. If we ever flip that order, this needs revisiting.Feedback welcome.
https://github.com/igfasouza/floci/blob/feat/publish-arm64-release-asset/.github/workflows/release.yml
All reactions