aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/coverity-scan.yml
diff options
context:
space:
mode:
authorMarc André Tanner <mat@brain-dump.org>2020-02-20 08:06:50 +0100
committerMarc André Tanner <mat@brain-dump.org>2020-02-20 13:50:07 +0100
commitd2407f9ebc089e11eb12054f614a37ba6dbcb1ef (patch)
treeba358f6b61dd5c440687e4bd21397ed92d7645a3 /.github/workflows/coverity-scan.yml
parent2a4a9eeea4e1930ac2be2499408f9b06de55747d (diff)
downloadvis-d2407f9ebc089e11eb12054f614a37ba6dbcb1ef.tar.gz
vis-d2407f9ebc089e11eb12054f614a37ba6dbcb1ef.tar.xz
ci: add periodical coverity scan check
Diffstat (limited to '.github/workflows/coverity-scan.yml')
-rw-r--r--.github/workflows/coverity-scan.yml53
1 files changed, 53 insertions, 0 deletions
diff --git a/.github/workflows/coverity-scan.yml b/.github/workflows/coverity-scan.yml
new file mode 100644
index 0000000..3a58aa3
--- /dev/null
+++ b/.github/workflows/coverity-scan.yml
@@ -0,0 +1,53 @@
+name: Coverity Scan
+
+on:
+ schedule:
+ - cron: '0 0 * * 0' # once a week
+
+jobs:
+ scan:
+ runs-on: ubuntu-latest
+ steps:
+
+ - name: Checkout
+ uses: actions/checkout@v2
+
+ - name: Dependency
+ run: |
+ sudo apt install \
+ libacl1-dev \
+ liblua5.3-dev \
+ libncursesw5-dev \
+ libselinux1-dev \
+ libtermkey-dev \
+ libtre-dev
+
+ - name: Download Coverity Build Tool
+ run: |
+ wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=$TOKEN&project=martanne/vis" -O cov-analysis-linux64.tar.gz
+ mkdir cov-analysis-linux64
+ tar xzf cov-analysis-linux64.tar.gz --strip 1 -C cov-analysis-linux64
+ env:
+ TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
+
+ - name: Configure
+ run: ./configure
+
+ - name: Build with cov-build
+ run: |
+ export PATH=$(pwd)/cov-analysis-linux64/bin:$PATH
+ cov-build --dir cov-int make
+
+ - name: Submit the result to Coverity Scan
+ run: |
+ tar czvf vis.tgz cov-int
+ curl \
+ --form project=martanne/vis \
+ --form token=$TOKEN \
+ --form email=mat@brain-dump.org \
+ --form file=@vis.tgz \
+ --form version=trunk \
+ --form description="`./vis -v`" \
+ https://scan.coverity.com/builds?project=martanne/vis
+ env:
+ TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}