Skip macOS quarantined-test job on PRs - #67767
Merged
Merged
Conversation
The macOS job in the quarantine pipeline hangs and hits its 150-minute timeout on roughly half of all runs -- a fork/exec deadlock in the ServerComparison functional-test deploy path (not a test failure). When it does complete, the macOS agent job only runs ~6-7 quarantined tests. This made the "Tests: macOS" leg the dominant failure in the pipeline and a frequent 150-min drag on PR validation. Skip the job on PR builds while keeping it on main via the scheduled and batched CI triggers, so we retain macOS quarantine coverage on the branch without blocking/slowing PRs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: c6695e66-ef29-4591-8ca6-fc494164b1ca
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the quarantine Azure Pipelines definition to avoid running the macOS quarantined-test job on Pull Request builds, reducing frequent 150-minute timeouts while retaining macOS quarantine coverage on main via scheduled and CI triggers.
Changes:
- Wraps the
Tests: macOSquarantined-test job in a template-time condition that excludesBuild.Reason == PullRequest. - Adds in-file rationale documenting why macOS is skipped on PRs.
Member
Author
|
Related: dotnet/runtime#89272 |
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.
Summary
Skips the
Tests: macOSquarantined-test job on PR builds of the quarantine pipeline (.azure/pipelines/quarantined-pr.yml). It still runs onmainvia the scheduled (every-4-hours) and batched CI triggers, so we keep macOS quarantine coverage on the branch.Why
Over the last 7 days of def 86, the macOS job was by far the dominant failure:
Tests: macOSfail; 59 of those were the "ran longer than the maximum time of 150 minutes" timeout.MSBuild → Process.Start → Interop.Sys.ForkAndExecProcess), not a test failure. It reproduces on native Intel hostedmacos-15agents.Given the low test yield and the high failure/timeout rate, skipping it on PRs removes a frequent 150-minute drag on PR validation while preserving macOS coverage on
main.Change
Wraps the macOS job in
- ${{ if notin(variables['Build.Reason'], 'PullRequest') }}:(an established pattern in this repo, e.g.ci-public.yml,ci-unofficial.yml).Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com
Related: dotnet/runtime#89272