Castle.Services.Logging.EventLogIntegration for Windows EventLog #203
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 | |
on: [ push, pull_request ] | |
env: | |
MONO_TAG: "6.0.0.334" | |
jobs: | |
build-and-test: | |
name: Build and test | |
strategy: | |
matrix: | |
os: [ ubuntu-latest, windows-latest, macos-13 ] | |
# NOTE: If we wanted to use `macos-latest` we would have to move the .NET Core 2.1 and 3.1 builds and test runs | |
# to a separate job. This is because `macos-14` and newer are ARM-only and those target frameworks don't support | |
# that architecture, causing `dotnet` to want to fall back to X64. However, once we install .NET 6 or newer, | |
# we get a toolchain that only has ARM support and no X64 support, so that fallback will no longer work. | |
# Using `macos-13` is (for the time being, while still available) the simpler solution as it is not ARM-based yet, | |
# so there won't be any architecture mismatch in the first place. | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Install .NET 6.0 | |
uses: actions/setup-dotnet@v4 | |
with: | |
dotnet-version: 6.0.x | |
# Building requires an up-to-date .NET SDK. | |
- name: Install .NET 7.0 | |
uses: actions/setup-dotnet@v4 | |
with: | |
dotnet-version: 7.0.x | |
# ----- | |
# Build | |
# ----- | |
- name: Restore NuGet packages | |
run: dotnet restore | |
- name: Build all targets | |
run: dotnet build -c Release --no-restore | |
# ---- | |
# Test | |
# ---- | |
- name: Test on .NET 6.0 | |
run: dotnet test -c Release -f net6.0 --no-build --no-restore -l "console;verbosity=detailed" | |
- name: Test on .NET Framework 4.6.2 (Windows only) | |
if: matrix.os == 'windows-latest' | |
run: dotnet test -c Release -f net462 --no-build --no-restore -l "console;verbosity=detailed" | |
- name: Test on .NET Framework 4.6.2 using Mono (Linux only) | |
if: matrix.os == 'ubuntu-latest' | |
run: | | |
docker run --rm -v "$PWD":'/project' -w='/project' mono:$MONO_TAG bash -c 'mono ./src/Castle.Core.Tests/bin/Release/net462/Castle.Core.Tests.exe && mono ./src/Castle.Core.Tests.WeakNamed/bin/Release/net462/Castle.Core.Tests.WeakNamed.exe' |