-
-
Notifications
You must be signed in to change notification settings - Fork 237
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
Add new hosted MacOS runners to supported platforms #494
Conversation
When are the new platforms expected? |
Are those runner images already available? We need them to run https://github.com/ruby/ruby-builder and build the binaries for all versions on it, before adding support here. FWIW, I found actions/runner-images#7396 |
I don't have an official date to give, however we will release the new images once there is enough capacity available and the images have been fully tested. This action is one of the issues we discovered during internal testing. |
That's good news, I've heard lots of people are interested to have darwin-aarch64 as a GH-hosted runners.
I think you will need to skip it during internal testing then because we can only add support in this action once the Rubies are built on these images and it's tested in CI, and that needs the image to be public somehow (but it can be |
We merged macOS 13 amd64 support (that was trivial). |
They are here now: https://github.blog/2023-10-02-introducing-the-new-apple-silicon-powered-m1-macos-larger-runner-for-github-actions/ (actions/runner-images#8439) but they aren't free so not sure (how) this action can support them? |
Great news! 🎉 Ended up here after receiving following error message when trying the new runner. @eregon let us know if we can help out in any way to get this merged 🚀
|
@henninghall You are not using the correct runner key: https://github.blog/2023-10-02-introducing-the-new-apple-silicon-powered-m1-macos-larger-runner-for-github-actions/#how-to-use-the-runner Also, merging this will not solve the issue fully, this action needs builds of Ruby built by ruby-builder repo (see above), but as far as I know, these new runners are not available to https://github.com/ruby ("Larger runners are only available for organizations and enterprises using the GitHub Team or GitHub Enterprise Cloud plans.") so no builds for arm64 can be produced. |
Yes, we need free macos arm64 runners for these 5 repos, otherwise it's not possible to support macos arm64 in this action. @chkimes @Steve-Glass Any chance GitHub could make some of these macos arm64 runners available to the ruby organization for that purpose? Or maybe there is a plan to make non-large macos arm64 runners freely available at some point? |
Alright I see, thanks for the clarification!
Actually using |
👋 @eregon Thank you for reaching out to us! We've already escalated your request and will collaborate with you the path moving forward. I expect being able to provide an update on next steps by tomorrow afternoon (EST). Please let us know if you have any questions in the interim! |
👋 @eregon We have approval to provide |
@Steve-Glass any update for the community on this? We would love this solved since this would mean that our org could use the new arm64 large runners with fastlane. Thx for supporting the community! |
Are you referring to when M1s will be available for free to all public repositories? Or when access will be provided to |
As mentioned above, the main issue with setup-ruby is having pre-built Ruby M1 builds available. You should be able to run setup-ruby if you use one of the pre-installed Rubies. I believe macos-13 currently has 3.0.6 and 3.1.4 available. |
@MSP-Greg Is there a list of compiled m1 compatible builds anywhere? |
@duncaninsiris Could you run
@Steve-Glass Do you have any ETA for that? (thanks for the email last week) |
That's part of what's discussed here. The GitHub ruby organization does not have access to M1 runners. The Ruby builds that are pre-installed on the Ubuntu and Windows runner images are the same versions used by setup-ruby. I believe the code to install macOS builds is at https://github.com/actions/runner-images/blob/main/images/macos/provision/core/ruby.sh. Like the Ubuntu images, it also downloads builds from ruby/ruby-builder. Since there are none... |
When access will be provided to |
No problem! Our team has started working on the solution we discussed via email. I don't expected it to take long and access should be provided by EoW. If we discover an issue during testing, then we'll circle back via email and discuss next steps. |
Thanks for the information @MSP-Greg and @eregon I did confirm that nothing is available. It helps me to understand a little more so thank you. |
I just want to clarify to everyone that the main issue is not setup-ruby. setup-ruby downloads/installs/configures Ruby builds if they are not present on the runner (the pre-installed Ruby builds). Importantly, setup-ruby does not create ruby build packages. So, there are several repos that actually create the builds, as @eregon listed in the above message. All of these repos need access so that they can create the build packages that setup-ruby installs. This also creates a cascade issue, in that all the code repos (like ruby/ruby) would certainly benefit from access, as they contain the code base that is used for the daily head/master/main builds... |
@MSP-Greg access was granted to the entire |
I'm working on this.
|
This is released now as https://github.com/ruby/setup-ruby/releases/tag/v1.156.0 (and v1 is bumped).
|
Re the 3.1.4 failure I found ruby/rbs#877 and rbenv/ruby-build#1961 (comment)
|
I managed to build Ruby 3.1.x on macos-arm64 by using --disable-shared as mentioned in rbenv/ruby-build#1961 (comment): https://github.com/ruby/ruby-builder/actions/runs/6494667764/job/17638054965 |
@eregon You can try FlyCI's M1 and M2 runners. They are on average 2x faster and 2x cheaper than GitHub's AND we have a free tier for OSS projects (see below). Install Instructions
jobs:
ci:
- runs-on: macos-latest
+ runs-on: flyci-macos-large-latest-m1
steps:
- name: 👀 Checkout repo
uses: actions/checkout@v4 500 mins/month Free for Public ReposSince your repo is public, FlyCI offers 500 mins/month of free M1 runner usage with the Don't hesitate to contact us in case the free tier doesn't suit your needs or you experience any issues with the runners. Our team is here to support you! Best Regards, |
keyword: darwin-aarch64