[skip changelog] Use compatible runner for macOS Apple Silicon nightly builds #3007
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What kind of change does this PR introduce?
Bug fix
What is the current behavior?
The
docker.elastic.co/beats-dev/golang-crossbuild:1.24.4-darwin-arm64-debian10
container is used for the release builds for the macOS Apple Silicon host. This container will only run on hosts of the linux/arm64 architecture.The GitHub Actions runner machine previously used to perform the release builds is of the linux/amd64 architecture and so is not compatible with the container. This caused the release builds to fail:
The bug was already fixed in the release and tester build workflows (#2850, #2896), but the same was never done for the nightly build workflow.
What is the new behavior?
The failure is resolved by configuring the workflow to use the
ubuntu-24.04-arm
runner machine that is compatible with the container.Does this PR introduce a breaking change, and is titled accordingly?
No breaking change
Other information
In order to facilitate the review of this PR, I performed a run of the workflow in my fork, notarized using a certificate from my personal Apple Developer Program account:
https://github.com/per1234/arduino-cli/actions/runs/17781046849
It is standard practice to use the "latest" GitHub Actions runner identifiers in the project's workflows, which causes the workflow runs to always use the newest stable runner version. However, GitHub has broken from this established convention by choosing to not provide "latest" identifiers for the Linux ARM runners (actions/partner-runner-images#118 (comment)). For this reason, there was not alternative but to use the version-specific
ubuntu-24.04-arm
runner name in the workflow. It will be necessary to manually update the runner name as new stable versions are made available (or more likely after GitHub's removal of the runner in use breaks the workflows).