From 444affdf3f00e8cc261992b05ff88c4e24cf5b8d Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Thu, 31 Oct 2024 13:13:01 -0400 Subject: [PATCH 1/9] [ci] Upgrade on-prem macOS pool to macOS-14 Sonoma Build and test stages using the phsyical macOS pool have been updated to use macOS-14 Sonoma machines. --- .../automation/azure-pipelines-apidocs.yaml | 6 +++--- .../automation/azure-pipelines-nightly.yaml | 14 +++++++------- .../automation/yaml-templates/build-macos.yaml | 6 +++--- .../yaml-templates/run-emulator-tests.yaml | 4 ++-- .../automation/yaml-templates/variables.yaml | 6 ++++++ 5 files changed, 21 insertions(+), 15 deletions(-) diff --git a/build-tools/automation/azure-pipelines-apidocs.yaml b/build-tools/automation/azure-pipelines-apidocs.yaml index 6a17eedcdfc..078d425c6a4 100644 --- a/build-tools/automation/azure-pipelines-apidocs.yaml +++ b/build-tools/automation/azure-pipelines-apidocs.yaml @@ -58,10 +58,10 @@ stages: - job: mac_build_update_docs displayName: Update API Docs pool: - name: VSEng-VSMac-Xamarin-Shared + name: $(SharedMacPool) demands: - - macOS.Name -equals Ventura - - macOS.Architecture -equals x64 + - macOS.Name -equals $(SharedMacName) + - macOS.Architecture -equals $(SharedMacArch) timeoutInMinutes: 120 workspace: clean: all diff --git a/build-tools/automation/azure-pipelines-nightly.yaml b/build-tools/automation/azure-pipelines-nightly.yaml index c09886ca432..27789667474 100644 --- a/build-tools/automation/azure-pipelines-nightly.yaml +++ b/build-tools/automation/azure-pipelines-nightly.yaml @@ -41,10 +41,10 @@ stages: - job: mac_build_create_installers displayName: macOS > Create Installers pool: - name: VSEng-VSMac-Xamarin-Shared + name: $(SharedMacPool) demands: - - macOS.Name -equals Ventura - - macOS.Architecture -equals x64 + - macOS.Name -equals $(SharedMacName) + - macOS.Architecture -equals $(SharedMacArch) timeoutInMinutes: 420 workspace: clean: all @@ -185,9 +185,9 @@ stages: strategy: parallel: 3 pool: - name: VSEng-VSMac-Xamarin-Shared + name: $(SharedMacPool) demands: - - macOS.Name -equals Ventura + - macOS.Name -equals $(SharedMacName) - macOS.Architecture -equals x64 timeoutInMinutes: 120 workspace: @@ -241,9 +241,9 @@ stages: strategy: parallel: 6 pool: - name: VSEng-VSMac-Xamarin-Shared + name: $(SharedMacPool) demands: - - macOS.Name -equals Ventura + - macOS.Name -equals $(SharedMacName) - macOS.Architecture -equals x64 timeoutInMinutes: 150 workspace: diff --git a/build-tools/automation/yaml-templates/build-macos.yaml b/build-tools/automation/yaml-templates/build-macos.yaml index c279a6752ba..3471f72696a 100644 --- a/build-tools/automation/yaml-templates/build-macos.yaml +++ b/build-tools/automation/yaml-templates/build-macos.yaml @@ -29,10 +29,10 @@ stages: displayName: ${{ parameters.jobDisplayName }} pool: ${{ if or(eq(variables['Build.DefinitionName'], 'Xamarin.Android-PR'), eq(variables['Build.DefinitionName'], 'Xamarin.Android Nightly')) }}: - name: VSEng-VSMac-Xamarin-Shared + name: $(SharedMacPool) demands: - - macOS.Name -equals Ventura - - macOS.Architecture -equals x64 + - macOS.Name -equals $(SharedMacName) + - macOS.Architecture -equals $(SharedMacArch) ${{ else }}: name: Azure Pipelines vmImage: $(HostedMacImage) diff --git a/build-tools/automation/yaml-templates/run-emulator-tests.yaml b/build-tools/automation/yaml-templates/run-emulator-tests.yaml index e3bac786ce3..cffa60b6b04 100644 --- a/build-tools/automation/yaml-templates/run-emulator-tests.yaml +++ b/build-tools/automation/yaml-templates/run-emulator-tests.yaml @@ -12,9 +12,9 @@ jobs: - job: mac_${{ parameters.jobName }}_tests displayName: ${{ parameters.jobName }} Emulator Tests pool: - name: VSEng-VSMac-Xamarin-Shared + name: $(SharedMacPool) demands: - - macOS.Name -equals Ventura + - macOS.Name -equals $(SharedMacName) - macOS.Architecture -equals x64 timeoutInMinutes: ${{ parameters.jobTimeout }} workspace: diff --git a/build-tools/automation/yaml-templates/variables.yaml b/build-tools/automation/yaml-templates/variables.yaml index 4a21510cb50..4dce9868bb4 100644 --- a/build-tools/automation/yaml-templates/variables.yaml +++ b/build-tools/automation/yaml-templates/variables.yaml @@ -31,6 +31,12 @@ variables: value: $(github--pat--vs-mobiletools-engineering-service2) - name: HostedMacImage value: macOS-14 +- name: SharedMacPool + value: VSEng-VSMac-Xamarin-Shared +- name: SharedMacName + value: Sonoma +- name: SharedMacArch + value: arm64 - name: HostedWinImage value: windows-2022 - name: WindowsPoolImage1ESPT From d193f5564a2f5a21b434ae2e14514bf3d039ab83 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Thu, 31 Oct 2024 13:41:26 -0400 Subject: [PATCH 2/9] Update arm64 agent demand --- build-tools/automation/azure-pipelines-apidocs.yaml | 2 +- build-tools/automation/azure-pipelines-nightly.yaml | 2 +- build-tools/automation/yaml-templates/build-macos.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build-tools/automation/azure-pipelines-apidocs.yaml b/build-tools/automation/azure-pipelines-apidocs.yaml index 078d425c6a4..5adceb3986c 100644 --- a/build-tools/automation/azure-pipelines-apidocs.yaml +++ b/build-tools/automation/azure-pipelines-apidocs.yaml @@ -61,7 +61,7 @@ stages: name: $(SharedMacPool) demands: - macOS.Name -equals $(SharedMacName) - - macOS.Architecture -equals $(SharedMacArch) + - Agent.OSArchitecture -equals $(SharedMacArch) timeoutInMinutes: 120 workspace: clean: all diff --git a/build-tools/automation/azure-pipelines-nightly.yaml b/build-tools/automation/azure-pipelines-nightly.yaml index 27789667474..352f23ad261 100644 --- a/build-tools/automation/azure-pipelines-nightly.yaml +++ b/build-tools/automation/azure-pipelines-nightly.yaml @@ -44,7 +44,7 @@ stages: name: $(SharedMacPool) demands: - macOS.Name -equals $(SharedMacName) - - macOS.Architecture -equals $(SharedMacArch) + - Agent.OSArchitecture -equals $(SharedMacArch) timeoutInMinutes: 420 workspace: clean: all diff --git a/build-tools/automation/yaml-templates/build-macos.yaml b/build-tools/automation/yaml-templates/build-macos.yaml index 3471f72696a..0a29943c4d8 100644 --- a/build-tools/automation/yaml-templates/build-macos.yaml +++ b/build-tools/automation/yaml-templates/build-macos.yaml @@ -32,7 +32,7 @@ stages: name: $(SharedMacPool) demands: - macOS.Name -equals $(SharedMacName) - - macOS.Architecture -equals $(SharedMacArch) + - Agent.OSArchitecture -equals $(SharedMacArch) ${{ else }}: name: Azure Pipelines vmImage: $(HostedMacImage) From 2a35c6ddd5599c3c537649d72ed4c0ca77d67971 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Thu, 31 Oct 2024 16:05:40 -0400 Subject: [PATCH 3/9] Bump monodroid with cmake update --- .external | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.external b/.external index 637f17fbb14..3ff528e7bb5 100644 --- a/.external +++ b/.external @@ -1 +1 @@ -xamarin/monodroid:main@62976287a5392ccc17ffff10bcafdc3cecedc89b +xamarin/monodroid:dev/pjc/cmake-3.30@055eef6d3ab280bca223746c7db675a5b35f7a97 From e479dca7822df6017bb82679eb331da26700e1eb Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Thu, 31 Oct 2024 18:12:49 -0400 Subject: [PATCH 4/9] Try to run msbuild tests on shared pool --- .../automation/yaml-templates/run-msbuild-tests.yaml | 7 ++++--- .../automation/yaml-templates/stage-msbuild-tests.yaml | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/build-tools/automation/yaml-templates/run-msbuild-tests.yaml b/build-tools/automation/yaml-templates/run-msbuild-tests.yaml index 98dbce3f8bc..41f00010680 100644 --- a/build-tools/automation/yaml-templates/run-msbuild-tests.yaml +++ b/build-tools/automation/yaml-templates/run-msbuild-tests.yaml @@ -22,9 +22,10 @@ jobs: os: windows ${{ if eq(parameters.testOS, 'macOS') }}: pool: - name: Azure Pipelines - vmImage: $(HostedMacImage) - os: macOS + name: $(SharedMacPool) + demands: + - macOS.Name -equals $(SharedMacName) + - Agent.OSArchitecture -equals $(SharedMacArch) timeoutInMinutes: 240 cancelTimeoutInMinutes: 5 steps: diff --git a/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml b/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml index 434de192f42..1bb76536596 100644 --- a/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml +++ b/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml @@ -22,7 +22,7 @@ stages: testOS: macOS jobName: mac_msbuild_tests jobDisplayName: macOS > Tests > MSBuild - agentCount: 14 + agentCount: 8 xaSourcePath: ${{ parameters.xaSourcePath }} repositoryAlias: ${{ parameters.repositoryAlias }} commit: ${{ parameters.commit }} @@ -34,7 +34,7 @@ stages: testOS: Windows jobName: win_msbuild_tests jobDisplayName: Windows > Tests > MSBuild - agentCount: 6 + agentCount: 8 xaSourcePath: ${{ parameters.xaSourcePath }} repositoryAlias: ${{ parameters.repositoryAlias }} commit: ${{ parameters.commit }} From 31f23a339d18fbe5a45147492d5b7ae5540e2554 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Fri, 1 Nov 2024 16:06:47 -0400 Subject: [PATCH 5/9] Set os param for 1espt --- build-tools/automation/yaml-templates/run-msbuild-tests.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/build-tools/automation/yaml-templates/run-msbuild-tests.yaml b/build-tools/automation/yaml-templates/run-msbuild-tests.yaml index 41f00010680..13a738de5f3 100644 --- a/build-tools/automation/yaml-templates/run-msbuild-tests.yaml +++ b/build-tools/automation/yaml-templates/run-msbuild-tests.yaml @@ -26,6 +26,7 @@ jobs: demands: - macOS.Name -equals $(SharedMacName) - Agent.OSArchitecture -equals $(SharedMacArch) + os: macOS timeoutInMinutes: 240 cancelTimeoutInMinutes: 5 steps: From 98411c01a0aad2d2a1b356af8ab214e7fbc9d571 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Fri, 1 Nov 2024 16:26:07 -0400 Subject: [PATCH 6/9] Bump monodroid --- .external | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.external b/.external index 3ff528e7bb5..cc0d82a0e36 100644 --- a/.external +++ b/.external @@ -1 +1 @@ -xamarin/monodroid:dev/pjc/cmake-3.30@055eef6d3ab280bca223746c7db675a5b35f7a97 +xamarin/monodroid:main@6b27528406d556322328d1dae19a384fff074f66 From 88f3beeb784f92f1537aa433c2763db1ee5fb345 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Wed, 6 Nov 2024 14:45:34 -0800 Subject: [PATCH 7/9] Do not run msbuild tests on shared pool --- .../automation/yaml-templates/run-msbuild-tests.yaml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/build-tools/automation/yaml-templates/run-msbuild-tests.yaml b/build-tools/automation/yaml-templates/run-msbuild-tests.yaml index 13a738de5f3..7853353e798 100644 --- a/build-tools/automation/yaml-templates/run-msbuild-tests.yaml +++ b/build-tools/automation/yaml-templates/run-msbuild-tests.yaml @@ -22,10 +22,8 @@ jobs: os: windows ${{ if eq(parameters.testOS, 'macOS') }}: pool: - name: $(SharedMacPool) - demands: - - macOS.Name -equals $(SharedMacName) - - Agent.OSArchitecture -equals $(SharedMacArch) + name: Azure Pipelines + image: $(HostedMacImage) os: macOS timeoutInMinutes: 240 cancelTimeoutInMinutes: 5 From 9643443c49bc5441525817900844a7a12633cc5d Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Wed, 6 Nov 2024 16:37:18 -0800 Subject: [PATCH 8/9] Update msbuild test agent count --- build-tools/automation/yaml-templates/stage-msbuild-tests.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml b/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml index 1bb76536596..ae13aa8afc6 100644 --- a/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml +++ b/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml @@ -22,7 +22,7 @@ stages: testOS: macOS jobName: mac_msbuild_tests jobDisplayName: macOS > Tests > MSBuild - agentCount: 8 + agentCount: 12 xaSourcePath: ${{ parameters.xaSourcePath }} repositoryAlias: ${{ parameters.repositoryAlias }} commit: ${{ parameters.commit }} From afc8417b296481130ef227f001eacfa7022014c1 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Thu, 7 Nov 2024 09:55:37 -0800 Subject: [PATCH 9/9] Revert agent count changes --- .../automation/yaml-templates/stage-msbuild-tests.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml b/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml index ae13aa8afc6..434de192f42 100644 --- a/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml +++ b/build-tools/automation/yaml-templates/stage-msbuild-tests.yaml @@ -22,7 +22,7 @@ stages: testOS: macOS jobName: mac_msbuild_tests jobDisplayName: macOS > Tests > MSBuild - agentCount: 12 + agentCount: 14 xaSourcePath: ${{ parameters.xaSourcePath }} repositoryAlias: ${{ parameters.repositoryAlias }} commit: ${{ parameters.commit }} @@ -34,7 +34,7 @@ stages: testOS: Windows jobName: win_msbuild_tests jobDisplayName: Windows > Tests > MSBuild - agentCount: 8 + agentCount: 6 xaSourcePath: ${{ parameters.xaSourcePath }} repositoryAlias: ${{ parameters.repositoryAlias }} commit: ${{ parameters.commit }}