]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Add SonarCloud GitHub Action
authorOndřej Surý <ondrej@isc.org>
Fri, 24 Feb 2023 07:41:51 +0000 (08:41 +0100)
committerOndřej Surý <ondrej@isc.org>
Fri, 24 Feb 2023 08:53:41 +0000 (08:53 +0000)
Add new SonarCloud GitHub Action and configuration; something (maybe
the way the builds were submitted) has apparently changed and the
project got deleted and the analysis wasn't working.

.github/workflows/sonarcloud.yml [new file with mode: 0644]
.reuse/dep5
sonar-project.properties [new file with mode: 0644]

diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml
new file mode 100644 (file)
index 0000000..a87179a
--- /dev/null
@@ -0,0 +1,50 @@
+name: SonarCloud
+
+on:
+  push:
+    branches: [ "v9_16", "v9_18", "main" ]
+  schedule:
+    - cron: '39 8 * * 3'
+
+jobs:
+  build:
+    name: Build and analyze
+    runs-on: ubuntu-latest
+    permissions:
+      actions: read
+      contents: read
+      security-events: write
+
+    strategy:
+      fail-fast: false
+      matrix:
+        language: [ 'cpp' ]
+
+    env:
+      BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory
+
+    steps:
+    - name: Checkout repository
+      uses: actions/checkout@v3
+
+    - name: Install build dependencies
+      uses: awalsh128/cache-apt-pkgs-action@latest
+      with:
+        packages: libuv1-dev libssl-dev libnghttp2-dev libxml2-dev liblmdb-dev libjson-c-dev pkg-config autoconf automake autotools-dev libtool-bin libjemalloc-dev libedit-dev libcap-dev libidn2-dev libkrb5-dev libmaxminddb-dev zlib1g-dev python3-ply
+        version: 1.0
+
+    - name: Install sonar-scanner and build-wrapper
+      uses: SonarSource/sonarcloud-github-c-cpp@v1
+
+    - name: Run build-wrapper
+      run: |
+        autoreconf -fi
+        ./configure
+        build-wrapper-linux-x86-64 --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} make clean all
+
+    - name: Run sonar-scanner
+      env:
+        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+        SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
+      run: |
+        sonar-scanner --define sonar.cfamily.build-wrapper-output="${{ env.BUILD_WRAPPER_OUT_DIR }}"
index 7a929e4f65323ff00bc578b23f5fd6541249afde..d4072e91fd7e24467a0aee7e4dd92c21f1dacfb8 100644 (file)
@@ -168,6 +168,7 @@ Files: **/.clang-format
        doc/misc/options
        doc/misc/rndc.grammar
        tsan-suppressions.txt
+       sonar-project.properties
 Copyright: Internet Systems Consortium, Inc. ("ISC")
 License: CC0-1.0
 
diff --git a/sonar-project.properties b/sonar-project.properties
new file mode 100644 (file)
index 0000000..e88ed29
--- /dev/null
@@ -0,0 +1,2 @@
+sonar.projectKey=isc-projects_bind9
+sonar.organization=isc-projects