mirror of
https://github.com/open-simh/simh.git
synced 2026-01-24 19:41:23 +00:00
60 lines
2.2 KiB
YAML
60 lines
2.2 KiB
YAML
name: Coverity Scan
|
|
on:
|
|
schedule:
|
|
- cron: '0 18 * * 2,4' # Bi-weekly at 18:00 UTC on Tuesday and Thursday
|
|
|
|
# Automatically cancel any previous workflow on new push.
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
latest:
|
|
runs-on: ubuntu-22.04
|
|
steps:
|
|
- name: Determine current repository
|
|
id: "determine-repo"
|
|
run: echo "repo=${GITHUB_REPOSITORY}" >> $GITHUB_OUTPUT
|
|
|
|
- uses: actions/checkout@v3
|
|
- name: Download Coverity Build Tool
|
|
run: |
|
|
wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=$TOKEN&project=open-simh%2Fsimh" -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 }}
|
|
if: steps.determine-repo.outputs.repo == 'open-simh/simh'
|
|
|
|
- name: Fixed world writable dirs
|
|
run: |
|
|
chmod go-w $HOME
|
|
sudo chmod -R go-w /usr/share
|
|
if: steps.determine-repo.outputs.repo == 'open-simh/simh'
|
|
|
|
- name: Installing build dependencies
|
|
run: |
|
|
sh -ex .travis/deps.sh linux
|
|
sudo apt --assume-yes install -ym ninja-build
|
|
if: steps.determine-repo.outputs.repo == 'open-simh/simh'
|
|
|
|
- name: Build with cov-build
|
|
run: |
|
|
export PATH=`pwd`/cov-analysis-linux64/bin:$PATH
|
|
cov-build --dir cov-int cmake/cmake-builder.sh --config Release --flavor ninja --lto --notest --parallel --verbose --cpack_suffix x86_64-${{matrix.os}}
|
|
if: steps.determine-repo.outputs.repo == 'open-simh/simh'
|
|
|
|
- name: Submit the result to Coverity Scan
|
|
run: |
|
|
tar czvf simh.tgz cov-int
|
|
curl \
|
|
--form token=$TOKEN \
|
|
--form email=noreply@opensimh.org \
|
|
--form file=@simh.tgz \
|
|
--form version=trunk \
|
|
--form description="opensimh" \
|
|
https://scan.coverity.com/builds?project=open-simh%2Fsimh
|
|
env:
|
|
TOKEN: ${{ secrets.COVERITY_SCAN_TOKEN }}
|
|
if: steps.determine-repo.outputs.repo == 'open-simh/simh'
|