mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-27 18:31:15 +08:00
ba1465e584
* Cherry-pick infrastructure changes from https://github.com/microsoft/vcpkg/pull/36081 as authored by @dg0yt * Suppress warnings for the monthly docker mint as suggested by Toddy Mladenov ( MS internal conversation https://teams.microsoft.com/l/message/19:f498f444e97f40b2a2027d015a9047ab@thread.tacv2/1707520630587?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=2080ccbe-0cfb-49e6-a9c1-ea6a6bf82722&parentMessageId=1707520630587&teamName=Containers%20Secure%20Supply%20Chain&channelName=3P%20Registry%20and%20Images%20Guidance&createdTime=1707520630587 ) * Move Azure Container Registry for Android to WestUS3; with this we are officially entirely within one Azure region again :D * Explicitly grant Azure DevOps permissions to touch the scale set rather than relying on subscription-level assignments.
2.7 KiB
2.7 KiB
First time machine setup:
- Install Azure PowerShell: https://docs.microsoft.com/en-us/powershell/azure/install-az-ps
- Run
Connect-AzAccount -Subscription CPP_GITHUB
- Install Docker
Each Patch Tuesday:
- Check for depends:vm-update PRs and make relevant changes if possible.
- Check for Service 360 alerts (possibly at https://aka.ms/s360 ?) against the service named "C++ VCPKG Validation" about vulnerable software we are installing in the VMs and update that. (Most often PowerShell needs to be updated)
- Check for any other software for the Windows images we wish to update and make the edits to do
so in
scripts/azure-pipelines/windows
- Check for any updates possible to
vcpkgTools.xml
. Note that PowerShell currently uses the 7.2.x series due to customer reported problems on older Windows with 7.3.x and later. - Update the first line of android/Dockerfile with the current 'focal' image according to https://hub.docker.com/_/ubuntu
- Run android/create-docker-image.ps1
- Update azure-pipelines.yml to point to the new linux docker image from Azure Container Registry
- Run windows/create-image.ps1
- Run windows/create-vmss.ps1
- Create new pools for these in Azure DevOps: https://dev.azure.com/vcpkg/public/_settings/agentqueues
- Windows: 22 agents
- Make sure to check 'Grant access permission to all pipelines'
- Update azure-pipelines.yml to point to the new pools.
- Submit PR with those changes.
- Submit a full CI rebuild with those changes: https://dev.azure.com/vcpkg/public/_build?definitionId=29
refs/pull/NUMBER/head - Look at that and compare with recent build and resolve anything that's not an existing baseline issue.
- Merge the PR.
- Update the managed image for compiler testing and delete unused images.
- CPP_GITHUB\vcpkg-image-minting\PrWinWus3
- Standard HDD LRS
- West US 3, 1 Replica
- After the last build finishes on the previous pool, delete it in the Azure Devops Organization UI and its Resource Group. ( https://dev.azure.com/vcpkg/_settings/agentpools ?)
- Run
generate-sas-tokens.ps1 -KeyNumber N
, where N is whether the month is even (Jan = 1, Feb = 2, Mar = 1, and so on) and update the relevant libraries on dev.azure.com/vcpkg and devdiv.visualstudio.com - After builds using previous SAS tokens complete, run
roll-sas-tokens.ps1 -KeyNumber N
where this N is the other key. (Jan = 2, Feb = 1, Mar = 2, and so on) - Mint a new macOS base box. (See instructions in
scripts/azure-pipelines/osx/README.md
) - Deploy the new base box to all hosts.
- Update the software on the CTI's machine #12 to match.