-
Notifications
You must be signed in to change notification settings - Fork 23
CI: split PR workflows, add paths #708
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
Conversation
Cancelled CI jobs because we can see they were triggered correctly. |
I suppose the difficulty is that we wouldn't be able to make the aio jobs required any more :( Oh GH actions, you are no zuul. |
Can we fake running it and immediately return a success? |
Possibly, but it would be a bit misleading and would need something other than the |
We don't always want to run all aio jobs - it can be wasteful of CI resources and slows down merging changes. This change uses the dorny/paths-filter action to detect changed files and skip jobs as appropriate. Note that we can't use the workflow-level paths attribute since this would skip the workflow entirely, and would prevent us from making the aio jobs required to pass (a skip counts as a pass).
797095b
to
cb63995
Compare
The job dependency should handle this, with the condition applied to the first job.
3f1545b
to
2b4e221
Compare
How did the testing for this go? does it need more work? |
Looks like it doesn't accept the skipped jobs :( |
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/troubleshooting-required-status-checks#handling-skipped-but-required-checks. Seems like the only option is skip all jobs within a workflow rather than the workflow itself :( |
That's what it's doing already. I was relying on job dependencies though and have just tried adding the condition to every job. Could you approve again? It does look like it's just not recognising the jobs though as it lists them as skipped and expected. |
I managed to tweak the branch protection rules to require the calling workflow's job rather than the called workflow, and this seems to now recognise the skipped results as success. I guess it never gets to the called workflow if the calling job is skipped. Just need to confirm that this still requires the jobs to pass when they run 🤞 |
Lame, it doesn't work: I'll revert the required status checks change. |
83439bb
to
a83be10
Compare
No changed files so jobs not triggered |
This reverts commit 088677a.
No changed files so jobs not triggered |
Changed file triggers jobs |
Changed file triggers jobs |
e0b0634
to
065fd29
Compare
065fd29
to
cd92fb2
Compare
No changed files so jobs not triggered Using always() && needs.build-kayobe-image.result == 'success' |
No changed files so jobs not triggered |
Changed file triggers jobs |
Changed file triggers jobs |
Looks like either of these should do the trick |
This PR is a bit of a mess. Closing in favour of #726 |
This should reduce our CI overheads by only running aios when necessary. It will also make it easier to merge some changes.