forked from mne-tools/mne-cpp
-
Notifications
You must be signed in to change notification settings - Fork 0
64 lines (63 loc) · 2.56 KB
/
coverity.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
name: Coverity
on:
schedule:
- cron: '0 0 * * 1,3,5'
jobs:
ScanLinux:
runs-on: ubuntu-16.04
steps:
- name: Clone repository
uses: actions/checkout@v2
- name: Install Python 3.7 version
uses: actions/setup-python@v1
with:
python-version: '3.7'
architecture: 'x64'
- name: Install Qt
uses: jurplel/install-qt-action@v2
with:
version: 5.10.1
modules: qtcharts
- name: Coverity scripts
run: |
COVERITY_SCAN_PROJECT_NAME="mne-tools/mne-cpp"
COVERITY_SCAN_NOTIFICATION_EMAIL="lorenzesch@hotmail.com,gbmotta@mgh.harvard.edu"
COVERITY_SCAN_BRANCH_PATTERN="master"
COVERITY_SCAN_BUILD_COMMAND_PREPEND="qmake -r MNECPP_CONFIG+=noTests"
COVERITY_SCAN_BUILD_COMMAND="make -j4"
COVERITY_SCAN_TOKEN=$COVTOKEN
PLATFORM=`uname`
TOOL_ARCHIVE=/tmp/cov-analysis-${PLATFORM}.tgz
TOOL_URL=https://scan.coverity.com/download/${PLATFORM}
TOOL_BASE=/tmp/coverity-scan-analysis
UPLOAD_URL="https://scan.coverity.com/builds"
SCAN_URL="https://scan.coverity.com"
wget -nv -O $TOOL_ARCHIVE $TOOL_URL --post-data "project=$COVERITY_SCAN_PROJECT_NAME&token=$COVERITY_SCAN_TOKEN"
mkdir -p $TOOL_BASE
pushd $TOOL_BASE
tar xzf $TOOL_ARCHIVE --warning=none
popd
TOOL_DIR=`find $TOOL_BASE -type d -name 'cov-analysis*'`
export PATH=$TOOL_DIR/bin:$PATH
echo -e "echo 3"
echo -e "\033[33;1mRunning Coverity Scan Analysis Tool...\033[0m"
COV_BUILD_OPTIONS=""
RESULTS_DIR="cov-int"
eval "${COVERITY_SCAN_BUILD_COMMAND_PREPEND}"
COVERITY_UNSUPPORTED=1 cov-build --dir $RESULTS_DIR $COV_BUILD_OPTIONS $COVERITY_SCAN_BUILD_COMMAND
cov-import-scm --dir $RESULTS_DIR --scm git --log $RESULTS_DIR/scm_log.txt 2>&1
RESULTS_ARCHIVE=analysis-results.tgz
tar czf $RESULTS_ARCHIVE $RESULTS_DIR
SHA=`git rev-parse --short HEAD`
response=$(curl \
--silent --write-out "\n%{http_code}\n" \
--form project=$COVERITY_SCAN_PROJECT_NAME \
--form token=$COVERITY_SCAN_TOKEN \
--form email=$COVERITY_SCAN_NOTIFICATION_EMAIL \
--form file=@$RESULTS_ARCHIVE \
--form version=$SHA \
--form description="Github Actions build" \
$UPLOAD_URL)
status_code=$(echo "$response" | sed -n '$p')
env:
COVTOKEN: ${{ secrets.COVERITY_TOKEN }}