]> git.gsnw.org Git - fping.git/commitdiff
Implement coverity scan with GitHub Action
authorDavid Schweikert <david@schweikert.ch>
Fri, 2 Jan 2026 07:24:37 +0000 (08:24 +0100)
committerDavid Schweikert <david@schweikert.ch>
Fri, 2 Jan 2026 07:29:36 +0000 (08:29 +0100)
.github/workflows/coverity.yml [new file with mode: 0644]
ci/deploy-coverity.sh

diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml
new file mode 100644 (file)
index 0000000..9fc3264
--- /dev/null
@@ -0,0 +1,24 @@
+name: Coverity Scan
+
+on:
+  schedule:
+    - cron: '0 0 * * 1' # Every Monday at 00:00 UTC
+  workflow_dispatch:
+
+jobs:
+  coverity:
+    runs-on: ubuntu-22.04
+    steps:
+      - name: Checkout repository
+        uses: actions/checkout@v4
+
+      - name: Install dependencies
+        run: |
+          sudo apt-get update
+          sudo apt-get install -y build-essential autotools-dev automake curl git libcap2-bin libtest-command-perl
+
+      - name: Run Coverity Scan
+        env:
+          COVERITY_SCAN_TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
+        run: |
+          ci/deploy-coverity.sh
index b009d2fd42c947056f8d23a5fa150c1f2d6aff2c..da7b7891afedd953ad40d42b496945aedb01b3ef 100755 (executable)
@@ -17,9 +17,16 @@ tar xfz /tmp/cov-analysis-linux64.tgz
 ./configure --enable-ipv4 --enable-ipv6 --enable-safe-limits --prefix=/opt/fping
 cov-analysis-linux64-*/bin/cov-build --dir cov-int make -j4
 tar cfz cov-int.tar.gz cov-int
+
+if [ -n "$GITHUB_RUN_ID" ]; then
+    BUILD_ID="$GITHUB_RUN_ID"
+else
+    BUILD_ID="manual"
+fi
+
 curl https://scan.coverity.com/builds?project=$COVERITY_SCAN_PROJECT_NAME \
     --form token=$COVERITY_SCAN_TOKEN \
     --form email=$COVERITY_SCAN_EMAIL \
     --form file=@cov-int.tar.gz \
     --form version="`git rev-parse --short HEAD`" \
-    --form description="`git rev-parse --short HEAD` / $TRAVIS_BUILD_ID "
+    --form description="`git rev-parse --short HEAD` / $BUILD_ID "