aboutsummaryrefslogtreecommitdiff
path: root/scripts/travis-build.sh
diff options
context:
space:
mode:
authorMike Frysinger <vapier@chromium.org>2016-06-21 11:14:28 -0400
committerMike Frysinger <vapier@chromium.org>2016-06-21 11:14:28 -0400
commit83a55520607edb9ec8a5d0c3c31821236a076312 (patch)
tree5f0b4effe5d19b28ba05d1563facadde287be646 /scripts/travis-build.sh
parentServer-side workaround to handle overlapping modules. (diff)
downloadbreakpad-83a55520607edb9ec8a5d0c3c31821236a076312.tar.xz
travis: add coverity scan integration
R=ted.mielczarek@gmail.com Review URL: https://codereview.chromium.org/2078283002 .
Diffstat (limited to 'scripts/travis-build.sh')
-rwxr-xr-xscripts/travis-build.sh24
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 "$@"