summaryrefslogtreecommitdiff
path: root/.github/workflows/coverity.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/coverity.yml')
-rw-r--r--.github/workflows/coverity.yml43
1 files changed, 43 insertions, 0 deletions
diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml
new file mode 100644
index 0000000..d83aa9f
--- /dev/null
+++ b/.github/workflows/coverity.yml
@@ -0,0 +1,43 @@
1name: Coverity scan
2on:
3 schedule:
4 - cron: '0 18 * * 1' # Weekly at 18:00 UTC on Mondays
5
6jobs:
7 latest:
8 runs-on: ubuntu-latest
9 container: debian:stable
10 steps:
11 - name: Checkout code
12 uses: actions/checkout@v2
13 - name: Install dependencies
14 run: |
15 apt update
16 DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends php-dev curl ca-certificates make gcc
17 - name: Remove php8 tests on php7
18 run: rm -rf src/tests/*php8*/
19 - name: Download Coverity Build Tool
20 run: |
21 curl https://scan.coverity.com/download/linux64 --form token=$TOKEN --form project=jvoisin/snuffleupagus -o cov-analysis-linux64.tar.gz
22 mkdir cov-analysis-linux64
23 tar xzf cov-analysis-linux64.tar.gz --strip-components=1 -C cov-analysis-linux64
24 env:
25 TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
26 - name: Configure
27 run: cd src; phpize; ./configure --enable-snuffleupagus; cd -
28 - name: Build with cov-build
29 run: ./cov-analysis-linux64/bin/cov-build --dir cov-int make compile_debug
30 - name: Submit the result to Coverity Scan
31 run: |
32 tar czf snuffleupagus.tgz cov-int
33 curl \
34 --form project=jvoisin/snuffleupagus \
35 --form token=$TOKEN \
36 --form file=@snuffleupagus.tgz \
37 --form version=master \
38 --form email=julien.voisin+coverity@dustri.org \
39 --form description=master \
40 https://scan.coverity.com/builds?project=jvoisin/snuffleupagus
41 env:
42 TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
43