feat(otel): W3C traceparent transport-header propagation — .NET core … #22
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: [ main ] | |
| pull_request: | |
| permissions: | |
| contents: read | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: "8.0.x" | |
| - name: Restore | |
| run: dotnet restore | |
| # Build also runs the Roslyn analyzers (latest-recommended); warnings are | |
| # errors, so a static-analysis finding fails the build. | |
| - name: Build (static analysis) | |
| run: dotnet build -c Release --no-restore | |
| - name: Test with coverage gate (>=90% line) | |
| run: dotnet test -c Release /p:CollectCoverage=true /p:CoverletOutputFormat=cobertura /p:Threshold=90 /p:ThresholdType=line /p:ThresholdStat=total | |
| conformance: | |
| name: Conformance suite in sync | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Verify vendored conformance matches the canonical suite | |
| run: | | |
| git clone --depth 1 https://github.com/BabelQueue/conformance.git "$RUNNER_TEMP/conformance" | |
| diff -ru "$RUNNER_TEMP/conformance/manifest.json" "tests/BabelQueue.Core.Tests/conformance/manifest.json" | |
| diff -ru "$RUNNER_TEMP/conformance/fixtures" "tests/BabelQueue.Core.Tests/conformance/fixtures" | |
| diff -ru "$RUNNER_TEMP/conformance/schema" "tests/BabelQueue.Core.Tests/conformance/schema" | |
| echo "Vendored conformance is in sync with the canonical suite." | |
| ci-green: | |
| name: CI green | |
| runs-on: ubuntu-latest | |
| needs: [test, conformance] | |
| if: ${{ always() }} | |
| steps: | |
| - name: Fail if any required job did not pass | |
| run: | | |
| if ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }}; then | |
| echo "A required job failed or was cancelled." | |
| exit 1 | |
| fi |