Modernize dependency injection and JSON serialization #438
This file contains hidden or 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 Linux | |
| on: [push, pull_request] | |
| env: | |
| DOTNET_CLI_TELEMETRY_OPTOUT: 1 | |
| DOTNET_NOLOGO: 1 | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup .NET SDK | |
| uses: actions/setup-dotnet@v5 | |
| with: | |
| global-json-file: global.json | |
| - name: Build Reason | |
| run: "echo ref: ${{github.ref}} event: ${{github.event_name}}" | |
| - name: Build Version | |
| shell: bash | |
| run: | | |
| dotnet tool install --global minver-cli --version 6.0.0 | |
| version=$(minver --tag-prefix v) | |
| echo "MINVERVERSIONOVERRIDE=$version" >> $GITHUB_ENV | |
| - name: Build | |
| run: dotnet build --configuration Release Exceptionless.Net.NonWindows.slnx | |
| - name: Run Tests with Coverage | |
| run: dotnet test --configuration Release --no-build --collect:"XPlat Code Coverage" --results-directory artifacts/test-results Exceptionless.Net.NonWindows.slnx | |
| - name: Upload Coverage | |
| if: always() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: coverage-linux | |
| path: artifacts/test-results/**/coverage.cobertura.xml | |
| if-no-files-found: error | |
| - name: Pack Core for NativeAOT Test | |
| run: dotnet pack --configuration Release --no-build --output artifacts/aot-package -p:SolutionDir="$GITHUB_WORKSPACE/" src/Exceptionless/Exceptionless.csproj | |
| - name: NativeAOT Smoke Test | |
| run: | | |
| for framework in net8.0 net10.0; do | |
| dotnet publish --configuration Release --framework "$framework" --output "artifacts/aot-smoke/$framework" -p:ExceptionlessPackageVersion="$MINVERVERSIONOVERRIDE" -p:ExceptionlessPackageSource="$GITHUB_WORKSPACE/artifacts/aot-package" test/Exceptionless.PackageAotSmoke/Exceptionless.PackageAotSmoke.csproj | |
| "./artifacts/aot-smoke/$framework/Exceptionless.PackageAotSmoke" | |
| dotnet publish --configuration Release --framework "$framework" --output "artifacts/hosting-aot-smoke/$framework" test/Exceptionless.HostingAotSmoke/Exceptionless.HostingAotSmoke.csproj | |
| "./artifacts/hosting-aot-smoke/$framework/Exceptionless.HostingAotSmoke" | |
| done |