-
Notifications
You must be signed in to change notification settings - Fork 697
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
keep running tests even if earlier ones failed #10361
Conversation
e292f97
to
5779675
Compare
Aren't we going to saturate CI resources pretty fast this way? |
Yes, as I observed with #10291. But see #10263; @mpickering is insisting it's necessary. |
5779675
to
8617a7e
Compare
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.
Let's go then.
Won't all jobs always pass then? |
I need to verify, but I believe they still get logged as "failure" and the post job catches them. |
I was suggesting that it would be a improvement to developer experience -- assuming there are a large amount of resources available. If there are resource bottle-necks I would prefer to run a slimmed down pipeline at first (one ghc version on windows, linux, darwin) before engaging with the full pipeline. |
We do have larger resources than most free users get. I don't think there's actually a problem here because it's not like it will take more resources than a successful run, unlike changes that require additional rebuilds solely because they can no longer use cached builds. |
Okay, it looks like jobs succeed when they're not supposed to indeed. This will be a problem. |
54adc8a
to
4467b2a
Compare
Will changing the workflow to loop within a single step (not job) rather than using separate steps for each test cause problems for anyone? If so, please speak up now. |
4467b2a
to
7740aa5
Compare
It's not a hard preference but I like the UI of separate steps more, that's why I suggest to use the other solution in that SO thread, based on the |
Also, I'm not sure this is accomplishing what it's supposed to, because of the way |
I (still) don't see a link to said SO, and I'm not sure an |
7740aa5
to
83ad4dc
Compare
The SO thread I linked in Matrix a couple weeks ago: https://stackoverflow.com/a/58859404/465100 I think it shouldn't suffer from the same false negatives issue (succeeding workflow having some steps failed) but I wouldn't bet on it: this needs experimenting. For looping over steps of validate: I don't see a problem if that's a bash-loop and every call to validate.sh with a specific step is independent that way. |
That does the wrong thing: it would, for example, merge with failed tests. The SO question was to have a step run even if the job was failing. This is incorrect here, because we shouldn't run the tests if the build failed. Moreover, we don't want the job to be counted as a success if a test with that condition failed. There are some very complicated conditionals that could accomplish that in an |
Matt Pickering says we should always run all tests. This requires a loop to ensure we still fail if any test does.
@mergify backport 3.12 |
✅ Backports have been created
|
@mergify backport 3.14 |
✅ Backports have been created
|
Matt Pickering says we should always run all tests. This uses
continue-on-error: true
to run them as long as the build succeeded.Template B: This PR does not modify behaviour or interface
E.g. the PR only touches documentation or tests, does refactorings, etc.
Include the following checklist in your PR: