coverity-scan.yml 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. name: Coverity
  2. on:
  3. schedule:
  4. - cron: '0 10 * * 1' # Run every Monday at 00:10
  5. workflow_dispatch:
  6. jobs:
  7. scan:
  8. runs-on: ubuntu-18.04
  9. steps:
  10. - uses: actions/checkout@v2
  11. - name: Install dependencies
  12. run: |
  13. sudo apt-get update
  14. sudo apt-get install -y autoconf automake build-essential cmake gettext gperf libtool-bin locales ninja-build pkg-config unzip
  15. - name: Download Coverity
  16. run: |
  17. wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=$TOKEN&project=neovim%2Fneovim" -O coverity_tool.tgz
  18. mkdir cov-scan
  19. tar ax -f coverity_tool.tgz --strip-components=1 -C cov-scan
  20. env:
  21. TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
  22. - name: Build dependencies
  23. run: make deps
  24. - name: Build/scan neovim
  25. run: |
  26. env PATH=$(pwd)/cov-scan/bin:$PATH cov-build --dir cov-int make
  27. - name: Submit results
  28. run: |
  29. tar zcf cov-scan.tgz cov-int
  30. curl --form token=$TOKEN \
  31. --form email=$EMAIL \
  32. --form file=@cov-scan.tgz \
  33. --form version="$(git rev-parse HEAD)" \
  34. --form description="Weekly GHA scan" \
  35. 'https://scan.coverity.com/builds?project=neovim%2Fneovim'
  36. env:
  37. TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
  38. EMAIL: ${{ secrets.COVERITY_SCAN_EMAIL }}