fix(jobs): report a timed-out source as Failed, keep a deadline as Cancelled #611
Workflow file for this run
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: CI | |
| on: | |
| push: | |
| branches: [master] | |
| pull_request: | |
| branches: [master] | |
| permissions: | |
| contents: read | |
| # Cancel superseded runs for the same ref to save CI minutes. | |
| concurrency: | |
| group: ci-${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| name: build · test · format | |
| runs-on: ubuntu-latest | |
| env: | |
| DOTNET_NOLOGO: true | |
| DOTNET_CLI_TELEMETRY_OPTOUT: true | |
| DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true | |
| NUGET_PACKAGES: ${{ github.workspace }}/.nuget/packages | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - name: Setup .NET (8 + 9) | |
| uses: actions/setup-dotnet@v6 | |
| with: | |
| dotnet-version: | | |
| 8.0.x | |
| 9.0.x | |
| - name: Cache NuGet packages | |
| uses: actions/cache@v6 | |
| with: | |
| path: ${{ github.workspace }}/.nuget/packages | |
| key: ${{ runner.os }}-nuget-${{ hashFiles('**/Directory.Packages.props') }} | |
| restore-keys: | | |
| ${{ runner.os }}-nuget- | |
| - name: Restore | |
| run: dotnet restore NeoReports.sln | |
| - name: Build | |
| run: dotnet build NeoReports.sln --configuration Release --no-restore | |
| - name: Test | |
| env: | |
| # Fail (don't silently skip) the Testcontainers integration suites if Docker can't start. | |
| # GitHub-hosted Linux runners always have Docker, so a skip here would mean a broken image | |
| # or a Docker outage — which must not pass as green. Read by tests/Shared/DockerGate.cs. | |
| # Local `dotnet test` leaves the var unset and keeps skipping, so contributors without | |
| # Docker can still run the suite. | |
| NEOREPORTS_REQUIRE_DOCKER: "1" | |
| run: dotnet test NeoReports.sln --configuration Release --no-build --verbosity normal | |
| - name: Format (verify) | |
| run: dotnet format NeoReports.sln --verify-no-changes --no-restore |