Skip to content

cargo publish + binstall#171

Open
samcday wants to merge 6 commits intomainfrom
codex/github-mention-publish-to-crates.io
Open

cargo publish + binstall#171
samcday wants to merge 6 commits intomainfrom
codex/github-mention-publish-to-crates.io

Conversation

@samcday
Copy link
Owner

@samcday samcday commented Feb 12, 2026

@samcday samcday changed the title Codex-generated pull request binstall Feb 20, 2026
@samcday samcday changed the title binstall cargo publish + binstall Feb 20, 2026
Copy link
Owner Author

@samcday samcday left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey I'm feeling like we should extend/bastardize the alpine build here as well to also produce x86 + aarch64 musl binaries for binstall.

Comment on lines 23 to 31
- name: Build release archive
run: |
set -euo pipefail
rustup toolchain install stable --profile minimal
rustup default stable
cargo build --release
mkdir -p dist/
tar -C target/release -czf "dist/phrog-x86_64-unknown-linux-gnu.tar.gz" phrog
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's move this whole step out. We've already got the pattern in place to upload artifacts to the release from the other jobs/pipelines.

So let's add a release-builds.yaml, and make it a matrix build that includes a variant on Github's official arm64 runner, so that way we produce both x86_64-unknown-linux-gnu and aarch64-unknown-linux-gnu builds.

Comment on lines 37 to 38
files: |
dist/phrog-x86_64-unknown-linux-gnu.tar.gz
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should go away when the release-builds.yaml pipeline is introduced.

@samcday
Copy link
Owner Author

samcday commented Feb 20, 2026

@codex address the feedback and update the PR

@chatgpt-codex-connector
Copy link

Summary

  • Fixed the README cargo-binstall snippet by closing the fenced code block so the development section renders correctly again. README.mdL66-L72
  • Updated the tag release workflow to remove in-workflow binary archive building/uploading, leaving release creation + crate publishing responsibilities only. .github/workflows/release.ymlL1-L40
  • Added a new release-builds.yml workflow with a GNU release matrix that builds/uploads x86_64-unknown-linux-gnu and aarch64-unknown-linux-gnu tarballs, including use of GitHub’s arm runner variant. .github/workflows/release-builds.ymlL1-L44
  • Extended alpine.yml to also build and publish musl tarballs for both x86_64-unknown-linux-musl and aarch64-unknown-linux-musl, alongside existing APK outputs. .github/workflows/alpine.ymlL16-L108

Testing

  • for f in .github/workflows/release.yml .github/workflows/release-builds.yml .github/workflows/alpine.yml; do ruby -e 'require "yaml"; YAML.load_file(ARGV[0]); puts "OK #{ARGV[0]}"' "$f" || exit 1; done
  • curl -s https://docs.github.com/en/actions/reference/runners/github-hosted-runners | head -n 40

Also completed follow-up actions requested:

  • ✅ Committed changes on the current branch (ci/release: split gnu and musl build uploads).
  • ✅ Created the PR update message via make_pr with a summary of the feedback-driven changes.

View task →

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments