Considerations for the responsible use of GitHub Actions #737
Replies: 10 comments
-
I think this is a good idea - i.e., trigger checks only when a PR is either marked ready for review or already ready for review. Draft PRs don't trigger any checks. This can be done using the
This seems generally a good idea especially for the faster actions, e.g. linting (see also (4)).
I think looking at changes to which files should trigger an R CMD check and codecov makes a lot of sense.
I don't really see the issue here as I can't imagine delaying a push/PR by half an hour is often an issue (except e.g. if running out of battery). |
Beta Was this translation helpful? Give feedback.
-
Another option here would be e.g. to run the R CMD check workflows only on one platform (e.g. macos) and then on all platforms upon entering the merge queue (also would require setting up a merge queue) |
Beta Was this translation helpful? Give feedback.
-
Draft PRs currently trigger checks. See #695 for example.
Then we need to fix all the liting issues in
I'm a little wary of this approach as it could cause loop holes in the checks.
|
Beta Was this translation helpful? Give feedback.
-
Yes, sorry I wasn't clear - that was meant as part of the desired future state. |
Beta Was this translation helpful? Give feedback.
-
I'm updating the description with things we are agreeing on. These can be logged as issues later when we have a final list. |
Beta Was this translation helpful? Give feedback.
-
Another thing that is noted in the linked article is that some Runners are faster than others. So we should benchmark all the workflows between Ubuntu-latest vs macoS latest. The key ones are:
|
Beta Was this translation helpful? Give feedback.
-
I think for this point and all other need to stop and think about the burden placed on new contributors (if you want any). |
Beta Was this translation helpful? Give feedback.
-
We are all using precommit here: https://github.com/cdcgov/Rt-without-renewal and its working really well but I don't think when we spin it out we will require all contributors do so (we will just keep it running in the CI as we do now) |
Beta Was this translation helpful? Give feedback.
-
Is another option to use the CI tag's ( |
Beta Was this translation helpful? Give feedback.
-
Yes, and we do use these at times. However, it is again that is probably only available to those who are already package developers. |
Beta Was this translation helpful? Give feedback.
-
We've had a lot of internal discussions on the responsible use of GitHub Actions. Some points have been laid out in this article by an RSE team at Imperial. A lot of these are already implemented here. However, more can be done.
EpiNow2 still has some really long CI runtimes and this is continually being addressed. See the most recent change in #722, for example.
This issue is to gather ideas on what more can be done to improve our CI usage. Here are a few ideas that have come up:
Thoughts? @sbfnk @seabbs @Bisaloo
Current agreements
- [ ] Requires changing trigger to "pull_request".
R CMD Check
locally before pushing changes.Beta Was this translation helpful? Give feedback.
All reactions