Skip to content

Commit

Permalink
Update to latest SonarQube scanner version (#469)
Browse files Browse the repository at this point in the history
* Run only on push to master
  • Loading branch information
swebb2066 authored Feb 1, 2025
1 parent 00cfd91 commit 24de478
Showing 1 changed file with 26 additions and 31 deletions.
57 changes: 26 additions & 31 deletions .github/workflows/sonarcloud.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,6 @@ on:
push:
branches:
- master
- next_stable
- sonar*
# pull_request:
# types: [opened, synchronize, reopened]

Expand All @@ -28,7 +26,6 @@ jobs:
name: Build
runs-on: ubuntu-latest
env:
SONAR_SCANNER_VERSION: 5.0.1.3006
SONAR_SERVER_URL: "https://sonarcloud.io"
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
steps:
Expand Down Expand Up @@ -57,29 +54,15 @@ jobs:
sudo apt-get update
sudo apt-get install -y libapr1-dev libaprutil1-dev
- name: Download and set up sonar-scanner
- name: Install Build Wrapper
uses: SonarSource/sonarqube-scan-action/[email protected]
env:
SONAR_SCANNER_DOWNLOAD_URL: https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-${{ env.SONAR_SCANNER_VERSION }}-linux.zip
run: |
mkdir -p $HOME/.sonar
curl -sSLo $HOME/.sonar/sonar-scanner.zip ${{ env.SONAR_SCANNER_DOWNLOAD_URL }}
unzip -o $HOME/.sonar/sonar-scanner.zip -d $HOME/.sonar/
echo "$HOME/.sonar/sonar-scanner-${{ env.SONAR_SCANNER_VERSION }}-linux/bin" >> $GITHUB_PATH
- name: Download and set up build-wrapper
env:
BUILD_WRAPPER_DOWNLOAD_URL: ${{ env.SONAR_SERVER_URL }}/static/cpp/build-wrapper-linux-x86.zip
run: |
curl -sSLo $HOME/.sonar/build-wrapper-linux-x86.zip ${{ env.BUILD_WRAPPER_DOWNLOAD_URL }}
unzip -o $HOME/.sonar/build-wrapper-linux-x86.zip -d $HOME/.sonar/
echo "$HOME/.sonar/build-wrapper-linux-x86" >> $GITHUB_PATH
SONAR_HOST_URL: ${{ env.SONAR_SERVER_URL }}

- name: Run build-wrapper
run: |
cd main
mkdir build
cmake -DBUILD_TESTING=on -DENABLE_COVERAGE=on -S . -B build
build-wrapper-linux-x86-64 --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} cmake --build build/ --config Release
cmake -DBUILD_TESTING=on -DENABLE_COVERAGE=on -S main -B main/build
build-wrapper-linux-x86-64 --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} cmake --build main/build/ --config Release
- name: Run tests to generate coverage statistics
run: |
Expand All @@ -88,17 +71,29 @@ jobs:
- name: Collect coverage into one XML report
run: |
cd main/build/src/main/cpp
cd main
BaseDir=$(pwd)
cd build/src/main/cpp
gcovr --version
gcovr --sonarqube -r ../../../../ --verbose --gcov-ignore-parse-errors --exclude '../../../../src/test/' --exclude '../../../../src/examples' -o ../../../coverage.xml
gcovr --sonarqube \
-r "$BaseDir" \
--exclude "$BaseDir/src/test/" \
--exclude "$BaseDir/src/examples/" \
--exclude "$BaseDir/src/fuzzers/" \
--verbose --gcov-ignore-parse-errors \
-o "$BaseDir/build/coverage.xml"
- name: Run sonar-scanner
- name: SonarQube Scan
uses: SonarSource/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONARCLOUD_TOKEN }}
run: |
cd main
sonar-scanner \
--define sonar.host.url="${{ env.SONAR_SERVER_URL }}" \
--define sonar.cfamily.build-wrapper-output="${{ env.BUILD_WRAPPER_OUT_DIR }}" \
SONAR_HOST_URL: ${{ env.SONAR_SERVER_URL }}
SONAR_ROOT_CERT: ${{ secrets.SONAR_ROOT_CERT }}
with:
projectBaseDir: main
# Consult https://docs.sonarsource.com/sonarqube-server/latest/analyzing-source-code/scanners/sonarscanner/ for more information and options
args: >
--define sonar.host.url="${{ env.SONAR_SERVER_URL }}"
--define sonar.cfamily.build-wrapper-output="${{ env.BUILD_WRAPPER_OUT_DIR }}"
--define sonar.coverageReportPaths=build/coverage.xml

0 comments on commit 24de478

Please sign in to comment.