name: Code Coverage on: workflow_call: permissions: contents: read jobs: publish-coverage: runs-on: ubuntu-latest steps: - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 - name: Setup .NET uses: actions/setup-dotnet@a98b56852c35b8e3190ac28c8c2271da59106c68 # v6.0.0 with: dotnet-version: | 10.0.x 9.0.x - name: Download test results uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: pattern: testresults-* - name: Combine coverage reports uses: danielpalme/ReportGenerator-GitHub-Action@049f7ec958c672fd31d5cc1cb01622dc8d2e23ab # 5.5.10 with: reports: "**/*.cobertura.xml" targetdir: "${{ github.workspace }}/report" reporttypes: "HtmlSummary;Cobertura;MarkdownSummary;MarkdownSummaryGithub" verbosity: "Info" title: "Code Coverage" tag: "${{ github.run_number }}_${{ github.run_id }}" customSettings: "" toolpath: "reportgeneratortool" - name: Upload combined coverage XML uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: coverage path: ${{ github.workspace }}/report retention-days: 7 - name: Publish code coverage report uses: irongut/CodeCoverageSummary@51cc3a756ddcd398d447c044c02cb6aa83fdae95 # v1.3.0 with: filename: "report/Cobertura.xml" badge: true fail_below_min: true format: markdown hide_branch_rate: false hide_complexity: false indicators: true output: both thresholds: "60 80" - name: Upload combined coverage markdown uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: coverage-markdown path: ${{ github.workspace }}/code-coverage-results.md retention-days: 7 - name: Coverage on step summary if: always() run: cat "${{ github.workspace }}/report/SummaryGithub.md" >> $GITHUB_STEP_SUMMARY