Skip to content

Sonarscan DotNet

Sonarscan DotNet #606

# This is a basic workflow to help you get started with Actions
name: Sonarscan DotNet
# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches: [ master ]
paths-ignore:
- 'doc/**'
- README.md
pull_request:
branches: [ master ]
paths-ignore:
- 'doc/**'
- README.md
schedule:
- cron: '10 1 * * 0'
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
with:
fetch-depth: '0'
# Runs a single command using the runners shell
- name: SonarScanner for .NET 8 with pull request decoration support
uses: highbyte/sonarscan-dotnet@v2.3.0
with:
# The key of the SonarQube project
sonarProjectKey: highbyte_dotnet-6502
# The name of the SonarQube project
sonarProjectName: dotnet-6502
# The name of the SonarQube organization in SonarCloud. For hosted SonarQube, skip this setting.
sonarOrganization: highbyte
# Optional command run before the 'dotnet build'
#dotnetPreBuildCmd: dotnet workload install wasm-tools
# Optional command arguments to 'dotnet build'
dotnetBuildArguments: ./tests/Highbyte.DotNet6502.Tests
# Optional command arguments to dotnet test
dotnetTestArguments: ./tests/Highbyte.DotNet6502.Tests --filter TestType!=Integration --logger trx --collect:"XPlat Code Coverage" -- DataCollectionRunSettings.DataCollectors.DataCollector.Configuration.Format=opencover
# Optional extra command arguments the the SonarScanner 'begin' command
sonarBeginArguments: /d:sonar.cs.opencover.reportsPaths="**/TestResults/**/coverage.opencover.xml" -d:sonar.cs.vstest.reportsPaths="**/TestResults/*.trx" -d:sonar.coverage.exclusions="/**/samples/**/*.*,/**/apps/*.*,/**/Highbyte.DotNet6502.Impl.*/**/*.*,/**/Highbyte.DotNet6502.Systems/**/*.*"
env:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}