vcpkg/scripts/findVisualStudioInstallationInstances.ps1

41 lines
1.3 KiB
PowerShell
Raw Normal View History

[CmdletBinding()]
param(
)
Import-Module BitsTransfer
$scriptsDir = split-path -parent $MyInvocation.MyCommand.Definition
$vcpkgRootDir = & $scriptsDir\findFileRecursivelyUp.ps1 $scriptsDir .vcpkg-root
$downloadsDir = "$vcpkgRootDir\downloads"
& $scriptsDir\fetchDependency.ps1 "nuget"
$nugetexe = "$downloadsDir\nuget.exe"
$nugetPackageDir = "$downloadsDir\nuget-packages"
$SetupAPIVersion = "1.3.269-rc"
$url = "https://api.nuget.org/packages/microsoft.visualstudio.setup.configuration.native.$SetupAPIVersion.nupkg"
$downloadName = "microsoft.visualstudio.setup.configuration.native.$SetupAPIVersion.nupkg"
$downloadPath = "$downloadsDir\$downloadName"
if (!(Test-Path $downloadPath))
{
Start-BitsTransfer -Source $url -Destination $downloadPath #-ErrorAction SilentlyContinue
}
$nugetOutput = & $nugetexe install Microsoft.VisualStudio.Setup.Configuration.Native -Pre -Source $downloadsDir -OutputDirectory $nugetPackageDir 2>&1
$SetupConsoleExe = "$nugetPackageDir\Microsoft.VisualStudio.Setup.Configuration.Native.$SetupAPIVersion\tools\x86\Microsoft.VisualStudio.Setup.Configuration.Console.exe"
if (!(Test-Path $SetupConsoleExe))
{
throw $nugetOutput
}
$consoleOutput = & $SetupConsoleExe 2>&1
$key = "InstallationPath = "
$paths = $consoleOutput | Select-String -SimpleMatch $key
$paths = $paths -replace $key, ""
return $paths