sbt/project/travis.sh

63 lines
1.4 KiB
Bash
Raw Normal View History

2015-06-16 20:17:07 +02:00
#!/bin/bash
set -ev
TRAVIS_SCALA_VERSION="$1"
shift
TRAVIS_PULL_REQUEST="$1"
shift
TRAVIS_BRANCH="$1"
shift
PUBLISH="$1"
shift
2015-06-16 20:17:07 +02:00
function isNotPr() {
2015-06-16 20:17:07 +02:00
[ "$TRAVIS_PULL_REQUEST" = "false" ]
}
function publish() {
[ "$PUBLISH" = 1 ]
2015-06-16 20:17:07 +02:00
}
function isMaster() {
[ "$TRAVIS_BRANCH" = "master" ]
}
2015-06-18 01:00:03 +02:00
function isMasterOrDevelop() {
[ "$TRAVIS_BRANCH" = "master" -o "$TRAVIS_BRANCH" = "develop" ]
}
2015-06-17 19:36:53 +02:00
# web sub-project doesn't compile in 2.10 (no scalajs-react)
2015-06-16 20:17:07 +02:00
if echo "$TRAVIS_SCALA_VERSION" | grep -q "^2\.10"; then
IS_210=1
2015-12-30 21:00:10 +01:00
SBT_COMMANDS="bootstrap/compile coreJVM/compile coreJS/compile cache/compile web/compile testsJVM/test testsJS/test"
2015-06-16 20:17:07 +02:00
else
IS_210=0
2015-12-30 21:00:10 +01:00
SBT_COMMANDS="compile test"
2015-06-17 19:36:53 +02:00
fi
2015-06-16 20:17:07 +02:00
2015-07-07 20:43:18 +02:00
# Required for ~/.ivy2/local repo tests
~/sbt coreJVM/publish-local
2015-07-07 20:43:18 +02:00
# TODO Add coverage once https://github.com/scoverage/sbt-scoverage/issues/111 is fixed
2015-06-17 19:36:53 +02:00
2015-06-18 01:00:03 +02:00
PUSH_GHPAGES=0
if isNotPr && publish && isMaster; then
2015-12-30 21:00:10 +01:00
SBT_COMMANDS="$SBT_COMMANDS coreJVM/publish coreJS/publish cache/publish"
if [ "$IS_210" = 1 ]; then
SBT_COMMANDS="$SBT_COMMANDS plugin/publish"
else
SBT_COMMANDS="$SBT_COMMANDS cli/publish"
fi
2015-06-16 20:17:07 +02:00
fi
2015-06-17 19:36:53 +02:00
if isNotPr && publish && isMasterOrDevelop; then
2015-06-18 01:00:03 +02:00
if echo "$TRAVIS_SCALA_VERSION" | grep -q "^2\.11"; then
PUSH_GHPAGES=1
fi
fi
~/sbt ++${TRAVIS_SCALA_VERSION} $SBT_COMMANDS
2015-06-18 01:00:03 +02:00
[ "$PUSH_GHPAGES" = 0 ] || "$(dirname "$0")/push-gh-pages.sh" "$TRAVIS_SCALA_VERSION"