adding common scripts for use by multiple dev scenario scripts (#59)
This PR gets Master up to date with the common scripts approach. These are not done but this seems far enough along to proceed. We'll now move forward with refining these common scripts along with the dev scenario scripts that reference them.
This commit is contained in:
26
scripts/WindowsTemplateStudio.ps1
Normal file
26
scripts/WindowsTemplateStudio.ps1
Normal file
@@ -0,0 +1,26 @@
|
||||
# installing Windows Template Studio VSIX
|
||||
Write-Host "Installing Windows Template Studio" -ForegroundColor "Yellow"
|
||||
|
||||
$requestUri = "https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery";
|
||||
$requestBody = '{"flags":"262","filters":[{"criteria":[{"filterType":"10","value":"windows template studio"}],"sortBy":"0","sortOrder":"2","pageSize":"25","pageNumber":"1"}]}';
|
||||
$requestHeaders = New-Object "System.Collections.Generic.Dictionary[[String],[String]]";
|
||||
$requestHeaders.Add('Accept','application/json; api-version=3.2-preview.1');
|
||||
$requestHeaders.Add('Content-Type','application/json; charset=utf-8');
|
||||
|
||||
$results = Invoke-WebRequest -Uri $requestUri -Method POST -Headers $requestHeaders -Body $requestBody -UseBasicParsing;
|
||||
|
||||
$jsonResults = $results.Content | ConvertFrom-Json;
|
||||
$wtsResults = $jsonResults.results[0].extensions | where {$_.extensionName -eq "WindowsTemplateStudio"} ;
|
||||
$wtsFileUrl = $wtsResults.versions[0].files | where {$_.assetType -eq "Microsoft.Templates.2017.vsix"};
|
||||
|
||||
$wtsVsix = [System.IO.Path]::GetFileName($wtsFileUrl.source);
|
||||
$wtsFullPath = [System.IO.Path]::Combine((Resolve-Path $env:USERPROFILE).path, $wtsVsix);
|
||||
|
||||
Invoke-WebRequest -Uri $wtsFileUrl.source -OutFile $wtsFullPath;
|
||||
|
||||
$vsixInstallerFile = Get-Childitem -Include vsixinstaller.exe -Recurse -Path "C:\Program Files (x86)\Microsoft Visual Studio\2017\";
|
||||
$wtsArgList = "/quiet `"$wtsFullPath`"";
|
||||
|
||||
$vsixInstallerResult = Start-Process -FilePath $vsixInstallerFile.FullName -ArgumentList $wtsArgList -Wait -PassThru;
|
||||
|
||||
Remove-Item $wtsFullPath
|
||||
Reference in New Issue
Block a user