From 2d46ae2eccc4f0d52e85070f4393895deca46e82 Mon Sep 17 00:00:00 2001 From: Edgar Date: Sat, 26 Nov 2022 17:25:53 +0100 Subject: [PATCH] :tada: Added sonarcloud scan --- .github/workflows/sonarcloud.yml | 50 ++++++++++++++++++++++++++++++++ sonar-project.properties | 14 +++++++++ 2 files changed, 64 insertions(+) create mode 100644 .github/workflows/sonarcloud.yml create mode 100644 sonar-project.properties diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml new file mode 100644 index 0000000000..7f3346757e --- /dev/null +++ b/.github/workflows/sonarcloud.yml @@ -0,0 +1,50 @@ +name: SonarCloud scan +on: + push: + branches: + - master + - sonarcloud + pull_request: + types: [opened, synchronize, reopened] +jobs: + build: + name: sonarcloud scan + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install sonar-scanner and build-wrapper + uses: sonarsource/sonarcloud-github-c-cpp@v2 + id: sonarscan + + - name: Cache conan + uses: actions/cache@v4 + with: + key: conan-ubuntu-${{ hashFiles('conanfile.py') }} + path: ~/.conan2/ + + - name: Install dependencies + run: | + curl "https://raw.githubusercontent.com/AnotherFoxGuy/ci-scripts/main/install-conan.sh" | sudo bash + sudo apt-get update + wget -nv https://cdn.anotherfoxguy.com/sonar-scanner/ror -O run-sonar-scanner + sudo chmod 777 run-sonar-scanner + + - name: Configure + run: | + conan profile detect --force + echo "tools.system.package_manager:mode = install" > ~/.conan2/global.conf + echo "tools.system.package_manager:sudo = True" >> ~/.conan2/global.conf + conan remote add ror-conan https://git.anotherfoxguy.com/api/packages/rorbot/conan -f + conan install . -s build_type=Release -b missing -pr:b=default + conan cache clean "*" -sbd + cmake --preset conan-release -DCMAKE_EXPORT_COMPILE_COMMANDS=ON + shell: bash + + - name: Run sonar-scanner + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SONAR_SCANNER_EXE: ${{ steps.sonarscan.outputs.sonar-scanner-binary }} + run: ./run-sonar-scanner \ No newline at end of file diff --git a/sonar-project.properties b/sonar-project.properties new file mode 100644 index 0000000000..26f9ab3d6f --- /dev/null +++ b/sonar-project.properties @@ -0,0 +1,14 @@ +sonar.host.url=https://sonarcloud.io +sonar.projectKey=rigs-of-rods +sonar.organization=anotherfoxguy-github + +# This is the name and version displayed in the SonarCloud UI. +sonar.projectName=rigs-of-rods +sonar.projectVersion=2022.12 + +# Path is relative to the sonar-project.properties file. Replace "\" by "/" on Windows. +sonar.sources=source + +# Encoding of the source code. Default is default system encoding +#sonar.sourceEncoding=UTF-8 +sonar.cfamily.compile-commands=compile_commands.json \ No newline at end of file