Skip to content

Commit

Permalink
GitHubCI: add dotnet-only mac/win jobs
Browse files Browse the repository at this point in the history
In the same way we hacked/faked the uninstallation of dotnet
in "mono-only" build jobs, we hack the uninstallation of mono
now in MacOS and the uninstallation of MSBuild in Windows (as
GitHub bundles them by default in these CI runners).
  • Loading branch information
knocte committed Aug 12, 2023
1 parent 8591d4a commit bfee93f
Showing 1 changed file with 65 additions and 4 deletions.
69 changes: 65 additions & 4 deletions .github/workflows/CI.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ jobs:
find . -type f -name "*.fsx" | xargs -t -I {} dotnet fsxc {}
macOS--mono:
macOS--mono-only:
runs-on: macOS-latest
steps:
- uses: actions/checkout@v1
Expand All @@ -64,6 +64,29 @@ jobs:
- name: integration tests
run: make update-servers

macOS--dotnet-only:
runs-on: macOS-latest
steps:
- uses: actions/checkout@v1
with:
submodules: false
- name: HACK to emulate mono uninstall
run: sudo rm -f `which mono` && sudo rm -rf `which msbuild`
- name: configure
run: ./configure.sh
- name: build in DEBUG mode
run: make
- name: sanity check
run: make sanitycheck
- name: unit tests
run: make check
- name: build in STRICT mode
run: git clean -fdx && ./configure.sh && make strict
- name: build in RELEASE mode
run: git clean -fdx && ./configure.sh && make release
- name: integration tests
run: make update-servers

windows--dotnet6:
runs-on: windows-latest
steps:
Expand Down Expand Up @@ -98,7 +121,7 @@ jobs:
find . -type f -name "*.fsx" | xargs -t -I {} dotnet fsxc {}
windows--legacyFramework:
windows--legacyFramework-only:
runs-on: windows-2019
steps:
- uses: actions/checkout@v1
Expand All @@ -121,6 +144,42 @@ jobs:
- name: integration tests
run: .\make update-servers

windows--dotnet6-only:
runs-on: windows-latest
steps:
- uses: actions/checkout@v1
with:
submodules: false
- name: Setup .NET SDK 6.0.x
uses: actions/[email protected]
with:
dotnet-version: '6.0.113'
- name: HACK to emulate legacy .NETFramework uninstall
run: del $(& "${Env:ProgramFiles(x86)}\Microsoft Visual Studio\Installer\vswhere.exe" -find MSBuild\\**\\Bin\\MSBuild.exe)
- name: configure
run: .\configure.bat
- name: build in DEBUG mode
run: .\make.bat
- name: sanity check
run: .\make.bat sanitycheck
- name: unit tests
run: .\make.bat check
- name: re-build in STRICT mode
run: git clean -fdx && .\configure.bat && .\make.bat strict
- name: re-build in RELEASE mode
run: git clean -fdx && .\configure.bat && .\make.bat release
- name: integration tests
run: .\make update-servers
- name: compile .fsx scripts
shell: bash
run: |
dotnet new tool-manifest
# we need to install specific version because of this bug: https://github.com/dotnet/sdk/issues/24037
dotnet tool install fsxc --version 0.5.9.1
find . -type f -name "*.fsx" | xargs -t -I {} dotnet fsxc {}
linux22-github:
runs-on: ubuntu-22.04
steps:
Expand Down Expand Up @@ -517,9 +576,11 @@ jobs:
- linux20-vanilla--stockmono
- linux20-vanilla--newmono
- windows--dotnet6
- windows--legacyFramework
- windows--legacyFramework-only
- windows--dotnet6-only
- macOS--dotnet6-and-mono
- macOS--mono
- macOS--mono-only
- macOS--dotnet-only

steps:
- uses: actions/checkout@v1
Expand Down

0 comments on commit bfee93f

Please sign in to comment.