Skip to content

fix(ci): use coverlet runsettings for coverage #476

fix(ci): use coverlet runsettings for coverage

fix(ci): use coverlet runsettings for coverage #476

Workflow file for this run

name: Build
on:
push:
pull_request:
types: [opened, synchronize, reopened]
jobs:
build:
name: Build
runs-on: windows-latest
steps:
- name: Set up JDK 17
uses: actions/setup-java@v5
with:
distribution: temurin
java-version: "17"
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Cache SonarQube packages
uses: actions/cache@v4
with:
path: ~\.sonar\cache
key: ${{ runner.os }}-sonar
restore-keys: ${{ runner.os }}-sonar
- name: Cache SonarQube scanner
id: cache-sonar-scanner
uses: actions/cache@v4
with:
path: .\.sonar\scanner
key: ${{ runner.os }}-sonar-scanner
restore-keys: ${{ runner.os }}-sonar-scanner
- name: Install SonarQube scanner
if: steps.cache-sonar-scanner.outputs.cache-hit != 'true'
shell: pwsh
run: |
New-Item -Path .\.sonar\scanner -ItemType Directory -Force
dotnet tool update dotnet-sonarscanner --tool-path .\.sonar\scanner
- name: Start analyze
shell: pwsh
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: |
$ErrorActionPreference = "Stop"
$PSNativeCommandUseErrorActionPreference = $true
if ([string]::IsNullOrWhiteSpace($env:SONAR_TOKEN)) {
throw "SONAR_TOKEN is empty or unavailable"
}
.\.sonar\scanner\dotnet-sonarscanner begin `
/k:"danilrudin_Consyzer" `
/o:"danilrudin" `
/d:sonar.token="$env:SONAR_TOKEN" `
/d:sonar.cs.opencover.reportsPaths="**/TestResults/**/coverage.opencover.xml"
- name: Build
run: dotnet build --configuration Release
- name: Unit Tests Executing
run: >
dotnet test
--configuration Release
--settings coverlet.runsettings
--collect:"XPlat Code Coverage"
- name: End analyze
shell: pwsh
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: .\.sonar\scanner\dotnet-sonarscanner end /d:sonar.token="$env:SONAR_TOKEN"
- name: Publish
run: dotnet publish Consyzer/Consyzer.csproj -c Release -o _publish/Consyzer
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: Consyzer
path: _publish/Consyzer