Skip to content

ci: make manual release workflow runs always as dry-run#600

Merged
burmecia merged 9 commits intomainfrom
bo/ci/arm_release_lld
May 8, 2026
Merged

ci: make manual release workflow runs always as dry-run#600
burmecia merged 9 commits intomainfrom
bo/ci/arm_release_lld

Conversation

@burmecia
Copy link
Copy Markdown
Member

@burmecia burmecia commented May 8, 2026

What kind of change does this PR introduce?

This PR makes the release workflow testable on non-tag branches by adding a manual trigger with a version input, that builds artifacts without publishing to crates.io or GitHub Releases.

What is the current behavior?

The current release workflow is trigged by tagging which makes testing this workflow itself hard.

What is the new behavior?

  • Added one input version for manual triggering for this workflow
  • Update the release workflow so workflow_dispatch runs are always treated as dry-runs without publishing to crates.io or GitHub Releases.

Additional context

This PR also made a minor fix for the linking issue on arm64 platform in release workflow, this fix replaced ld with lld as the default linker to avoid linking issue like below:

error: linking with `cc` failed
relocation truncated to fit: R_AARCH64_CALL26 against symbol `__aarch64_ldadd8_relax`
collect2: error: ld returned 1 exit status
error: could not compile `wrappers` (lib)

Copilot AI review requested due to automatic review settings May 8, 2026 03:23
@burmecia burmecia added the ci label May 8, 2026
@burmecia burmecia requested a review from imor May 8, 2026 03:26
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the GitHub Actions release workflow to be testable without creating tags by adding a manual dry-run trigger that builds/packaging artifacts without publishing, and adds an arm64 linker workaround to reduce release build failures.

Changes:

  • Add workflow_dispatch inputs (dry_run, version) to support manual dry-run builds with a configurable fake tag.
  • Gate crates.io publishing and GitHub Release creation/asset uploads to only run on push tag events.
  • Add arm64-specific linker/toolchain configuration (lld) and use an “effective version” for package naming/versioning.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/release.yml Outdated
Comment thread .github/workflows/release.yml
Comment thread .github/workflows/release.yml Outdated
Comment thread .github/workflows/release.yml Outdated
Comment thread .github/workflows/release.yml Outdated
burmecia and others added 3 commits May 8, 2026 16:26
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@burmecia burmecia changed the title ci: add manual dry-run mode to release workflow ci: make manual release workflow runs always as dry-run May 8, 2026
@burmecia burmecia merged commit adfb7a3 into main May 8, 2026
16 checks passed
@burmecia burmecia deleted the bo/ci/arm_release_lld branch May 8, 2026 13:11
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.

3 participants