Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Dec 5, 2025

Description

Adds fetchTags: false to all 11 checkout: steps across 9 Azure Pipelines YAML files in eng/pipelines/. This prevents unnecessary Git tag fetching during repository checkout, optimizing CI pipeline initialization time.

Customer Impact

None. Internal CI optimization only.

Regression

No. This is a performance optimization, not a bug fix.

Testing

YAML syntax validated. No functional changes to build or test processes.

Risk

Low. The fetchTags: false parameter only affects what Git metadata is fetched during checkout. Build and test logic remain unchanged. Tags are not required for any existing pipeline functionality.

Original prompt

Update the checkout step in the runtime CI yml to specify fetchTags: false


💡 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.

Copilot AI changed the title [WIP] Update checkout step to set fetchTags to false Add fetchTags: false to all checkout steps in Azure Pipelines Dec 5, 2025
Copilot AI requested a review from elinor-fung December 5, 2025 23:39
@adityamandaleeka
Copy link
Member

Before/After on checkout steps looks pretty nice

image

@AaronRobinsonMSFT
Copy link
Member

FYI @agocke

@adityamandaleeka
Copy link
Member

Note: We're backporting this to 10.0/9.0 in aspnetcore. I assume you'll want to backport this too.

@elinor-fung elinor-fung marked this pull request as ready for review December 9, 2025 06:48
Copilot AI review requested due to automatic review settings December 9, 2025 06:48
@elinor-fung elinor-fung requested a review from a team December 9, 2025 06:50
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds the fetchTags: false parameter to all checkout steps in Azure Pipelines YAML files under eng/pipelines/, optimizing CI pipeline initialization by preventing unnecessary Git tag fetching during repository checkout.

  • Adds fetchTags: false to 11 checkout steps across 9 pipeline configuration files
  • Improves pipeline performance without affecting build or test functionality
  • Correctly excludes eng/common/ directory (managed by Arcade SDK)

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.

Show a summary per file
File Description
eng/pipelines/libraries/stress/ssl.yml Added fetchTags: false to 2 checkout steps (Linux and Windows jobs)
eng/pipelines/libraries/stress/http.yml Added fetchTags: false to 2 checkout steps (Linux and Windows jobs)
eng/pipelines/libraries/run-test-job.yml Added fetchTags: false to checkout step in test job template
eng/pipelines/libraries/fuzzing/deploy-to-onefuzz.yml Added fetchTags: false to checkout step for OneFuzz deployment job
eng/pipelines/libraries/deploy-networking-echo-test-servers.yml Added fetchTags: false to checkout step for network testing deployment
eng/pipelines/diagnostics/runtime-diag-job.yml Added fetchTags: false to diagnostics repository checkout step
eng/pipelines/common/templates/runtimes/xplat-job.yml Added fetchTags: false to checkout step in cross-platform runtime job template
eng/pipelines/common/global-build-job.yml Added fetchTags: false to checkout step in global build job template
eng/pipelines/common/evaluate-paths-job.yml Added fetchTags: false to checkout step for path evaluation job

@elinor-fung elinor-fung merged commit 0fb17f7 into main Dec 9, 2025
167 of 172 checks passed
@elinor-fung elinor-fung deleted the copilot/update-checkout-step-fetch-tags branch December 9, 2025 23:36
@elinor-fung
Copy link
Member

/backport to release/10.0

@github-actions
Copy link
Contributor

github-actions bot commented Dec 9, 2025

Started backporting to release/10.0 (link to workflow run)

@elinor-fung
Copy link
Member

/backport to release/9.0-staging

@github-actions
Copy link
Contributor

github-actions bot commented Dec 9, 2025

Started backporting to release/9.0-staging (link to workflow run)

@github-actions
Copy link
Contributor

github-actions bot commented Dec 9, 2025

@elinor-fung backporting to release/9.0-staging failed, the patch most likely resulted in conflicts. Please backport manually!

git am output
$ git am --3way --empty=keep --ignore-whitespace --keep-non-patch changes.patch

Creating an empty commit: Initial plan
Applying: Add fetchTags: false to all checkout steps in Azure Pipelines YAML files
Using index info to reconstruct a base tree...
M	eng/pipelines/common/global-build-job.yml
M	eng/pipelines/common/templates/runtimes/xplat-job.yml
A	eng/pipelines/diagnostics/runtime-diag-job.yml
A	eng/pipelines/libraries/deploy-networking-echo-test-servers.yml
M	eng/pipelines/libraries/fuzzing/deploy-to-onefuzz.yml
M	eng/pipelines/libraries/run-test-job.yml
M	eng/pipelines/libraries/stress/http.yml
M	eng/pipelines/libraries/stress/ssl.yml
Falling back to patching base and 3-way merge...
Auto-merging eng/pipelines/common/global-build-job.yml
Auto-merging eng/pipelines/common/templates/runtimes/xplat-job.yml
CONFLICT (modify/delete): eng/pipelines/diagnostics/runtime-diag-job.yml deleted in HEAD and modified in Add fetchTags: false to all checkout steps in Azure Pipelines YAML files.  Version Add fetchTags: false to all checkout steps in Azure Pipelines YAML files of eng/pipelines/diagnostics/runtime-diag-job.yml left in tree.
CONFLICT (modify/delete): eng/pipelines/libraries/deploy-networking-echo-test-servers.yml deleted in HEAD and modified in Add fetchTags: false to all checkout steps in Azure Pipelines YAML files.  Version Add fetchTags: false to all checkout steps in Azure Pipelines YAML files of eng/pipelines/libraries/deploy-networking-echo-test-servers.yml left in tree.
Auto-merging eng/pipelines/libraries/fuzzing/deploy-to-onefuzz.yml
Auto-merging eng/pipelines/libraries/run-test-job.yml
Auto-merging eng/pipelines/libraries/stress/http.yml
Auto-merging eng/pipelines/libraries/stress/ssl.yml
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
hint: When you have resolved this problem, run "git am --continue".
hint: If you prefer to skip this patch, run "git am --skip" instead.
hint: To restore the original branch and stop patching, run "git am --abort".
hint: Disable this message with "git config set advice.mergeConflict false"
Patch failed at 0002 Add fetchTags: false to all checkout steps in Azure Pipelines YAML files
Error: The process '/usr/bin/git' failed with exit code 128

Link to workflow output

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants