Skip to content

Add coverage report as check run #5

Add coverage report as check run

Add coverage report as check run #5

name: "Build"
on:
push:
branches:
- main
paths-ignore:
- "**/*.md"
- "**/*.gitignore"
- "**/*.gitattributes"
pull_request:
branches:
- main
paths-ignore:
- "**/*.md"
- "**/*.gitignore"
- "**/*.gitattributes"
workflow_dispatch:
permissions:
contents: read
actions: read
checks: write
jobs:
build:
name: Build
runs-on: ubuntu-latest
env:
DOTNET_CLI_TELEMETRY_OPTOUT: 1
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1
DOTNET_NOLOGO: true
DOTNET_GENERATE_ASPNET_CERTIFICATE: false
DOTNET_ADD_GLOBAL_TOOLS_TO_PATH: false
DOTNET_MULTILEVEL_LOOKUP: 0
DOTNET_SYSTEM_CONSOLE_ALLOW_ANSI_COLOR_REDIRECTION: true
TERM: xterm
steps:
- uses: actions/checkout@v4
- name: Setup .NET SDK
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.302
- name: Restore
run: dotnet restore
- name: Build
run: dotnet build --configuration Release --no-restore
- name: Test
run: dotnet test --logger trx --collect:"XPlat Code Coverage"
- name: Test Report
uses: dorny/test-reporter@v1
if: success() || failure()
with:
name: Tests
path: WebApi.Tests/TestResults/*.trx
reporter: dotnet-trx
- name: Restore local tools
run: dotnet tool restore
- name: Generate coverage report
run: dotnet reportgenerator -reports:WebApi.Tests/TestResults/*/coverage.cobertura.xml -targetdir:./coverage -reporttypes:MarkdownSummary
- name: Create check with coverage report
uses: LouisBrunner/checks-action@v2.0.0
if: always()
with:
token: ${{ secrets.GITHUB_TOKEN }}
name: Code coverage
conclusion: ${{ job.status }}
output: '{"summary":"Code coverage"}'
output_text_description_file: coverage/Summary.md