-
-
Notifications
You must be signed in to change notification settings - Fork 10.1k
Cross Version Testing Locally and Faster CI #8610
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
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.
This looks fantastic. I left a whitespace nit that I would appreciate a fix for but won't let that block the PR
You are too kind. Thanks for the review! I adjusted the whitespace. |
I believe this is ready to merge by someone with permission to do so. |
@jekyllbot: merge +dev |
Adam Bell: Cross Version Testing Locally and Faster CI (#8610) Merge pull request 8610
This is a 🙋 feature or enhancement to the build process. Jekyll itself is unchanged.
Summary
Introduce earthly to speed up JRuby tests and allow for running the CI locally across various ruby versions. This build should be about 10 minutes faster than the previous build (40+ minutes -> 27ish minutes).
I discussed this change with @DirtyF via email.
The JRuby build in GitHub Actions is the bottleneck for the CI process. By introducing an earthfile, the step can be optimized a bit, and also it allows for running the CI locally, across various ruby versions, by using containers.
Details
You can now run the full CI locally by running:
GitHub Actions also does a similar process, although it calls individual steps, which can also be run locally like follows:
I believe the build can be made a bit faster than this, by running the jruby cucumber tests in parallel. This will add a little complexity to the build script and probably take another 10 minutes off. Let me know if interested and I can try it out and create a follow on PR.
Additionally, one cucumber test was failing in master, I believe I have fixed it.