-
-
Notifications
You must be signed in to change notification settings - Fork 233
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
Replace Travis CI with GitHub Actions #266
Conversation
# Conflicts: # Appraisals
After many fail and error I finally was able to implement caching (it's quite compliacted due using Before:
After:
I am not sure why after restoring the cache it does not pick up all installed gems, but only some and still needs to install some others. It does not happen on my local machine... You can observe thus behavior here: https://github.com/railsconfig/config/runs/379685645 |
@pkuczynski I would guess the reason is the Bundler vendor path is not picked for |
Shouldn't I also added JRuby to the test matrix #228 (much easier doable than in Travis). It took only 6m to run the pipeline (2x slower than mri ruby). Check it out in https://github.com/rubyconfig/config/runs/379884681. In this light |
You're right, that should be fine since that's global and saved in The issue is then the path is relative to where |
I am now setting BUNDLE_PATH and that helps a lot with reusing dependencies: https://github.com/rubyconfig/config/pull/228/files#diff-353995fb5bebaef307ec25fa5be39042R17 Now truffleruby is 10m instead of 45m :) Still way slower then mri (45-70s) |
Btw. You can see all results here https://github.com/rubyconfig/config/pull/228/checks?check_run_id=384222383 |
For comparison on travis testing only For comparison: https://travis-ci.org/railsconfig/config/builds/634314479 |
@pkuczynski Very happy to hear you found a way to cache Bundler properly :) It's expected more optimizing implementations are slower to run tests/specs, because tests/specs typically do everything but only a few times, nothing in a loop and nothing to really optimize. More optimizing implementations profile the execution, which has some cost in interpreter. I'm sure we can always improve, but those times don't seem unreasonable to me. |
Sure thing! Thanks for the explanation. I just wanted to follow up with feedback and observations :) Now when the cashing works, build seems more reasonable :) |
GitHub Actions is much faster and responsive than Travis