From fd933f58ad501de4e2c75d2b4fc2a5806ec98775 Mon Sep 17 00:00:00 2001 From: wenytang-ms Date: Tue, 4 Aug 2026 11:19:26 +0800 Subject: [PATCH] build: retry transient JDT LS p2 downloads The JDT LS snapshot repository has no p2 mirrors, and Tycho 4.0.5 does not retry a direct connection reset. Let Azure Pipelines retry the build-plugin task on the same agent so the Maven and p2 caches are reused and only the missing artifact is fetched again. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: ac225268-483d-4498-a08f-fe79a87d4d2e --- .azure-pipelines/vscode-java-test-ci.yml | 4 ++++ .azure-pipelines/vscode-java-test-nightly.yml | 4 ++++ .azure-pipelines/vscode-java-test-rc.yml | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/.azure-pipelines/vscode-java-test-ci.yml b/.azure-pipelines/vscode-java-test-ci.yml index 534d4ecc..b28d3bc2 100644 --- a/.azure-pipelines/vscode-java-test-ci.yml +++ b/.azure-pipelines/vscode-java-test-ci.yml @@ -58,6 +58,10 @@ extends: displayName: npm run lint - script: npm run build-plugin displayName: npm run build-plugin + # The JDT LS snapshot p2 site has no mirrors, and Tycho 4.0.5 + # does not retry a direct connection reset. A task retry reuses + # the Maven/p2 cache and fetches only the missing artifact. + retryCountOnTaskFailure: 2 # System.AccessToken is a secret, and Azure Pipelines does not export secret # variables to the environment -- not even through a variable that merely # references one. It is mapped here, on the step that actually runs Maven, diff --git a/.azure-pipelines/vscode-java-test-nightly.yml b/.azure-pipelines/vscode-java-test-nightly.yml index 7cd382e9..67843271 100644 --- a/.azure-pipelines/vscode-java-test-nightly.yml +++ b/.azure-pipelines/vscode-java-test-nightly.yml @@ -74,6 +74,10 @@ extends: displayName: npm run lint - script: npm run build-plugin displayName: npm run build-plugin + # The JDT LS snapshot p2 site has no mirrors, and Tycho 4.0.5 + # does not retry a direct connection reset. A task retry reuses + # the Maven/p2 cache and fetches only the missing artifact. + retryCountOnTaskFailure: 2 # System.AccessToken is a secret, and Azure Pipelines does not export secret # variables to the environment -- not even through a variable that merely # references one. It is mapped here, on the step that actually runs Maven, diff --git a/.azure-pipelines/vscode-java-test-rc.yml b/.azure-pipelines/vscode-java-test-rc.yml index 5c2237b2..6a0ba13b 100644 --- a/.azure-pipelines/vscode-java-test-rc.yml +++ b/.azure-pipelines/vscode-java-test-rc.yml @@ -69,6 +69,10 @@ extends: displayName: npm run lint - script: npm run build-plugin displayName: npm run build-plugin + # The JDT LS snapshot p2 site has no mirrors, and Tycho 4.0.5 + # does not retry a direct connection reset. A task retry reuses + # the Maven/p2 cache and fetches only the missing artifact. + retryCountOnTaskFailure: 2 # System.AccessToken is a secret, and Azure Pipelines does not export secret # variables to the environment -- not even through a variable that merely # references one. It is mapped here, on the step that actually runs Maven,