Skip to content
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

poc: Run all GitHub Actions on M1 macOS runners #10155

Closed

Conversation

bnussman-akamai
Copy link
Member

@bnussman-akamai bnussman-akamai commented Feb 6, 2024

Description 📝

Just a simple POC to run all of our GitHub Actions on M1 macOS runners. Curious to see if we get any significant performance improvements 🤔🚀

See https://github.blog/changelog/2024-01-30-github-actions-introducing-the-new-m1-macos-runner-available-to-open-source/

@jdamore-linode
Copy link
Contributor

👀 very interested to see how this pans out, I wasn't aware you could even get Apple Silicon runners. I'm curious how any non-x86_64 containers perform compared to our current setup

@bnussman-akamai
Copy link
Member Author

bnussman-akamai commented Feb 6, 2024

Looks like some steps like lint were slower than normal, but I think that's just because dependencies are not cached yet.

test-manager was about 4 minutes faster than normal though 😲

@abailly-akamai
Copy link
Contributor

This is great - will speed up test and coverage jobs lots

@bnussman-akamai bnussman-akamai marked this pull request as ready for review February 8, 2024 20:53
@bnussman-akamai bnussman-akamai requested a review from a team as a code owner February 8, 2024 20:53
@bnussman-akamai bnussman-akamai requested review from jdamore-linode and dwiley-akamai and removed request for a team February 8, 2024 20:53
Copy link

github-actions bot commented Feb 8, 2024

Coverage Report:
Base Coverage: 81.24%
Current Coverage: 81.24%

Copy link
Contributor

@abailly-akamai abailly-akamai left a comment

Choose a reason for hiding this comment

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

Am happy to give this a try! Only concern is something not going well during a release.

I think I remember @jdamore-linode mention we could have duplicate workflows (one runs on unbuntu the other on macos). Since we can enable them or disable them through the UI seems like a good compromise, however instead of managing two identical actions we could store the runs-on in an env variable?

@bnussman-akamai
Copy link
Member Author

I think we decided that it would be easiest to just switch over and not maintain a matrix of operating systems.

What do you think @jdamore-linode?

Copy link
Contributor

@dwiley-akamai dwiley-akamai left a comment

Choose a reason for hiding this comment

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

I think it would be fine to make the switch and keep an eye on things

@jdamore-linode
Copy link
Contributor

@bnussman-akamai I agree! I think as long as we merge this with a day or two to spare til the next release, we'll have plenty of time to identify/address any issues

@bnussman-akamai bnussman-akamai added Approved Multiple approvals and ready to merge! Wait to Merge and removed Ready for Review Wait to Merge labels Feb 14, 2024
@bnussman-akamai
Copy link
Member Author

After running the tests a few times, I don't think the performance wins are really significant. I think we'll benefit the most with staying on ubuntu-latest for compatibility with various GitHub Actions and stability

We'll start seeing significantly better performance when when drop yarn and node for bun where possible

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Approved Multiple approvals and ready to merge! Proof of Concept
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants