From 0ee453c3c318a2bb4ea80be051d34d06e85f7084 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 18 Jun 2026 00:50:39 +0000 Subject: [PATCH 1/3] Initial plan From 0b5a03daa36737a6a423ac72d2e81982c336ee1a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 18 Jun 2026 00:55:16 +0000 Subject: [PATCH 2/3] Add default timeoutInMinutes: 75 for windows_arm64 in platform-matrix.yml Co-authored-by: JulieLeeMSFT <63486087+JulieLeeMSFT@users.noreply.github.com> --- eng/pipelines/common/platform-matrix.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/eng/pipelines/common/platform-matrix.yml b/eng/pipelines/common/platform-matrix.yml index 9cd6d7e79a7592..89c95f73fba7da 100644 --- a/eng/pipelines/common/platform-matrix.yml +++ b/eng/pipelines/common/platform-matrix.yml @@ -949,4 +949,8 @@ jobs: runtimeFlavor: ${{ parameters.runtimeFlavor }} buildConfig: ${{ parameters.buildConfig }} helixQueueGroup: ${{ parameters.helixQueueGroup }} + # windows_arm64 agents are slower; give a larger default timeout, + # but only when the calling pipeline hasn't specified its own. + ${{ if eq(parameters.jobParameters.timeoutInMinutes, '') }}: + timeoutInMinutes: 75 ${{ insert }}: ${{ parameters.jobParameters }} From 4944888c6a004450688afb56489eaca92fe6a81f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 19 Jun 2026 18:01:09 +0000 Subject: [PATCH 3/3] Move windows_arm64 timeout floor to global-build-job Co-authored-by: JulieLeeMSFT <63486087+JulieLeeMSFT@users.noreply.github.com> --- eng/pipelines/common/global-build-job.yml | 12 +++++++++++- eng/pipelines/common/platform-matrix.yml | 4 ---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/eng/pipelines/common/global-build-job.yml b/eng/pipelines/common/global-build-job.yml index 33dcc731daccac..c0e1a20daa934a 100644 --- a/eng/pipelines/common/global-build-job.yml +++ b/eng/pipelines/common/global-build-job.yml @@ -49,7 +49,17 @@ jobs: pool: ${{ parameters.pool }} container: ${{ parameters.container }} condition: and(succeeded(), ${{ parameters.condition }}) - timeoutInMinutes: ${{ parameters.timeoutInMinutes }} + # Windows arm64 builds are slower than the 60 min ADO default, + # so enforce a floor of 75 minutes while still honoring any larger explicit value. + ${{ if eq(parameters.platform, 'windows_arm64') }}: + ${{ if eq(parameters.timeoutInMinutes, '') }}: + timeoutInMinutes: 75 + ${{ elseif gt(parameters.timeoutInMinutes, 75) }}: + timeoutInMinutes: ${{ parameters.timeoutInMinutes }} + ${{ else }}: + timeoutInMinutes: 75 + ${{ else }}: + timeoutInMinutes: ${{ parameters.timeoutInMinutes }} enablePublishTestResults: ${{ parameters.enablePublishTestResults }} testResultsFormat: ${{ parameters.testResultsFormat }} enableMicrobuild: ${{ parameters.isOfficialBuild }} diff --git a/eng/pipelines/common/platform-matrix.yml b/eng/pipelines/common/platform-matrix.yml index 89c95f73fba7da..9cd6d7e79a7592 100644 --- a/eng/pipelines/common/platform-matrix.yml +++ b/eng/pipelines/common/platform-matrix.yml @@ -949,8 +949,4 @@ jobs: runtimeFlavor: ${{ parameters.runtimeFlavor }} buildConfig: ${{ parameters.buildConfig }} helixQueueGroup: ${{ parameters.helixQueueGroup }} - # windows_arm64 agents are slower; give a larger default timeout, - # but only when the calling pipeline hasn't specified its own. - ${{ if eq(parameters.jobParameters.timeoutInMinutes, '') }}: - timeoutInMinutes: 75 ${{ insert }}: ${{ parameters.jobParameters }}