summaryrefslogtreecommitdiffstats
path: root/.github/workflows/coverity.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/coverity.yml')
-rw-r--r--.github/workflows/coverity.yml51
1 files changed, 51 insertions, 0 deletions
diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml
new file mode 100644
index 0000000..e99308d
--- /dev/null
+++ b/.github/workflows/coverity.yml
@@ -0,0 +1,51 @@
+name: Run coverity scan
+on:
+ workflow_dispatch:
+
+ schedule:
+ - cron: '3 8 * * *' # Daily at 08:03 UTC
+
+jobs:
+ Coverity:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Install packages
+ run: |
+ sudo apt-get update
+ sudo apt-get install -y autoconf automake autopoint autotools-dev \
+ gettext libdbus-1-dev gir1.2-gtk-3.0 libgtk-3-dev \
+ libgirepository1.0-dev libmagick++-dev libqt5x11extras5-dev \
+ libv4l-dev libx11-dev openjdk-8-jdk-headless perl \
+ pkg-config python3-minimal python3-dev python3 python3-gi \
+ qt5-default xmlto
+ - name: Download Coverity Build Tool
+ env:
+ TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
+ run: |
+ wget -q https://scan.coverity.com/download/cxx/linux64 \
+ --post-data "token=$TOKEN&project=ZBar" \
+ -O cov-analysis-linux64.tar.gz
+ mkdir cov-analysis-linux64
+ tar xzf cov-analysis-linux64.tar.gz --strip 1 -C cov-analysis-linux64
+ - name: Fixed world writable dirs
+ run: |
+ chmod go-w $HOME
+ sudo chmod -R go-w /usr/share
+ - name: Prepare Coverity
+ run: |
+ autoreconf -vfi
+ ./configure
+ export PATH=${PWD}/cov-analysis-linux64/bin:$PATH
+ cov-build --dir cov-int make
+ - name: Submit the result to Coverity Scan
+ env:
+ TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
+ run: |
+ tar czvf zbar.tgz cov-int
+ curl --form token=$TOKEN \
+ --form email=mchehab@kernel.org \
+ --form file=@zbar.tgz \
+ --form version=trunk \
+ --form description="Zbar-git-$(git log -1 --pretty='%h')" \
+ https://scan.coverity.com/builds?project=ZBar