feat: add multi-architecture release artifacts#127
Conversation
|
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). View this failed invocation of the CLA check for more information. For the most up to date status, view the checks section at the bottom of the pull request. |
Add explicit GOOS/GOARCH cross-compilation to the release workflow, producing binaries for linux/amd64, linux/arm64, darwin/amd64, darwin/arm64, and windows/amd64.
c00a145 to
dab2540
Compare
If this is critical I can try to keep the backward compatibility. |
|
@JeffFaer Does this make sense? Thanks. |
No, that breaking change seems fine to me. I think this makes sense. Thank you for taking this on! Are you planning on running through those testing steps yourself? |
I think most of them could only be exercised via actions. I can probably test in my fork. |
https://github.com/honnix/keep-sorted/releases/tag/test all look correct. I verified the binaries. |
|
|
da04d14 to
641964e
Compare
|
Thank you for merging this. Would you mind cutting a new release? |
|
@JeffFaer A gentle ping. Thanks. |
Summary
GOOS/GOARCHcross-compilation to the release workflowlinux/amd64,linux/arm64,darwin/amd64,darwin/arm64, andwindows/amd64CGO_ENABLED=0and use explicit-oflag for consistent output namingkeep-sorted_linux_amd64instead ofkeep-sorted_linux)Motivation
The current workflow builds one binary per OS using the runner's native architecture. With GitHub Actions runners moving to arm64 for macOS, there's no
darwin/amd64binary for Intel Macs, and there has never been alinux/arm64binary.Breaking change
Artifact names change from
keep-sorted_<os>tokeep-sorted_<os>_<arch>. Users scripting downloads against the old names will need to update.Test plan
filecommand (ELF ARM aarch64, Mach-O x86_64, etc.)