aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/findVisualStudioInstallationInstances.ps141
1 files changed, 41 insertions, 0 deletions
diff --git a/scripts/findVisualStudioInstallationInstances.ps1 b/scripts/findVisualStudioInstallationInstances.ps1
new file mode 100644
index 000000000..1cb78fa9e
--- /dev/null
+++ b/scripts/findVisualStudioInstallationInstances.ps1
@@ -0,0 +1,41 @@
+[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 \ No newline at end of file