Update Roslyn and .NET SDK versions #780
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: 'Build' | |
env: | |
DotNetVersion: "9.0.100-preview.1.24101.2" | |
DotNetVersion2: "8.0.201" | |
DotNetVersion3: "7.0.406" | |
DotNetVersion4: "6.0.203" # This is the last version Mono supports. It is used for our Mono CI tests. | |
NuGetVersion: "6.5.0" | |
MonoVersion: "6.12.0" | |
Artifacts: ${{ github.workspace }}/artifacts/ | |
Coverage: ${{ github.workspace }}/coverage/ | |
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: "true" | |
CLR_OPENSSL_VERSION_OVERRIDE: "1.1" | |
defaults: | |
run: | |
shell: pwsh | |
on: | |
pull_request: | |
branches: | |
- master | |
- feature/* | |
tags: | |
- '*' | |
workflow_dispatch: | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-22.04, windows-2022, macos-13] | |
name: 'Build' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
with: | |
clean: 'false' | |
fetch-depth: '0' | |
# TODO: Need to figure out the correct way to install mono on linux / mac | |
# Currently the latest image has mono 6.12 | |
# https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu1804-README.md | |
# - name: 🔨 Use Mono ${{ env.MonoVersion }} SDK | |
# uses: maxim-lobanov/setup-xamarin@v1 | |
# with: | |
# mono-version: ${{ env.MonoVersion }} | |
- name: Setup NuGet.exe | |
uses: nuget/setup-nuget@v1 | |
with: | |
nuget-version: ${{ env.NuGetVersion }} | |
- name: 🔨 Use .NET Core SDKs | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: | | |
${{ env.DotNetVersion4 }} | |
${{ env.DotNetVersion3 }} | |
${{ env.DotNetVersion2 }} | |
${{ env.DotNetVersion }} | |
- name: 🎁 dotnet tool restore | |
run: | | |
dotnet tool restore | |
- name: 🎁 nuget install | |
run: | | |
nuget install tools/packages.config -ExcludeVersion -OutputDirectory tools | |
- name: 🍰 Run Cake | |
run: | | |
dotnet cake --configuration=Release --verbosity=Verbose --target=CI --publish-all --archive | |
- name: ⬆ Publish Logs | |
uses: actions/upload-artifact@v2 | |
continue-on-error: true | |
if: ${{ always() }} | |
with: | |
name: 'logs - ${{ github.workflow }} ${{ matrix.os }}' | |
path: '${{ env.Artifacts }}/logs/' | |
- name: ⬆ Publish Packages | |
uses: actions/upload-artifact@v2 | |
continue-on-error: true | |
if: ${{ always() }} | |
with: | |
name: 'packages' | |
path: '${{ env.Artifacts }}/package/' | |
- name: ⬆ Publish Deployment | |
uses: actions/upload-artifact@v2 | |
continue-on-error: true | |
if: ${{ always() }} | |
with: | |
name: 'deployment' | |
path: '${{ env.Artifacts }}/deployment/' | |
- name: ⬆ Publish NuGet | |
uses: actions/upload-artifact@v2 | |
continue-on-error: true | |
if: ${{ always() }} | |
with: | |
name: 'nuget' | |
path: '${{ env.Artifacts }}/nuget/' | |
- name: ⬆ Publish Scripts | |
uses: actions/upload-artifact@v2 | |
continue-on-error: true | |
if: ${{ always() }} | |
with: | |
name: 'scripts - ${{ matrix.os }}' | |
path: '${{ env.Artifacts }}/scripts/' |