From 79a5ee62d62e99de236da03673b2e5237b6e9bb0 Mon Sep 17 00:00:00 2001 From: Oliver Wolff Date: Thu, 16 Dec 2021 11:22:03 +0100 Subject: [PATCH] provisioning: Check successful installation of MSVC 2019 update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Using vswhere we can make sure if the MSVC 2019 update finished with the right version. For further safety we check, if the installation is complete and launchable. Change-Id: I90e84bf4922647b4ff30ba93a207b9d5e1a96120 Reviewed-by: Simo Fält (cherry picked from commit bc4797a7e879ce84bb0267077fb5e32d1d90984f) Reviewed-by: Qt Cherry-pick Bot --- coin/provisioning/common/windows/update-msvc2019.ps1 | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/coin/provisioning/common/windows/update-msvc2019.ps1 b/coin/provisioning/common/windows/update-msvc2019.ps1 index da68cf75..7a482f01 100644 --- a/coin/provisioning/common/windows/update-msvc2019.ps1 +++ b/coin/provisioning/common/windows/update-msvc2019.ps1 @@ -78,6 +78,16 @@ Install $urlOfficial_vsInstaller $urlCache_vsInstaller $sha1_vsInstaller $msvc2019Version = (cmd /c "C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe" ` -version [16.0,17.0`) -latest -property catalog_productDisplayVersion 2`>`&1) +$msvc2019Complete = (cmd /c "C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe" ` + -version [16.0,17.0`) -latest -property isComplete 2`>`&1) +$msvc2019Launchable = (cmd /c "C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe" ` + -version [16.0,17.0`) -latest -property isLaunchable 2`>`&1) + +if($msvc2019Version -ne $version -or [int]$msvc2019Complete -ne 1 ` + -or [int]$msvc2019Launchable -ne 1) { + throw "MSVC 2019 update failed. msvc2019Version: $($msvc2019Version) ` + msvc2019Complete: $($msvc2019Complete) msvc2019Launchable: $($msvc2019Launchable)" +} Write-Output "Visual Studio 2019 = $msvc2019Version" >> ~\versions.txt Write-Output "Visual Studio 2019 Build Tools = $version" >> ~\versions.txt