name: Coverity Scan on: push: branches: - 'dev' env: PROJECT_NAME: finit CONTACT_EMAIL: troglobit@gmail.com COVERITY_NAME: troglobit-finit COVERITY_PROJ: troglobit%2Ffinit jobs: coverity: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: actions/cache@v3 id: coverity-toolchain-cache with: path: cov-analysis-linux64 key: ${{ runner.os }}-coverity - name: Download Coverity Scan if: steps.coverity-toolchain-cache.outputs.cache-hit != 'true' env: TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }} run: | wget -q https://scan.coverity.com/download/cxx/linux64 \ --post-data "token=$TOKEN&project=${COVERITY_PROJ}" \ -O cov-analysis-linux64.tar.gz mkdir cov-analysis-linux64 tar xzf cov-analysis-linux64.tar.gz --strip 1 -C cov-analysis-linux64 - name: Install dependencies run: | sudo apt-get -y update sudo apt-get -y install pkg-config wget https://github.com/troglobit/libuev/releases/download/v2.4.0/libuev-2.4.0.tar.xz wget https://github.com/troglobit/libite/releases/download/v2.5.2/libite-2.5.2.tar.gz tar xf libuev-2.4.0.tar.xz tar xf libite-2.5.2.tar.gz (cd libuev-2.4.0 && ./configure --prefix=/usr && make && sudo make install-strip) (cd libite-2.5.2 && ./configure --prefix=/usr && make && sudo make install-strip) sudo ldconfig - name: Build run: | ./autogen.sh ./configure --prefix= --enable-x11-common-plugin --with-watchdog --with-keventd export PATH=`pwd`/cov-analysis-linux64/bin:$PATH cov-build --dir cov-int make - name: Submit result to Coverity Scan env: TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }} run: | tar czvf ${PROJECT_NAME}.tgz cov-int curl \ --form project=${COVERITY_NAME} \ --form token=$TOKEN \ --form email=${CONTACT_EMAIL} \ --form file=@${PROJECT_NAME}.tgz \ --form version=trunk \ --form description="${PROJECT_NAME} $(git rev-parse HEAD)" \ https://scan.coverity.com/builds?project=${COVERITY_PROJ}