Skip to content

Add retries to git checkout pipeline steps#316510

Merged
benvillalobos merged 2 commits into
microsoft:mainfrom
benvillalobos:bv/checkout-retries
May 15, 2026
Merged

Add retries to git checkout pipeline steps#316510
benvillalobos merged 2 commits into
microsoft:mainfrom
benvillalobos:bv/checkout-retries

Conversation

@benvillalobos
Copy link
Copy Markdown
Member

@benvillalobos benvillalobos commented May 14, 2026

Adds retryCountOnTaskFailure: 3 to all - checkout: self steps in the build pipeline.

Changes

  • common/checkout.yml — shared template used by ~19 build jobs (Linux/Alpine/Darwin/Win32/Web CLI + node-modules + compile + quality-checks + publish + release + sdl-scan).
  • common/sanity-tests.yml — sparse checkout for sanity test jobs (4 platforms).
  • product-copilot.yml — Copilot product build checkout.
  • product-copilot-recovery.yml — Copilot recovery pipeline checkout.

Why

7-day pipeline analysis (May 6–13, 2026): Checkout microsoft/vscode accounted for 13 of 22 failures (~59%) in the Infra/Transient bucket. These are transient git fetch / network issues that typically resolve on retry — no real fix exists short of waiting out a TCP reset or a DNS hiccup.

Risks

  • Low. retryCountOnTaskFailure only fires on a failed task, so green builds are unaffected.
  • Worst case: ~3x checkout time on a persistently-broken connection (rare; usually network is back within seconds).

Related

Also kicked off https://dev.azure.com/monacotools/Monaco/_build/results?buildId=439482&view=results to ensure the build actually runs

Adds `retryCountOnTaskFailure: 3` to all `- checkout: self` steps in the build pipeline. Checkout failures (13 of 22 infra/transient failures over the last 7 days, ~59%) are typically transient git fetch / network issues that resolve on retry.

Co-authored-by: Colonel <colonel@codec.local>
Copilot AI review requested due to automatic review settings May 14, 2026 22:27
Copy link
Copy Markdown
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

Adds Azure Pipelines checkout retries to improve build reliability for transient git/network failures during checkout: self.

Changes:

  • Adds retryCountOnTaskFailure: 3 to shared and specialized checkout steps.
  • Covers the common checkout template, sanity test sparse checkout, and Copilot product/recovery pipelines.
Show a summary per file
File Description
build/azure-pipelines/common/checkout.yml Adds retry behavior to the shared repository checkout template.
build/azure-pipelines/common/sanity-tests.yml Adds retry behavior to the sanity test sparse checkout.
build/azure-pipelines/product-copilot.yml Adds retry behavior to the Copilot product pipeline checkout.
build/azure-pipelines/product-copilot-recovery.yml Adds retry behavior to the Copilot recovery pipeline checkout.

Copilot's findings

  • Files reviewed: 4/4 changed files
  • Comments generated: 0

@benvillalobos benvillalobos marked this pull request as ready for review May 14, 2026 22:51
@vs-code-engineering
Copy link
Copy Markdown
Contributor

vs-code-engineering Bot commented May 14, 2026

📬 CODENOTIFY

The following users are being notified based on files changed in this PR:

@lszomoru

Matched files:

  • build/azure-pipelines/common/checkout.yml
  • build/azure-pipelines/common/sanity-tests.yml
  • build/azure-pipelines/product-copilot-recovery.yml
  • build/azure-pipelines/product-copilot.yml

@benvillalobos benvillalobos merged commit 2788746 into microsoft:main May 15, 2026
25 checks passed
@vs-code-engineering vs-code-engineering Bot added this to the 1.121.0 milestone May 15, 2026
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.

4 participants