From 0d5a1fd6e2edb4960c4c515c38ba58943ad06d50 Mon Sep 17 00:00:00 2001 From: Brad King Date: Thu, 28 May 2020 15:11:36 -0400 Subject: gitlab-ci: pin windows and macos jobs to runners with matching toolsets The toolsets available on machines hosting shell runners will evolve over time. Require the runners to have tags indicating that they have specific toolsets available. When toolsets are eventually removed from a runner, its tags can then be updated accordingly to prevent pipelines created for old commits from ever running on them. --- .gitlab-ci.yml | 7 ++++++- .gitlab/ci/vcvarsall.ps1 | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f4c4490..d797955 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -117,7 +117,8 @@ variables: CMAKE_CONFIGURATION: windows_vs2019_x64_ninja VCVARSALL: "${VS160COMNTOOLS}\\..\\..\\VC\\Auxiliary\\Build\\vcvarsall.bat" - VCVARSPLATFORM: x64 + VCVARSPLATFORM: "x64" + VCVARSVERSION: "14.25" .windows_vs2019_x64: &windows_vs2019_x64 extends: .windows @@ -126,6 +127,7 @@ CMAKE_CONFIGURATION: windows_vs2019_x64 CMAKE_GENERATOR: "Visual Studio 16 2019" CMAKE_GENERATOR_PLATFORM: "x64" + CMAKE_GENERATOR_TOOLSET: "v142,version=14.25" .linux_builder_tags: &linux_builder_tags tags: @@ -145,12 +147,15 @@ - cmake # Since this is a bare runner, pin to a project. - macos - shell + - xcode-11.3 .windows_builder_tags: &windows_builder_tags tags: - cmake # Since this is a bare runner, pin to a project. - windows - shell + - vs2019 + - msvc-19.25 .before_script_unix: &before_script_unix - .gitlab/ci/cmake.sh diff --git a/.gitlab/ci/vcvarsall.ps1 b/.gitlab/ci/vcvarsall.ps1 index a48b511..57d3386 100755 --- a/.gitlab/ci/vcvarsall.ps1 +++ b/.gitlab/ci/vcvarsall.ps1 @@ -1,6 +1,6 @@ $erroractionpreference = "stop" -cmd /c "`"$env:VCVARSALL`" $VCVARSPLATFORM & set" | +cmd /c "`"$env:VCVARSALL`" $VCVARSPLATFORM -vcvars_ver=$VCVARSVERSION & set" | foreach { if ($_ -match "=") { $v = $_.split("=") -- cgit v0.12