From 7ba0ba7334c3346e7eee1e049ba85da193a8d821 Mon Sep 17 00:00:00 2001 From: Billy O'Neal Date: Mon, 12 Feb 2024 15:07:57 -0800 Subject: [PATCH] Change Azure SKU to Standard_D32ads_v5 and move to West US 3 (#36666) --- .../android/azure-pipelines.yml | 4 +-- scripts/azure-pipelines/azure-pipelines.yml | 2 +- .../azure-pipelines/generate-sas-tokens.ps1 | 12 ++----- .../azure-pipelines/linux/azure-pipelines.yml | 2 +- .../azure-pipelines/osx/azure-pipelines.yml | 4 +-- .../azure-pipelines/windows-unstable/job.yml | 2 +- .../windows/azure-pipelines.yml | 5 ++- .../azure-pipelines/windows/create-image.ps1 | 11 ++++--- .../azure-pipelines/windows/create-vmss.ps1 | 11 ++++--- scripts/vcpkgTools.xml | 32 +++++++++---------- 10 files changed, 40 insertions(+), 45 deletions(-) diff --git a/scripts/azure-pipelines/android/azure-pipelines.yml b/scripts/azure-pipelines/android/azure-pipelines.yml index 79c3362b5c..8a43e3ab61 100644 --- a/scripts/azure-pipelines/android/azure-pipelines.yml +++ b/scripts/azure-pipelines/android/azure-pipelines.yml @@ -36,7 +36,7 @@ jobs: value: /mnt/vcpkg-ci/downloads - group: vcpkg-asset-caching-credentials - name: X_VCPKG_ASSET_SOURCES - value: "x-azurl,$(root-url-ea),$(sas-ea),readwrite" + value: "x-azurl,$(root-url-wus3),$(sas-wus3),readwrite" - group: vcpkg-binary-caching-credentials - name: X_VCPKG_BINARY_SOURCE_STUB value: "x-azblob,$(root-bin-url-wus3),$(sas-bin-wus3)" @@ -92,7 +92,7 @@ jobs: --mount type=bind,source=$(Build.Repository.LocalPath),target=/vcpkg \ --mount type=bind,source=$(WORKING_ROOT)/failure-logs,target=/vcpkg/failure-logs \ --mount type=bind,source=/mnt/vcpkg-ci,target=/mnt/vcpkg-ci \ - --env X_VCPKG_ASSET_SOURCES="x-azurl,$(root-url-ea),$(sas-ea),readwrite" \ + --env X_VCPKG_ASSET_SOURCES="x-azurl,$(root-url-wus3),$(sas-wus3),readwrite" \ ${{ parameters.dockerImage }} \ pwsh \ -File /vcpkg/scripts/azure-pipelines/test-modified-ports.ps1 \ diff --git a/scripts/azure-pipelines/azure-pipelines.yml b/scripts/azure-pipelines/azure-pipelines.yml index cd501e5bbd..fbd7f11cf5 100644 --- a/scripts/azure-pipelines/azure-pipelines.yml +++ b/scripts/azure-pipelines/azure-pipelines.yml @@ -4,7 +4,7 @@ variables: android-pool: 'PrAnd-1ES-Pool' linux-pool: 'PrLin-1ES-Pool' - windows-pool: 'PrWin-2024-01-11' + windows-pool: 'PrWin-2024-02-08' osx-pool: 'PrOsx-2024-01-18' osx-arm64-pool: 'PrOsx-2024-01-22-arm64' linux-docker-image: 'andcontainerregistry.azurecr.io/vcpkg-android:2024-01-11' diff --git a/scripts/azure-pipelines/generate-sas-tokens.ps1 b/scripts/azure-pipelines/generate-sas-tokens.ps1 index 04cc8a534e..2b35c52bdb 100644 --- a/scripts/azure-pipelines/generate-sas-tokens.ps1 +++ b/scripts/azure-pipelines/generate-sas-tokens.ps1 @@ -32,12 +32,10 @@ function Get-SasToken { # Asset Cache: # Read, Create, List -$assetSas = Get-SasToken -KeyNumber $KeyNumber -ResourceGroupName vcpkg-asset-cache -StorageAccountName vcpkgassetcacheeastasia -ContainerName cache -Permission rcl +$assetWus3Sas = Get-SasToken -KeyNumber $KeyNumber -ResourceGroupName vcpkg-asset-cache -StorageAccountName vcpkgassetcachewus3 -ContainerName cache -Permission rcl # Binary Cache: # Read, Create, List, Write -$binarySas = Get-SasToken -KeyNumber $KeyNumber -ResourceGroupName vcpkg-binary-cache -StorageAccountName vcpkgbinarycache -ContainerName cache -Permission rclw -$binaryEASas = Get-SasToken -KeyNumber $KeyNumber -ResourceGroupName vcpkg-binary-cache -StorageAccountName vcpkgbinarycacheeastasia -ContainerName cache -Permission rclw $binaryWUS3as = Get-SasToken -KeyNumber $KeyNumber -ResourceGroupName vcpkg-binary-cache -StorageAccountName vcpkgbinarycachewus3 -ContainerName cache -Permission rclw $response = "Asset Cache SAS: Update`n" + ` @@ -45,16 +43,12 @@ $response = "Asset Cache SAS: Update`n" + ` "and`n" + ` "https://devdiv.visualstudio.com/DefaultCollection/DevDiv/_library?itemType=VariableGroups&view=VariableGroupView&variableGroupId=355&path=vcpkg-asset-caching-credentials`n" + ` "`n" + ` - "token:`n" + ` - "$assetSas`n" + ` + "wus3 token:`n" + ` + "$assetWus3Sas`n" + ` "`n" + ` "Binary Cache SAS: Update`n" + ` "https://dev.azure.com/vcpkg/public/_library?itemType=VariableGroups&view=VariableGroupView&variableGroupId=8&path=vcpkg-binary-caching-credentials`n" + ` "`n" + ` - "sas-bin:`n" + ` - "$binarySas`n" + ` - "sas-bin-ea:`n" + ` - "$binaryEASas`n" + ` "sas-bin-wus3:`n" + ` "$binaryWUS3as`n" diff --git a/scripts/azure-pipelines/linux/azure-pipelines.yml b/scripts/azure-pipelines/linux/azure-pipelines.yml index 35d3d43847..de5d3f1a31 100644 --- a/scripts/azure-pipelines/linux/azure-pipelines.yml +++ b/scripts/azure-pipelines/linux/azure-pipelines.yml @@ -29,7 +29,7 @@ jobs: value: /mnt/vcpkg-ci/downloads - group: vcpkg-asset-caching-credentials - name: X_VCPKG_ASSET_SOURCES - value: "x-azurl,$(root-url-ea),$(sas-ea),readwrite" + value: "x-azurl,$(root-url-wus3),$(sas-wus3),readwrite" - group: vcpkg-binary-caching-credentials - name: X_VCPKG_BINARY_SOURCE_STUB value: "x-azblob,$(root-bin-url-wus3),$(sas-bin-wus3)" diff --git a/scripts/azure-pipelines/osx/azure-pipelines.yml b/scripts/azure-pipelines/osx/azure-pipelines.yml index 5a02b92d2f..f93809dea1 100644 --- a/scripts/azure-pipelines/osx/azure-pipelines.yml +++ b/scripts/azure-pipelines/osx/azure-pipelines.yml @@ -35,10 +35,10 @@ jobs: value: /Users/vcpkg/Data/downloads - group: vcpkg-binary-caching-credentials - name: X_VCPKG_BINARY_SOURCE_STUB - value: "x-azblob,$(root-bin-url),$(sas-bin)" # not in eastasia due to physical location + value: "x-azblob,$(root-bin-url-wus3),$(sas-bin-wus3)" - group: vcpkg-asset-caching-credentials - name: X_VCPKG_ASSET_SOURCES - value: "x-azurl,$(root-url-ea),$(sas-ea),readwrite" + value: "x-azurl,$(root-url-wus3),$(sas-wus3),readwrite" steps: - bash: | diff --git a/scripts/azure-pipelines/windows-unstable/job.yml b/scripts/azure-pipelines/windows-unstable/job.yml index 59f68d3a97..e691d16452 100644 --- a/scripts/azure-pipelines/windows-unstable/job.yml +++ b/scripts/azure-pipelines/windows-unstable/job.yml @@ -16,7 +16,7 @@ jobs: value: D:\downloads - group: vcpkg-asset-caching-credentials - name: X_VCPKG_ASSET_SOURCES - value: "x-azurl,$(root-url),$(sas),readwrite" + value: "x-azurl,$(root-url-wus3),$(sas-wus3),readwrite" steps: - task: DownloadBuildArtifacts@0 diff --git a/scripts/azure-pipelines/windows/azure-pipelines.yml b/scripts/azure-pipelines/windows/azure-pipelines.yml index e99758c738..fdd42e3f5e 100644 --- a/scripts/azure-pipelines/windows/azure-pipelines.yml +++ b/scripts/azure-pipelines/windows/azure-pipelines.yml @@ -39,10 +39,10 @@ jobs: value: x86-windows - group: vcpkg-asset-caching-credentials - name: X_VCPKG_ASSET_SOURCES - value: "x-azurl,$(root-url-ea),$(sas-ea),readwrite" + value: "x-azurl,$(root-url-wus3),$(sas-wus3),readwrite" - group: vcpkg-binary-caching-credentials - name: X_VCPKG_BINARY_SOURCE_STUB - value: "x-azblob,$(root-bin-url-ea),$(sas-bin-ea)" + value: "x-azblob,$(root-bin-url-wus3),$(sas-bin-wus3)" steps: - script: .\bootstrap-vcpkg.bat @@ -109,4 +109,3 @@ jobs: testResultsFormat: xUnit testResultsFiles: $(XML_RESULTS_FILE) platform: ${{ parameters.triplet }} - diff --git a/scripts/azure-pipelines/windows/create-image.ps1 b/scripts/azure-pipelines/windows/create-image.ps1 index 17eed78375..ad08615895 100644 --- a/scripts/azure-pipelines/windows/create-image.ps1 +++ b/scripts/azure-pipelines/windows/create-image.ps1 @@ -14,12 +14,12 @@ at https://docs.microsoft.com/en-us/powershell/azure/install-az-ps?view=azps-3.6 or are running from Azure Cloud Shell. #> -$Location = 'eastasia' +$Location = 'westus3' $Prefix = 'Win-' $Prefix += (Get-Date -Format 'yyyy-MM-dd') -$VMSize = 'Standard_D8a_v4' +$VMSize = 'Standard_D8ads_v5' $ProtoVMName = 'PROTOTYPE' -$WindowsServerSku = '2022-datacenter' +$WindowsServerSku = '2022-datacenter-azure-edition' $ErrorActionPreference = 'Stop' $CudnnBaseUrl = 'https://vcpkgimageminting.blob.core.windows.net/assets/cudnn-windows-x86_64-8.8.1.3_cuda12-archive.zip' @@ -62,7 +62,7 @@ $Nic = New-AzNetworkInterface ` -Location $Location ` -Subnet $VirtualNetwork.Subnets[0] -$VM = New-AzVMConfig -Name $ProtoVMName -VMSize $VMSize -Priority 'Spot' -MaxPrice -1 +$VM = New-AzVMConfig -Name $ProtoVMName -VMSize $VMSize -SecurityType Standard $VM = Set-AzVMOperatingSystem ` -VM $VM ` -Windows ` @@ -71,6 +71,7 @@ $VM = Set-AzVMOperatingSystem ` -ProvisionVMAgent $VM = Add-AzVMNetworkInterface -VM $VM -Id $Nic.Id +$VM = Set-AzVMOSDisk -VM $VM -StorageAccountType 'Premium_LRS' -CreateOption 'FromImage' $VM = Set-AzVMSourceImage ` -VM $VM ` -PublisherName 'MicrosoftWindowsServer' ` @@ -253,7 +254,7 @@ Set-AzVM ` -Generalized $VM = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $ProtoVMName -$ImageConfig = New-AzImageConfig -Location $Location -SourceVirtualMachineId $VM.ID +$ImageConfig = New-AzImageConfig -Location $Location -SourceVirtualMachineId $VM.ID -HyperVGeneration V2 $ImageName = Find-ImageName -ResourceGroupName 'vcpkg-image-minting' -Prefix $Prefix New-AzImage -Image $ImageConfig -ImageName $ImageName -ResourceGroupName 'vcpkg-image-minting' diff --git a/scripts/azure-pipelines/windows/create-vmss.ps1 b/scripts/azure-pipelines/windows/create-vmss.ps1 index ea2a00a7f0..a11cda9f1a 100644 --- a/scripts/azure-pipelines/windows/create-vmss.ps1 +++ b/scripts/azure-pipelines/windows/create-vmss.ps1 @@ -25,10 +25,10 @@ Param( [string]$ImageName ) -$Location = 'eastasia' +$Location = 'westus3' $Prefix = 'PrWin-' $Prefix += (Get-Date -Format 'yyyy-MM-dd') -$VMSize = 'Standard_D32a_v4' +$VMSize = 'Standard_D32ads_v5' $LiveVMPrefix = 'BUILD' $ErrorActionPreference = 'Stop' @@ -50,10 +50,11 @@ $Vmss = New-AzVmssConfig ` -SkuName $VMSize ` -SkuTier 'Standard' ` -Overprovision $false ` - -UpgradePolicyMode Manual ` + -UpgradePolicyMode Automatic ` -EvictionPolicy Delete ` -Priority Spot ` - -MaxPrice -1 + -MaxPrice -1 ` + -SecurityType Standard $NicName = $ResourceGroupName + 'NIC' New-AzNetworkInterface ` @@ -86,7 +87,7 @@ $Vmss = Set-AzVmssStorageProfile ` $Vmss = Set-AzVmssBootDiagnostic ` -VirtualMachineScaleSet $Vmss ` - -Enabled $true + -Enabled $false New-AzVmss ` -ResourceGroupName $ResourceGroupName ` diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 10af272468..058b5a6bde 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -37,10 +37,10 @@ 2.7.4 - mingw32\bin\git.exe - https://github.com/git-for-windows/git/releases/download/v2.41.0.windows.1/PortableGit-2.41.0-32-bit.7z.exe - e483a890e77b427c20785e7528279338c7d99651e0afbf704bf2ff3cde23d0895c07e961603d133d5d78aea2308a2994e532974de41674e4f334423b1b47bd0e - PortableGit-2.41.0-32-bit.7z.exe + mingw64\bin\git.exe + https://github.com/git-for-windows/git/releases/download/v2.43.0.windows.1/PortableGit-2.43.0-64-bit.7z.exe + 02ec40f55a6de18f305530e9415b6ce0a597359ebb9a58cf727ac84eceb0003b0f437941b76872b6568157a333c8e6e8d865a36faf874fd5f04774deb6a9387a + PortableGit-2.43.0-32-bit.7z.exe 2.7.4 @@ -82,10 +82,10 @@ gsutil_4.65.tar.gz - 2.8.4 + 3.1.7 vswhere.exe - https://github.com/Microsoft/vswhere/releases/download/2.8.4/vswhere.exe - 1a98beebd1bb6929cbe98b86a3b77fb1ae4508b86cdcb64696b20c3a3336a2b5c8518e19a21092f1c98a46202c048dba819dc52bef122485ac34b888b77e59b2 + https://github.com/microsoft/vswhere/releases/download/3.1.7/vswhere.exe + 40c534eb27f079c15c9782f53f82c12dabfede4d3d85f0edf8a855c2b0d5e12921a96506b37c210beab3c33220f8ff098447ad054e82d8c2603964975fc12076 6.2.1 @@ -145,11 +145,11 @@ 7z2301-extra.7z - 1.35.0 - aria2-1.35.0-win-32bit-build1\aria2c.exe - https://github.com/aria2/aria2/releases/download/release-1.35.0/aria2-1.35.0-win-32bit-build1.zip - 933537cad820b1cecf43a9eeca7e1b241dd7b1c902ee942441a166f2c38845f16046321efbdfa2f83c7e9fc50c7ecc5da6fd00e0c6e2124c07d3b783aa5092a4 - aria2-1.35.0-win-32bit-build1.zip + 1.37.0 + aria2-1.37.0-win-64bit-build1\aria2c.exe + https://github.com/aria2/aria2/releases/download/release-1.37.0/aria2-1.37.0-win-64bit-build1.zip + 6d78405da9cf5639dbe8174787002161b8124d73880fb57cc8c0a3a63982f84e46df4e626990c58f23452965ad925f0d37cb9147e99b25c3d7ca0ea49602f34d + aria2-1.37.0-win-64bit-build1.zip 1.35.0 @@ -180,11 +180,11 @@ ninja-mac-1.11.1.zip - 7.2.11 + 7.2.16 pwsh.exe - https://github.com/PowerShell/PowerShell/releases/download/v7.2.11/PowerShell-7.2.11-win-x86.zip - e9581122101ad161ad628a6feb63e61d3ef8f064a3f325465e8a1a4a6cfc1affbc9bf63146efae0aa65ff9ea5c93018af2c413dc0940f0d162edef805659ec84 - PowerShell-7.2.11-win-x86.zip + https://github.com/PowerShell/PowerShell/releases/download/v7.2.16/PowerShell-7.2.16-win-x64.zip + de246b7719337ff0c16ef46cf1df2e0fb5e39f7d2754cb28422cf455df276be6e35e9efa9d2bac81c383df1d2d97c9281a24e86ec84af7c395b7671149111ca9 + PowerShell-7.2.16-win-x64.zip 16.15.1