Question: since I have repo superpowers, I could m...
# team-maintainers
j
Question: since I have repo superpowers, I could merge rnaseq PRs where the CI has previously passed and I'm just doing things like updating changelogs, thereby saving polar bears? I have refrained from doing so because folks might not take kindly.... but.. polar bears. Will folks yell at me if I do that sort of thing? I promise not to do it with code changes, and hope that my good behaviour even while in receipt of those powers proves my good faith 😄
m
sure sounds good. but let at least pre-commit pass, to not introduce any errors in the changelog 😉
🫡 1
r
is there a way on a single PR to only trigger new tests if the relevant files are touched? I know we can do it for a PR in general.
m
you mean only run some parts of a CI workflow based on the file path?
could you give an example?
r
For general PRs we are triggering only a subset of tests in sarek if relevant files are touched @Maxime Garcia Help! where did you define this? What I mean, for a specific PR would this work on commit level. Let's say you changed the main.nf -> all tests are triggered all come back green. Then the changelog is updated -> only trigger linting because only an md file was touched that doesn't touch the main and it previously had green ticks
m
nf-test does that natively
I don't think we have extra setup in sarek
m
CI tests always run on a PR level, not commit level
party this 1
r
sadpanda that be nice by Github to implement 🌳
j
I guess it would get complicated if you're trying to keep track of what passed and didn't on the branch, you could cancel a test on a big changeset, push a commit to a .md and call it a pass? You'd have to somehow record that all the changes were tested and passed somewhere in the history. It wouldn't be trivial
m
(compared to all the LLM interferences in each PR, the CI has a rather low impact, i would say)
j
rnaseq's test suite has become quite substantial. I've tried to cut it back at times, but still
💯 1
I might try another optimisation run soon as well, to strip our redundancy if any has crept back
p
GitHub already has it - it runs CI either on commit or on PR. Running on commit is dangerous as it can pass there but then fail on merge, as it's effectively not the same code.
And @Jonathan Manning yes I frequently do what you're suggesting, I think some common sense applies. Though the CI jobs will probably still run anyway, so whilst it saves time I'm not sure that it actually saves any polar bears.
j
I'll make sure to cancel them as well then 🙂
👍🏻 1
a
You can also use [skip ci] when commiting only changelog changes to avoid triggering the CI again: https://docs.github.com/en/actions/how-tos/manage-workflow-runs/skip-workflow-runs
👍🏻 1
p
True, I always forget this!
Though then you risk that you mess up some markdown formatting and break the CI on
dev