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
WIP: migrate to GitHub actions #288
Conversation
05152e7
to
2bb8e9b
Compare
Codecov Report
@@ Coverage Diff @@
## master #288 +/- ##
==========================================
+ Coverage 91.36% 91.49% +0.13%
==========================================
Files 42 42
Lines 8867 8867
==========================================
+ Hits 8101 8113 +12
+ Misses 766 754 -12
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
b8b4839
to
7dd80fa
Compare
I've migrated our CI infrastructure completely to GitHub actions to replace Travis CI. Using the current setup, we run all tests automatically on Linux, Mac OS, and Windows. Since we're allowed to run more jobs in parallel than on Travis, this doesn't really increase the CI time. The only downside is that To sum up, I'm quite satisfied with this setup. If you all agree (especially @sloede), I would like to merge this, get rid of the remaining Travis CI setup in our repo settings, and propagate this change to all open PRs. |
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 is great work - thanks for taking care of this for so quickly, @ranocha!
I've left a few comments/questions. Also, I'd like to propose to revisit the decision to immediately retire Travis. Would it be possible to just have both enabled, at least while working on Taal? That we we can be confident that there are no changes in the test results due to the new CI setup, and if there are, we have a better chance of detecting/fixing them. What do you think?
I've re-added Travis. I've opened #289 to remember removing Appveyor and Travis when Taal is alive. |
Can we merge this, @sloede? |
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.
If the final comment is resolved, I think this is good to merge.
I didn't test it, but something like this should work: if: !(github.event_name == 'pull_request' && contains(github.event.pull_request.title, '[skip ci]')) |
Looking at https://docs.github.com/en/free-pro-team@latest/rest/reference/pulls#create-a-pull-request--parameters, I get the impression that this checks only the title of the PR, i.e.
in our ci.yml. However, the |
I don't understand exactly what you mean. Your code snipped should check the commit that triggered the action. So the last commit in a PR decides if a CI run should be triggered. |
Yeah, but that code works only on |
Ah, I see. We could have a look at this project: https://github.com/marketplace/actions/ci-skip-action |
Looks good at first sight. Do you want to give it a shot and make a PR? |
Yeah, sounds good. |
Okay, it seems like there is no elegant way to do this. One option would be to write |
In that case, I'm okay with keeping the current setup. What do the other think, in particular @sloede? In some sense, we can also argue that it's a feature, not a bug 😉 In a worst case scenario, we can also cancel CI runs manually. Otherwise, it's mostly some discipline regarding commits and pushes to PRs (like "Don't push any tiny commit immediately but wait for some minutes to gather more of them"). Additionally, a lot of possibilities where However, I don't have a strong opinion here. If other feel like we should add the check
to every step, that's okay for me. |
I think the strongest reason for allowing CI skip is to save time when only documentation has changed. Since this should be handled by |
Closes #286
TODO:
.codecov.yml
to account for the increased number of parallel builds[skip ci]
does not work anymore in PRs