diff options
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/travis-build.sh | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/scripts/travis-build.sh b/scripts/travis-build.sh index e994fe7b..6d16e14e 100755 --- a/scripts/travis-build.sh +++ b/scripts/travis-build.sh @@ -19,6 +19,26 @@ setup_env() { export JOBS=$(( $NCPUS < 4 ? $NCPUS : 4 )) } +# We have to do this by hand rather than use the coverity addon because of +# matrix explosion: https://github.com/travis-ci/travis-ci/issues/1975 +coverity_scan() { + if [ "${TRAVIS_JOB_NUMBER##*.}" != "1" ] || \ + [ -n "${TRAVIS_TAG}" ] || \ + [ "${TRAVIS_PULL_REQUEST}" = "true" ] + then + echo "Skipping coverity scan." + return + fi + + export COVERITY_SCAN_PROJECT_NAME="${TRAVIS_REPO_SLUG}" + export COVERITY_SCAN_NOTIFICATION_EMAIL="google-breakpad-dev@googlegroups.com" + export COVERITY_SCAN_BUILD_COMMAND="build" + export COVERITY_SCAN_BUILD_COMMAND_PREPEND="git clean -q -x -d -f; git checkout -f" + export COVERITY_SCAN_BRANCH_PATTERN="master" + + curl -s "https://scan.coverity.com/scripts/travisci_build_coverity_scan.sh" | bash || : +} + # Do an in-tree build and make sure tests pass. build() { ./configure @@ -38,6 +58,10 @@ main() { setup_env build build_out_of_tree + + # Do scans last as they like to dirty the tree and some tests + # expect a clean tree (like code style checks). + coverity_scan } main "$@" |