-
Notifications
You must be signed in to change notification settings - Fork 0
ci: add release workflow for aarch64 and others #14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughThe release workflow configuration was updated to support both x86_64 and aarch64 architectures for Linux and macOS. Artifact naming now reflects architecture and version, and the publish step is limited to Linux x86_64. Steps were added to package artifacts by platform and architecture before release. Changes
Sequence Diagram(s)sequenceDiagram
participant Developer
participant GitHub Actions
participant Build Matrix (x86_64/aarch64)
participant Artifact Store
participant Release Job
Developer->>GitHub Actions: Push tag / trigger release
GitHub Actions->>Build Matrix: Build for linux-x86_64, linux-aarch64, macos-x86_64, macos-aarch64
Build Matrix->>Artifact Store: Upload architecture-specific artifacts
GitHub Actions->>Release Job: Start create-release
Release Job->>Artifact Store: Download artifacts
Release Job->>Release Job: Package and rename artifacts with platform, architecture, and version
Release Job->>GitHub Actions: Create release with all renamed artifacts
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🧹 Nitpick comments (1)
.github/workflows/release.yaml (1)
95-99: Windows artifacts not versioned or packaged
Unlike Linux/macOS, the Windows runner uploads raw binaries without versioned filenames or a zip archive. Consider packaging the.exeinto a zip and renaming it with the tag and target triple for consistency:- name: Package Windows artifacts run: | cd artifacts/junkanoo-windows zip junkanoo-${{ github.ref_name }}-x86_64-pc-windows-msvc.zip junkanoo.exe rm junkanoo.exe
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
.github/workflows/release.yaml(3 hunks)
🔇 Additional comments (3)
.github/workflows/release.yaml (3)
24-28: Build matrix now includes Linux aarch64
The combinationubuntu-latest+aarch64-unknown-linux-gnuhas been added with its ownartifact_name. This aligns with the PR objective to support aarch64 on Linux.
33-37: Build matrix now includes macOS aarch64
Addingmacos-latest+aarch64-apple-darwinmirrors the Linux change and completes CI coverage for Apple Silicon. Looks good.
54-54: Restrict crates.io publish to Linux x86_64
Theifguard ensures only the Linux x86_64 runner publishes to crates.io, preventing duplicate publishes from other matrix entries.
Summary by CodeRabbit