From 084a1e033b5d787351b4e6d3fa8afed4e17e5679 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20K=C4=99pie=C5=84?= Date: Wed, 11 Dec 2019 12:04:29 +0100 Subject: [PATCH] Add a Windows debug build job to GitLab CI Add a Visual Studio build job using the "Debug" build configuration to GitLab CI without enabling it for every pipeline as it takes about twice as long to complete as its "Release" counterpart. (cherry picked from commit 12564928a76f8ff613ac061e243693d29279339d) --- .gitlab-ci.yml | 65 +++++++++++++++++++++++++++++--------------------- 1 file changed, 38 insertions(+), 27 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 505e9b4bb4..02ffeb1ab1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -195,6 +195,35 @@ stages: untracked: true expire_in: "1 week" +.windows_build: &windows_build_job + stage: build + tags: + - windows + - amd64 + script: + - 'Push-Location "C:/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/VC/Auxiliary/Build"' + - '& cmd.exe /C "vcvarsall.bat x64 & set" | Foreach-Object { if ($_ -match "(.*?)=(.*)") { Set-Item -force -path "Env:\$($matches[1])" -value "$($matches[2])" } }' + - 'Pop-Location' + - 'Set-Location win32utils' + - '& "C:/Strawberry/perl/bin/perl.exe" Configure + "with-tools-version=15.0" + "with-platform-toolset=v141" + "with-platform-version=10.0.17763.0" + "with-vcredist=C:/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/VC/Redist/MSVC/14.16.27012/vcredist_x64.exe" + "with-openssl=C:/OpenSSL" + "with-libxml2=C:/libxml2" + "without-python" + "with-system-tests" + x64' + - 'Set-Item -path "Env:CL" -value "/MP$([Math]::Truncate($BUILD_PARALLEL_JOBS/2))"' + - '& msbuild.exe /maxCpuCount:2 /t:Build /p:Configuration=$VSCONF bind9.sln' + dependencies: [] + needs: + - autoreconf:sid:amd64 + artifacts: + untracked: true + expire_in: "1 week" + .setup_interfaces: &setup_interfaces | if [ "$(id -u)" -eq "0" ]; then sh -x bin/tests/system/ifconfig.sh up; @@ -920,36 +949,10 @@ unit:nolibtool:sid:amd64: # Jobs for Visual Studio 2017 builds on Windows (amd64) msvc:windows:amd64: + <<: *windows_build_job <<: *default_triggering_rules - stage: build - tags: - - windows - - amd64 variables: VSCONF: Release - script: - - 'Push-Location "C:/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/VC/Auxiliary/Build"' - - '& cmd.exe /C "vcvarsall.bat x64 & set" | Foreach-Object { if ($_ -match "(.*?)=(.*)") { Set-Item -force -path "Env:\$($matches[1])" -value "$($matches[2])" } }' - - 'Pop-Location' - - 'Set-Location win32utils' - - '& "C:/Strawberry/perl/bin/perl.exe" Configure - "with-tools-version=15.0" - "with-platform-toolset=v141" - "with-platform-version=10.0.17763.0" - "with-vcredist=C:/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/VC/Redist/MSVC/14.16.27012/vcredist_x64.exe" - "with-openssl=C:/OpenSSL" - "with-libxml2=C:/libxml2" - "without-python" - "with-system-tests" - x64' - - 'Set-Item -path "Env:CL" -value "/MP$([Math]::Truncate($BUILD_PARALLEL_JOBS/2))"' - - '& msbuild.exe /maxCpuCount:2 /t:Build /p:Configuration=$VSCONF bind9.sln' - dependencies: [] - needs: - - autoreconf:sid:amd64 - artifacts: - untracked: true - expire_in: "1 week" system:msvc:windows:amd64: stage: system @@ -978,3 +981,11 @@ system:msvc:windows:amd64: only: - tags - web + +msvc-debug:windows:amd64: + <<: *windows_build_job + variables: + VSCONF: Debug + only: + - tags + - web