Use vse2022:vnext in Onebranch pipeline (#3595)

This commit is contained in:
Yi Huang 2023-04-29 10:04:27 -07:00 коммит произвёл GitHub
Родитель 6a8c588270
Коммит 8076aa041f
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
8 изменённых файлов: 12 добавлений и 54 удалений

Просмотреть файл

@ -50,6 +50,7 @@ extends:
parameters:
featureFlags:
skipPoliciesValidation: true
WindowsHostVersion: '1ESWindows2022'
globalSdl: # https://aka.ms/obpipelines/sdl
tsa:
enabled: false # onebranch publish all sdl results to TSA. If TSA is disabled all SDL tools will forced into 'break' build mode.
@ -112,9 +113,8 @@ extends:
repositoryName: msquicbuild
dockerFileRelPath: .azure\dockers\ob\windows\Dockerfile
dockerFileContextPath: .azure\dockers\ob\windows
saveImageToPath: msquicbuild-windows.tar.gz
enable_network: true
build_tag: ${{ parameters.DockerTag }}
compress: true
enable_isolated_acr_push: true
enable_service_tree_acr_path: true

Просмотреть файл

@ -27,7 +27,7 @@ parameters: # parameters are shown up in ADO UI in a build queue time
- name: 'WindowsContainerImage2DockerTag'
displayName: 'WindowsContainerImage2 DockerTag'
type: string
default: 'latest'
default: 'vse2022.2'
variables:
CDP_DEFINITION_BUILD_COUNT: $[counter('', 0)] # needed for onebranch.pipeline.version task https://aka.ms/obpipelines/versioning
@ -40,7 +40,7 @@ variables:
NUGET_XMLDOC_MODE: none
ONEBRANCH_AME_ACR_LOGIN: onebranch.azurecr.io, cdpxb7b51c2f738e43e48f7605d9a8e5f6d700.azurecr.io
WindowsContainerImage: 'onebranch.azurecr.io/windows/ltsc2019/vse2019:latest'
WindowsContainerImage: 'onebranch.azurecr.io/windows/ltsc2022/vse2022:vnext'
WindowsContainerImage2: 'cdpxb7b51c2f738e43e48f7605d9a8e5f6d700.azurecr.io/b7b51c2f-738e-43e4-8f76-05d9a8e5f6d7/official/msquicbuild:${{ parameters.WindowsContainerImage2DockerTag }}'
LinuxContainerImage: 'ghcr.io/microsoft/msquic/linux-build-xcomp:22.04'
LinuxContainerImage2: 'ghcr.io/microsoft/msquic/linux-build-xcomp:20.04'
@ -72,6 +72,7 @@ extends:
suppressionFile: $(Build.SourcesDirectory)\.azure\openssl.gdnsuppress
featureFlags:
linuxEsrpSigningPreview: true
WindowsHostVersion: '1ESWindows2022'
stages:
- stage: build_winkernel

Просмотреть файл

@ -1,5 +1,5 @@
# escape=`
FROM onebranch.azurecr.io/windows/ltsc2019/vse2019:latest
FROM onebranch.azurecr.io/windows/ltsc2022/vse2022:vnext
# Default .NET FX images switch shell to PS. Switch it back.
SHELL ["cmd", "/S", "/C"]
@ -7,14 +7,12 @@ SHELL ["cmd", "/S", "/C"]
COPY win-installer-helper.psm1 C:\
COPY install*.* C:\
COPY xgameplatform.lib C:\
COPY vsconfig.2019 C:\
COPY msquic.vsconfig C:\
RUN dir C:\
RUN C:\install.cmd C:\install-workloads.ps1
RUN C:\install.cmd C:\install-ewdk.ps1
RUN C:\install.cmd C:\install-tools.ps1
RUN del C:\install*.* & `

Просмотреть файл

@ -1,44 +0,0 @@
if (Test-Path "$PSScriptRoot\win-installer-helper.psm1")
{
Import-Module "$PSScriptRoot\win-installer-helper.psm1"
}
elseif (Test-Path "C:\win-installer-helper.psm1")
{
Import-Module "C:\win-installer-helper.psm1"
}
$ProgressPreference = 'SilentlyContinue'
Start-Setup
try {
Write-Host "Installing EWDK build environment"
Get-File -Url "https://software-download.microsoft.com/download/pr/EWDK_co_release_22000_210604-1628.iso" -FileName "EWDK_co_release_22000_210604-1628.iso"
C:\7-Zip\7z.exe x -y -oC:\ewdk C:\Downloads\EWDK_co_release_22000_210604-1628.iso
del C:\Downloads\*.iso
# Remove unnecessary items from ewdk to speed up image download
Remove-Item -Path "C:\ewdk\Program Files\Microsoft Visual Studio\2019\BuildTools\VC\Tools\Llvm" -Recurse -Force
# Get all folders in MSVC
$Toolchains = (Get-ChildItem -Path "C:\ewdk\Program Files\Microsoft Visual Studio\2019\BuildTools\VC\Tools\MSVC" | Select-Object -ExpandProperty FullName)
foreach ($TC in $Toolchains) {
Remove-Item -Path (Join-Path $TC atlmfc) -Recurse -Force
$LibFolders = Get-ChildItem -Path (Join-Path $TC lib) -Exclude "spectre"
$LibFolders | Remove-Item -Force -Recurse
Remove-Item -Path (Join-Path $TC "lib\spectre\onecore") -Recurse -Force
$LibFolders = Get-ChildItem -Path (Join-Path $TC "lib\spectre") -Exclude "arm","arm64","x64","x86"
$LibFolders | Remove-Item -Force -Recurse
}
Write-Output "Unzipped EWDK files to C:\ewdk."
} finally {
Stop-Setup
}

Просмотреть файл

@ -26,6 +26,9 @@ try {
Expand-Archive -Path "C:\Downloads\nasm.zip" -DestinationPath "C:\ExtraTools" -Force
Write-Host "Installed nasm"
Get-File -Url "https://strawberryperl.com/download/5.32.1.1/strawberry-perl-5.32.1.1-64bit.msi" -FileName "strawberry-perl-5.32.1.1-64bit.msi"
Install-FromMSI -Path "C:\Downloads\strawberry-perl-5.32.1.1-64bit.msi" -Arguments "/q INSTALLDIR=C:\strawberry"
Update-Path -PathNodes @("C:\ExtraTools\jom;C:\ExtraTools\nasm-$NasmVersion\;C:\Program Files\CMake\bin;C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\strawberry\perl\bin")
# Removing PERL variable

Просмотреть файл

@ -18,7 +18,7 @@ try {
$vsInstallerPath = "${env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vs_installer.exe"
$installerArgs = "modify --config `"C:\vsconfig.2019`" --installPath `"${env:VS2019}`" --quiet --norestart --nocache"
$installerArgs = "modify --config `"C:\msquic.vsconfig`" --installPath `"C:\Program Files\Microsoft Visual Studio\2022\Enterprise`" --quiet --norestart --nocache"
Install-FromEXE -Path $vsInstallerPath -Arguments $installerArgs
Write-Output "Installed additional visual studio workloads"

Просмотреть файл

@ -1,3 +1,3 @@
call C:\ewdk\BuildEnv\SetupBuildEnv.cmd
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat
msbuild msquic.kernel.sln -t:restore -p:RestorePackagesConfig=true /p:Configuration=%1 /p:Platform=%2
msbuild msquic.kernel.sln -p:ONEBRANCH_BUILD=true /p:Configuration=%1 /p:Platform=%2 /p:QUIC_VER_SUFFIX=-official /p:QUIC_VER_BUILD_ID=%BUILD_BUILDID% /p:QUIC_VER_GIT_HASH=%BUILD_SOURCEVERSION%