Eliminate PR build bottleneck from standalone documentation check job#13084
Merged
rainersigwald merged 3 commits intomainfrom Jan 23, 2026
Merged
Eliminate PR build bottleneck from standalone documentation check job#13084rainersigwald merged 3 commits intomainfrom
rainersigwald merged 3 commits intomainfrom
Conversation
Contributor
|
Hello @@copilot, I noticed that you’re changing an .swr file or any file under src/Package/MSBuild.VSSetup.. Please make sure to validate this change by an experimental VS insertion. This is accomplished by pushing to an exp/* branch, which requires write permissions to this repo. |
- Create reusable template for documentation check (check-documentation-only-change.yml) - Remove standalone IfOnlyDocumentionChanged job that was causing PR build delays - Integrate documentation check inline at start of each test job - Remove blocking dependencies on IfOnlyDocumentionChanged job from all test jobs - CodeCoverage job now gets onlyDocChanged variable from one of the test jobs Co-authored-by: rainersigwald <3347530+rainersigwald@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Optimize execution of test results check in PR builds
Eliminate PR build bottleneck from standalone documentation check job
Jan 21, 2026
Member
|
Removed empty 'variables:' lines from CoreBootstrappedOnLinux and CoreOnMac jobs that were causing YAML parsing errors. Co-authored-by: rainersigwald <3347530+rainersigwald@users.noreply.github.com>
Contributor
Author
rainersigwald
approved these changes
Jan 22, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
This PR eliminates a critical bottleneck in the CI pipeline by removing a standalone documentation check job that was blocking test execution while waiting for agent availability.
Changes:
- Removed standalone
IfOnlyDocumentionChangedjob that could delay PR builds by 10+ minutes - Created reusable template
azure-pipelines/check-documentation-only-change.ymlthat encapsulates the git diff logic - Inlined the documentation check as the first step in all 5 test jobs (Windows Full/Core/Release, Linux, macOS) with ~1-2 second overhead each
- Updated CodeCoverage job to reference the output variable from BootstrapMSBuildOnFullFrameworkWindows instead of the deleted standalone job
- Removed empty
variables:sections from CoreBootstrappedOnLinux and CoreOnMac jobs after removing variable references
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| azure-pipelines/check-documentation-only-change.yml | New reusable template containing PowerShell script to check if only documentation files changed, sets both local and cross-job output variables |
| .vsts-dotnet-ci.yml | Removed standalone IfOnlyDocumentionChanged job, added template inclusion to all 5 test jobs, updated CodeCoverage job dependencies and variable reference, cleaned up empty variable sections |
ViktorHofer
approved these changes
Jan 22, 2026
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.
Context
The
IfOnlyDocumentionChangedjob ran as a standalone dependency for all test jobs. When this single job queued waiting for an agent (often 10+ minutes), it blocked all downstream test execution despite agents being available for the actual tests.Changes Made
IfOnlyDocumentionChangedjob and alldependsOnreferencesazure-pipelines/check-documentation-only-change.ymlencapsulates the git diff logicBootstrapMSBuildOnFullFrameworkWindowsinstead of deleted jobvariables:declarations from CoreBootstrappedOnLinux and CoreOnMac jobs that were left after removing variable referencesNet result: -6 lines, eliminated scheduling dependency, same functional behavior.
Testing
Notes
The check is now redundantly executed 5 times (once per job) instead of once. This is intentional - the ~5-10 seconds of redundant computation is negligible compared to eliminating agent queue blocking. Each job can now start immediately when an agent is available rather than waiting for a dedicated check job to complete.
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.