@@ -157,9 +157,6 @@ function InitializeDotNetCli([bool]$install, [bool]$createSdkLocationFile) {
157157 return $global :_DotNetInstallDir
158158 }
159159
160- # Don't resolve runtime, shared framework, or SDK from other locations to ensure build determinism
161- $env: DOTNET_MULTILEVEL_LOOKUP = 0
162-
163160 # Disable first run since we do not need all ASP.NET packages restored.
164161 $env: DOTNET_NOLOGO = 1
165162
@@ -225,7 +222,6 @@ function InitializeDotNetCli([bool]$install, [bool]$createSdkLocationFile) {
225222 # Make Sure that our bootstrapped dotnet cli is available in future steps of the Azure Pipelines build
226223 Write-PipelinePrependPath - Path $dotnetRoot
227224
228- Write-PipelineSetVariable - Name ' DOTNET_MULTILEVEL_LOOKUP' - Value ' 0'
229225 Write-PipelineSetVariable - Name ' DOTNET_NOLOGO' - Value ' 1'
230226
231227 return $global :_DotNetInstallDir = $dotnetRoot
@@ -277,7 +273,7 @@ function GetDotNetInstallScript([string] $dotnetRoot) {
277273
278274 Retry({
279275 Write-Host " GET $uri "
280- Invoke-WebRequest $uri - OutFile $installScript
276+ Invoke-WebRequest $uri - UseBasicParsing - OutFile $installScript
281277 })
282278 }
283279
@@ -510,7 +506,7 @@ function InitializeXCopyMSBuild([string]$packageVersion, [bool]$install) {
510506 Write-Host " Downloading $packageName $packageVersion "
511507 $ProgressPreference = ' SilentlyContinue' # Don't display the console progress UI - it's a huge perf hit
512508 Retry({
513- Invoke-WebRequest " https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/flat2/$packageName /$packageVersion /$packageName .$packageVersion .nupkg" - OutFile $packagePath
509+ Invoke-WebRequest " https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/flat2/$packageName /$packageVersion /$packageName .$packageVersion .nupkg" - UseBasicParsing - OutFile $packagePath
514510 })
515511
516512 if (! (Test-Path $packagePath )) {
@@ -556,23 +552,30 @@ function LocateVisualStudio([object]$vsRequirements = $null){
556552 Write-Host " Downloading vswhere $vswhereVersion "
557553 $ProgressPreference = ' SilentlyContinue' # Don't display the console progress UI - it's a huge perf hit
558554 Retry({
559- Invoke-WebRequest " https://netcorenativeassets.blob.core.windows.net/resource-packages/external/windows/vswhere/$vswhereVersion /vswhere.exe" - OutFile $vswhereExe
555+ Invoke-WebRequest " https://netcorenativeassets.blob.core.windows.net/resource-packages/external/windows/vswhere/$vswhereVersion /vswhere.exe" - UseBasicParsing - OutFile $vswhereExe
560556 })
561557 }
562558
563- if (! $vsRequirements ) { $vsRequirements = $GlobalJson.tools.vs }
559+ if (! $vsRequirements ) {
560+ if (Get-Member - InputObject $GlobalJson.tools - Name ' vs' - ErrorAction SilentlyContinue) {
561+ $vsRequirements = $GlobalJson.tools.vs
562+ } else {
563+ $vsRequirements = $null
564+ }
565+ }
566+
564567 $args = @ (' -latest' , ' -format' , ' json' , ' -requires' , ' Microsoft.Component.MSBuild' , ' -products' , ' *' )
565568
566569 if (! $excludePrereleaseVS ) {
567570 $args += ' -prerelease'
568571 }
569572
570- if (Get-Member - InputObject $vsRequirements - Name ' version' ) {
573+ if ($vsRequirements -and ( Get-Member - InputObject $vsRequirements - Name ' version' - ErrorAction SilentlyContinue) ) {
571574 $args += ' -version'
572575 $args += $vsRequirements.version
573576 }
574577
575- if (Get-Member - InputObject $vsRequirements - Name ' components' ) {
578+ if ($vsRequirements -and ( Get-Member - InputObject $vsRequirements - Name ' components' - ErrorAction SilentlyContinue) ) {
576579 foreach ($component in $vsRequirements.components ) {
577580 $args += ' -requires'
578581 $args += $component
0 commit comments