|
|
@ -184,6 +184,35 @@ function InstallDotNetSdk { |
|
|
function InstallDotNet { |
|
|
function InstallDotNet { |
|
|
local root=$1 |
|
|
local root=$1 |
|
|
local version=$2 |
|
|
local version=$2 |
|
|
|
|
|
local runtime=$4 |
|
|
|
|
|
|
|
|
|
|
|
local dotnetVersionLabel="'$runtime v$version'" |
|
|
|
|
|
if [[ -n "${4:-}" ]] && [ "$4" != 'sdk' ]; then |
|
|
|
|
|
runtimePath="$root" |
|
|
|
|
|
runtimePath="$runtimePath/shared" |
|
|
|
|
|
case "$runtime" in |
|
|
|
|
|
dotnet) |
|
|
|
|
|
runtimePath="$runtimePath/Microsoft.NETCore.App" |
|
|
|
|
|
;; |
|
|
|
|
|
aspnetcore) |
|
|
|
|
|
runtimePath="$runtimePath/Microsoft.AspNetCore.App" |
|
|
|
|
|
;; |
|
|
|
|
|
windowsdesktop) |
|
|
|
|
|
runtimePath="$runtimePath/Microsoft.WindowsDesktop.App" |
|
|
|
|
|
;; |
|
|
|
|
|
*) |
|
|
|
|
|
;; |
|
|
|
|
|
esac |
|
|
|
|
|
runtimePath="$runtimePath/$version" |
|
|
|
|
|
|
|
|
|
|
|
dotnetVersionLabel="runtime toolset '$runtime/$architecture v$version'" |
|
|
|
|
|
|
|
|
|
|
|
if [ -d "$runtimePath" ]; then |
|
|
|
|
|
echo " Runtime toolset '$runtime/$architecture v$version' already installed." |
|
|
|
|
|
local installSuccess=1 |
|
|
|
|
|
return |
|
|
|
|
|
fi |
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
GetDotNetInstallScript "$root" |
|
|
GetDotNetInstallScript "$root" |
|
|
local install_script=$_GetDotNetInstallScript |
|
|
local install_script=$_GetDotNetInstallScript |
|
|
@ -228,17 +257,17 @@ function InstallDotNet { |
|
|
for variationName in "${variations[@]}"; do |
|
|
for variationName in "${variations[@]}"; do |
|
|
local name="$variationName[@]" |
|
|
local name="$variationName[@]" |
|
|
local variation=("${!name}") |
|
|
local variation=("${!name}") |
|
|
echo "Attempting to install dotnet from $variationName." |
|
|
echo " Attempting to install $dotnetVersionLabel from $variationName." |
|
|
bash "$install_script" "${variation[@]}" && installSuccess=1 |
|
|
bash "$install_script" "${variation[@]}" && installSuccess=1 |
|
|
if [[ "$installSuccess" -eq 1 ]]; then |
|
|
if [[ "$installSuccess" -eq 1 ]]; then |
|
|
break |
|
|
break |
|
|
fi |
|
|
fi |
|
|
|
|
|
|
|
|
echo "Failed to install dotnet from $variationName." |
|
|
echo " Failed to install $dotnetVersionLabel from $variationName." |
|
|
done |
|
|
done |
|
|
|
|
|
|
|
|
if [[ "$installSuccess" -eq 0 ]]; then |
|
|
if [[ "$installSuccess" -eq 0 ]]; then |
|
|
Write-PipelineTelemetryError -category 'InitializeToolset' "Failed to install dotnet SDK from any of the specified locations." |
|
|
Write-PipelineTelemetryError -category 'InitializeToolset' "Failed to install $dotnetVersionLabel from any of the specified locations." |
|
|
ExitWithExitCode 1 |
|
|
ExitWithExitCode 1 |
|
|
fi |
|
|
fi |
|
|
} |
|
|
} |
|
|
|