aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml40
-rw-r--r--scripts/check-git-history.py (renamed from check-git-history.py)0
-rwxr-xr-xscripts/travis_script54
3 files changed, 55 insertions, 39 deletions
diff --git a/.travis.yml b/.travis.yml
index 318f8134..14438c59 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -45,45 +45,7 @@ before_install:
install: true
script:
- # "./gradlew classes testClasses" is a workaround for
- # https://github.com/gradle/gradle/issues/2421.
- # See https://github.com/gradle/gradle/issues/2421#issuecomment-319916874.
-
- # OS X is a separate case, because the JDK version is determined by the OS X image:
- # https://docs.travis-ci.com/user/reference/osx/#JDK-and-OS-X
- - case "$TASK" in
- "CHECK_GIT_HISTORY")
- python check-git-history.py ;;
- "BUILD")
- case "$TRAVIS_OS_NAME" in
- "linux")
- export JAVA8_HOME="$(jdk_switcher home oraclejdk8)" ;
- case "$TRAVIS_JDK_VERSION" in
- "oraclejdk8")
- export JAVA_HOMES="$(jdk_switcher home openjdk6)/jre:$(jdk_switcher home openjdk7)/jre:$(jdk_switcher home oraclejdk8)/jre:$(jdk_switcher home oraclejdk9)" ;
- ./gradlew clean assemble --stacktrace ;
- ./gradlew check :opencensus-all:jacocoTestReport ;;
- "openjdk7")
- jdk_switcher use oraclejdk8 ;
- ./gradlew classes testClasses ;
- jdk_switcher use openjdk7 ;
- ./gradlew clean assemble --stacktrace ;
- ./gradlew check ;;
- *)
- echo "Unknown JDK version $TRAVIS_JDK_VERSION" ;
- exit 1 ;;
- esac ;;
- "osx")
- ./gradlew clean assemble --stacktrace ;
- ./gradlew check ;;
- *)
- echo "Unknown OS name $TRAVIS_OS_NAME" ;
- exit 1 ;;
- esac ;;
- *)
- echo "Unknown task $TASK" ;
- exit 1 ;;
- esac
+ - scripts/travis_script
after_success:
- if \[ "$TASK" == "BUILD" \] && \[ "$TRAVIS_JDK_VERSION" == "oraclejdk8" \] && \[ "$TRAVIS_OS_NAME" = linux \]; then
diff --git a/check-git-history.py b/scripts/check-git-history.py
index 1aba2ca2..1aba2ca2 100644
--- a/check-git-history.py
+++ b/scripts/check-git-history.py
diff --git a/scripts/travis_script b/scripts/travis_script
new file mode 100755
index 00000000..74b50bf0
--- /dev/null
+++ b/scripts/travis_script
@@ -0,0 +1,54 @@
+#!/bin/bash
+#
+# Travis build script, cf.
+# https://docs.travis-ci.com/user/customizing-the-build/#Implementing-Complex-Build-Steps.
+
+set -o errexit
+set -o xtrace
+
+case "$TASK" in
+ "CHECK_GIT_HISTORY")
+ python "$(dirname "$0")"/check-git-history.py
+ ;;
+ "BUILD")
+ case "$TRAVIS_OS_NAME" in
+ "linux")
+ source /opt/jdk_switcher/jdk_switcher.sh
+ export JAVA8_HOME="$(jdk_switcher home oraclejdk8)"
+ case "$TRAVIS_JDK_VERSION" in
+ "oraclejdk8")
+ export JAVA_HOMES="$(jdk_switcher home openjdk6)/jre:$(jdk_switcher home openjdk7)/jre:$(jdk_switcher home oraclejdk8)/jre:$(jdk_switcher home oraclejdk9)"
+ ./gradlew clean assemble --stacktrace
+ ./gradlew check :opencensus-all:jacocoTestReport
+ ;;
+ "openjdk7")
+ # "./gradlew classes testClasses" is a workaround for
+ # https://github.com/gradle/gradle/issues/2421.
+ # See https://github.com/gradle/gradle/issues/2421#issuecomment-319916874.
+ JAVA_HOME="$(jdk_switcher home openjdk8)" ./gradlew classes testClasses
+ ./gradlew clean assemble --stacktrace
+ ./gradlew check
+ ;;
+ *)
+ echo "Unknown JDK version $TRAVIS_JDK_VERSION"
+ exit 1
+ ;;
+ esac
+ ;;
+ "osx")
+ # OS X is a separate case, because the JDK version is determined by the OS X image:
+ # https://docs.travis-ci.com/user/reference/osx/#JDK-and-OS-X
+ ./gradlew clean assemble --stacktrace
+ ./gradlew check
+ ;;
+ *)
+ echo "Unknown OS name $TRAVIS_OS_NAME"
+ exit 1
+ ;;
+ esac
+ ;;
+ *)
+ echo "Unknown task $TASK"
+ exit 1
+ ;;
+esac