diff --git a/eng/Build.ps1 b/eng/Build.ps1 index 148b48f6650..4bc1de3389d 100644 --- a/eng/Build.ps1 +++ b/eng/Build.ps1 @@ -552,6 +552,23 @@ try { $nativeTools write-host "Path = $env:PERL5Path" } + else { + $perlCmd = Get-Command "perl.exe" -ErrorAction SilentlyContinue + if ($perlCmd -ne $null) { + $env:PERL5Path = $perlCmd.Source + } + else { + # Perl not found on PATH despite NativeToolsOnMachine being set. + # Download it via native tools installer as a fallback. + $perlInstallBin = Join-Path $ToolsDir "bin" + $perlInstallerPath = Join-Path $PSScriptRoot "common\native\install-tool.ps1" + $perlEngCommonBaseDir = Join-Path $PSScriptRoot "common\native\" + & $perlInstallerPath -ToolName "perl" -InstallPath $perlInstallBin -BaseUri "https://netcorenativeassets.blob.core.windows.net/resource-packages/external" -CommonLibraryDirectory $perlEngCommonBaseDir -Version "5.38.2.2" + $env:PERL5Path = Join-Path $ToolsDir "bin\perl\5.38.2.2\perl\bin\perl.exe" + } + write-host "variable:NativeToolsOnMachine = true" + write-host "Path = $env:PERL5Path" + } $dotnetPath = InitializeDotNetCli $env:DOTNET_ROOT = "$dotnetPath" @@ -629,7 +646,8 @@ try { } else { - Exec-Console "perl.exe" """$RepoRoot\tests\fsharpqa\testenv\bin\runall.pl"" -resultsroot ""$resultsRoot"" -results $resultsLog -log $errorLog -fail $failLog -cleanup:no -procs:$env:NUMBER_OF_PROCESSORS" + $perlExe = if ((Get-Command "perl.exe" -ErrorAction SilentlyContinue) -ne $null) { "perl.exe" } else { $env:PERL5Path } + Exec-Console $perlExe """$RepoRoot\tests\fsharpqa\testenv\bin\runall.pl"" -resultsroot ""$resultsRoot"" -results $resultsLog -log $errorLog -fail $failLog -cleanup:no -procs:$env:NUMBER_OF_PROCESSORS" } write-host "Exec-Console finished" diff --git a/eng/Version.Details.props b/eng/Version.Details.props index 33f18e0ab72..8d5f744bc82 100644 --- a/eng/Version.Details.props +++ b/eng/Version.Details.props @@ -6,7 +6,7 @@ This file should be imported by eng/Versions.props - 10.0.0-beta.26301.2 + 10.0.0-beta.26304.4 18.0.2 18.0.2 diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 0a4170f5d9a..fa31d93846d 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -76,9 +76,9 @@ - + https://github.com/dotnet/arcade - 2a80f6e04a835d6beee635c93331b38944de8129 + 7b306e34463421cef2816352743b943c6547dfab https://dev.azure.com/dnceng/internal/_git/dotnet-optimization diff --git a/global.json b/global.json index c9fb0f5a8ab..97c35b70143 100644 --- a/global.json +++ b/global.json @@ -22,7 +22,7 @@ "perl": "5.38.2.2" }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.26301.2", + "Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.26304.4", "Microsoft.DotNet.Helix.Sdk": "8.0.0-beta.23255.2" } }