sudo: false language: java env: global: - GRADLE_OPTS=-Xmx512m - LDFLAGS=-L/tmp/protobuf/lib - CXXFLAGS=-I/tmp/protobuf/include - LD_LIBRARY_PATH=/tmp/protobuf/lib before_install: - rm ~/.m2/settings.xml || true # Avoid repository.apache.org, which has QPS limits and is useless - mkdir -p $HOME/.gradle/caches && ln -s /tmp/gradle-caches-modules-2 $HOME/.gradle/caches/modules-2 - mkdir -p $HOME/.gradle && ln -s /tmp/gradle-wrapper $HOME/.gradle/wrapper - buildscripts/make_dependencies.sh # build protoc into /tmp/protobuf - mkdir -p $HOME/.gradle - echo "checkstyle.ignoreFailures=false" >> $HOME/.gradle/gradle.properties - echo "failOnWarnings=true" >> $HOME/.gradle/gradle.properties - echo "errorProne=true" >> $HOME/.gradle/gradle.properties install: - ./gradlew assemble generateTestProto install - pushd examples && ./gradlew build && popd - pushd examples && mvn verify && popd before_script: - test -z "$(git status --porcelain)" || (git status && echo Error Working directory is not clean. Forget to commit generated files? && false) script: - ./gradlew check :grpc-all:jacocoTestReport after_success: # Upload to coveralls once, instead of for each job in the matrix - if [[ "$TRAVIS_JOB_NUMBER" == *.1 ]]; then ./gradlew :grpc-all:coveralls; fi - bash <(curl -s https://codecov.io/bash) os: - linux jdk: # net.ltgt.errorprone supports jdk8 and jdk9, but has problems with jdk10 # For jdk10, we need to switch over to using net.ltgt.errorprone-javacplugin, # and likely update to the latest com.google.errorprone:error_prone_core. # We have decided not to make our build.gradle support both plugins, so when # we finally move off of jdk8 and jdk9 we will need use the javac annotation # processor based plugin. - oraclejdk8 # if both jdk 8 and 9 are removed, migrate to net.ltgt.errorprone-javacplugin (see above comment) - oraclejdk9 # if both jdk 8 and 9 are removed, migrate to net.ltgt.errorprone-javacplugin (see above comment) - oraclejdk10 notifications: email: false cache: directories: - /tmp/protobuf-cache - /tmp/gradle-caches-modules-2 - /tmp/gradle-wrapper before_cache: # The lock changes based on folder name; normally $HOME/.gradle/caches/modules-2/modules-2.lock - rm /tmp/gradle-caches-modules-2/gradle-caches-modules-2.lock - find $HOME/.gradle/wrapper -not -name "*-all.zip" -and -not -name "*-bin.zip" -delete