aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/coverity.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/coverity.yml')
-rw-r--r--.github/workflows/coverity.yml39
1 files changed, 39 insertions, 0 deletions
diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml
new file mode 100644
index 0000000..b5496f5
--- /dev/null
+++ b/.github/workflows/coverity.yml
@@ -0,0 +1,39 @@
+name: Coverity Scan
+
+on:
+ push:
+ branches:
+ - coverity_scan
+ schedule:
+ - cron: '30 0 * * *'
+
+jobs:
+ submit:
+ name: Submit
+ runs-on: ubuntu-20.04
+ steps:
+ - name: Check out code
+ uses: actions/checkout@v2
+ - name: Download Coverity Scan
+ run: |
+ curl --form token=${{ secrets.COVERITY_SCAN_TOKEN }} \
+ --form project=${{ github.repository }} \
+ --output coverity.tar.gz \
+ https://scan.coverity.com/download/cxx/linux64
+ mkdir -p /opt/coverity
+ sudo tar xvzf coverity.tar.gz --strip 1 --directory /opt/coverity
+ - name: Build via Coverity Scan
+ run: |
+ make -C src bin/deps
+ /opt/coverity/bin/cov-build --dir cov-int make -C src bin/blib.a
+ - name: Create submission
+ run : |
+ tar cvzf cov-int.tar.gz cov-int
+ - name: Submit to Coverity Scan
+ run: |
+ curl --form token=${{ secrets.COVERITY_SCAN_TOKEN }} \
+ --form email=${{ secrets.COVERITY_SCAN_EMAIL }} \
+ --form file=@cov-int.tar.gz \
+ --form version=${{ github.sha }} \
+ --form description=${{ github.ref }} \
+ https://scan.coverity.com/builds?project=${{ github.repository }}