diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml index 1be01700..a489a879 100644 --- a/.github/workflows/package.yml +++ b/.github/workflows/package.yml @@ -17,7 +17,8 @@ jobs: - uses: actions/setup-dotnet@v3 with: - dotnet-version: '8.0.x' # SDK Version to use. + #dotnet-version: '8.0.x' # SDK Version to use. + global-json-file: 'global.json' source-url: https://nuget.pkg.github.com/microsoft/powerbi-powershell/index.json env: NUGET_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 06f5ad48..34bffba5 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -30,7 +30,8 @@ jobs: uses: actions/setup-dotnet@v3 with: # Semantic version range syntax or exact version of a dotnet version - dotnet-version: '8.x' + #dotnet-version: '8.x' + global-json-file: 'global.json' - uses: actions/cache@v3 with: diff --git a/global.json b/global.json index 528106ca..c3dacd48 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,7 @@ { "sdk": { - "version": "8.0.303" + "version": "8.0.402", + "rollForward": "latestFeature" }, "msbuild-sdks": { "Microsoft.Build.Traversal": "4.1.0", diff --git a/scripts/GetNetstandardAssembly.ps1 b/scripts/GetNetstandardAssembly.ps1 index efa8bf68..43325287 100644 --- a/scripts/GetNetstandardAssembly.ps1 +++ b/scripts/GetNetstandardAssembly.ps1 @@ -22,23 +22,32 @@ param [string] $SdkInstallDir = ($IsLinux) ? '/usr/share/dotnet/sdk' : 'C:\Program Files\dotnet\sdk\', # The installed .NET SDK must have the same major and minor number and a lower build\patch number. - [ValidateNotNullOrEmpty()] - [string] $MajorMinorSDKVersionCheck = '8.0.202' + [string] $MajorMinorSDKVersionCheck = '8.0.900' ) -# .NET CORE 2.0 Downloads - https://www.microsoft.com/net/download/dotnet-core/2.0 -# .NET CORE 2.1 Downloads - https://www.microsoft.com/net/download/dotnet-core/2.1 -$versionCheck = [version]$MajorMinorSDKVersionCheck $sdkVersions = Get-ChildItem -Path $SdkInstallDir -Directory | Where-Object Name -Match '\d+\.\d+\.\d+$' | ForEach-Object { $version = [version]$_.BaseName $_ | Add-Member -Name SDKVersion -MemberType NoteProperty -Value $version $_ } -$sdkDir = $sdkVersions | Where-Object { $_.SDKVersion.Major -eq $versionCheck.Major -and $_.SDKVersion.Minor -eq $versionCheck.Minor -and $_.SDKVersion.Build -lt $versionCheck.Build } | Sort-Object SDKVersion -Descending | Select-Object -First 1 + +if ($MajorMinorSDKVersionCheck) { + Write-Verbose "Checking for SDK version less than: $MajorMinorSDKVersionCheck" + $versionCheck = [version]$MajorMinorSDKVersionCheck + $sdkDir = $sdkVersions | Where-Object { $_.SDKVersion.Major -eq $versionCheck.Major -and $_.SDKVersion.Minor -eq $versionCheck.Minor -and $_.SDKVersion.Build -lt $versionCheck.Build } | Sort-Object SDKVersion -Descending | Select-Object -First 1 + + if(!$sdkDir) { + throw "Unable to find SDK version (less than $MajorMinorSDKVersionCheck) under: $SdkInstallDir`nVersions available: $(($sdkVersions | % { $_.BaseName }) -join ', ' )" + } +} +else { + Write-Verbose "Checking for latest SDK version" + $sdkDir = $sdkVersions | Sort-Object SDKVersion -Descending | Select-Object -First 1 +} if(!$sdkDir) { - throw "Unable to find SDK version (less than $MajorMinorSDKVersionCheck) under: $SdkInstallDir`nVersions available: $(($sdkVersions | % { $_.BaseName }) -join ', ' )" + throw "Unable to find SDK version under: $SdkInstallDir" } Write-Verbose "Using SDK: $($sdkDir.FullName)"