ci: Prevent matrix jobs relying on QEMU from cancelling other jobs#171
Open
polarathene wants to merge 2 commits intosunfishcode:mainfrom
Open
ci: Prevent matrix jobs relying on QEMU from cancelling other jobs#171polarathene wants to merge 2 commits intosunfishcode:mainfrom
polarathene wants to merge 2 commits intosunfishcode:mainfrom
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Related: #170
This change should safeguard against the
aarch64/riscv64QEMU targets triggering a failure on thex86_64/i686non-QEMU targets.i686target, I'm not sure how likely it would be for thex86_64target job to be cancelled.EDIT: Switched to
fail-fast: falseinstead ofcontinue-on-error: <condition>(which may not propagate the failure of a test job).A better use of resources would be to run the native target on the runner first, then have the matrix for other targets that rely upon QEMU to depend on the first target passing. However you'd still get a similar issue of one QEMU reliant job failure canceling the others without a change like this.
fail-fast: falseshould ensure that all matrix jobs run to completion without triggering a cancel to all other matrix jobs when encountering a failure. That should then still communicate a failure of the workflow, but without the canceled jobs.If the failure is related to QEMU, there isn't much we can easily do to differentiate that from the project's own tests failing which I assume still have some relevance 😅