Repository navigation
Limit concurrent CI matrix jobs - #1371
Closed
Bret Comnes (bcomnes) wants to merge 2 commits into
Closed
Bret Comnes (bcomnes) wants to merge 2 commits into
Bret Comnes (bcomnes) wants to merge 2 commits into
Conversation
Reduce runner contention by limiting the largest test matrices. Keep all test cases while allowing fewer jobs to run at once. Assisted-by: Codex:GPT-6
Bret Comnes (bcomnes)
marked this pull request as ready for review
October 9, 2026 20:23
Allow eight Linux E2E jobs and four coverage or full E2E jobs. Keep Windows and macOS E2E concurrency at two jobs. Assisted-by: Codex:GPT-6
Collaborator
|
Already fixed. |
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.
Large CI matrices across simultaneous PR, merge-group, and main-push runs consume shared GitHub-hosted runner capacity, delaying required checks in other repositories. The October 9 snapshot included 1,072 running or queued jobs in the e2e matrix alone.
Add
strategy.max-parallelto the five largest targeted matrices:e2ee2e-windowse2e-macoscoverage-dockere2e-fullAll matrix cases remain enabled. These limits reduce simultaneous runner demand at the cost of longer individual workflow runs. They apply per matrix per run, not across the repository, and do not change already queued runs. Additional controls on simultaneous runs may still be needed to prevent organization-wide saturation.
Validation:
git diff --checkpassed. Actionlint v1.7.12, with shellcheck and pyflakes disabled, reports the same 152 existing matrix-expression diagnostics on the base and this branch, with no new diagnostics. Runtime CI has not completed.Note
Low Risk
Workflow-only change with no product code or test selection changes; main effect is slower wall-clock for affected matrices when many legs are queued.
Overview
Caps how many matrix legs run at once in the CI workflow so large e2e and docker coverage fan-outs stop monopolizing shared GitHub-hosted runners.
strategy.max-parallelis added under five jobs in.github/workflows/ci.yml:e2e(8),e2e-windowsande2e-macos(2 each),coverage-dockerande2e-full(4 each). Matrix rows and test coverage are unchanged; only per-workflow-run concurrency is throttled, which should lengthen those jobs slightly while reducing org-wide queue pressure.Reviewed by Cursor Bugbot for commit 7d6ed07. Configure here.