[Windows] Improve Visual Studio installation scripts to support Preview versions (#3850)

* Support Preview versions of Visual Studio

* resolve comments

* Fix test

* fix tests
This commit is contained in:
Maxim Lobanov
2021-08-04 22:35:44 +03:00
committed by GitHub
parent b5a7a67456
commit 8481b2c846
13 changed files with 34 additions and 29 deletions

View File

@@ -72,16 +72,14 @@ function Get-VsCatalogJsonPath {
return Join-Path $instanceFolder.FullName "catalog.json"
}
function Get-VisualStudioPath {
return (Get-VSSetupInstance | Select-VSSetupInstance -Product *).InstallationPath
}
function Get-VisualStudioPackages {
return (Get-VSSetupInstance | Select-VSSetupInstance -Product *).Packages
function Get-VisualStudioInstance {
# Use -Prerelease and -All flags to make sure that Preview versions of VS are found correctly
$vsInstance = Get-VSSetupInstance -Prerelease -All | Where-Object { $_.DisplayName -match "Visual Studio" } | Select-Object -First 1
$vsInstance | Select-VSSetupInstance -Product *
}
function Get-VisualStudioComponents {
Get-VisualStudioPackages | Where-Object type -in 'Component', 'Workload' |
(Get-VisualStudioInstance).Packages | Where-Object type -in 'Component', 'Workload' |
Sort-Object Id, Version | Select-Object @{n = 'Package'; e = {$_.Id}}, Version |
Where-Object { $_.Package -notmatch "[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}" }
}