From: David Schweikert Date: Fri, 2 Jan 2026 07:24:37 +0000 (+0100) Subject: Implement coverity scan with GitHub Action X-Git-Url: https://git.gsnw.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=685edae53cf22b54591b738cacf307fe8d67700f;p=fping.git Implement coverity scan with GitHub Action --- diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml new file mode 100644 index 0000000..9fc3264 --- /dev/null +++ b/.github/workflows/coverity.yml @@ -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 diff --git a/ci/deploy-coverity.sh b/ci/deploy-coverity.sh index b009d2f..da7b789 100755 --- a/ci/deploy-coverity.sh +++ b/ci/deploy-coverity.sh @@ -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 "