diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index b05cb8447..93f2b26fd 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -13,6 +13,17 @@ jobs: - uses: actions/checkout@v2 with: fetch-depth: 0 + - name: Setup + run: | + sudo apt-get update && sudo apt-get install llvm gcovr gcov + - name: Run C tests + env: + CC: clang + CXX: clang++ + run: | + cmake -S c -B build -DCODE_COVERAGE=ON && + cmake -B build --target ccov-all-export -j 8 && + gcovr -j 8 --gcov-executable gcov --sonarqube build/code_coverage.xml --root c - name: SonarCloud Scan uses: sonarsource/sonarcloud-github-action@master env: @@ -26,3 +37,4 @@ jobs: -Dsonar.exclusions=java/** -Dsonar.verbose=true -Dsonar.c.file.suffixes=- -Dsonar.cpp.file.suffixes=- + -Dsonar.coverageReportPaths=build/code_coverage.xml