• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1sudo: false
2
3language: java
4
5env:
6  global:
7    - GRADLE_OPTS=-Xmx512m
8    - LDFLAGS=-L/tmp/protobuf/lib
9    - CXXFLAGS=-I/tmp/protobuf/include
10    - LD_LIBRARY_PATH=/tmp/protobuf/lib
11
12before_install:
13  - rm ~/.m2/settings.xml || true # Avoid repository.apache.org, which has QPS limits and is useless
14  - mkdir -p $HOME/.gradle/caches &&
15    ln -s /tmp/gradle-caches-modules-2 $HOME/.gradle/caches/modules-2
16  - mkdir -p $HOME/.gradle &&
17    ln -s /tmp/gradle-wrapper $HOME/.gradle/wrapper
18  - buildscripts/make_dependencies.sh # build protoc into /tmp/protobuf
19  - mkdir -p $HOME/.gradle
20  - echo "checkstyle.ignoreFailures=false" >> $HOME/.gradle/gradle.properties
21  - echo "failOnWarnings=true" >> $HOME/.gradle/gradle.properties
22  - echo "errorProne=true" >> $HOME/.gradle/gradle.properties
23
24install:
25  - ./gradlew assemble generateTestProto install
26  - pushd examples && ./gradlew build && popd
27  - pushd examples && mvn verify && popd
28
29before_script:
30  - test -z "$(git status --porcelain)" || (git status && echo Error Working directory is not clean. Forget to commit generated files? && false)
31
32script:
33  - ./gradlew check :grpc-all:jacocoTestReport
34
35after_success:
36    # Upload to coveralls once, instead of for each job in the matrix
37  - if [[ "$TRAVIS_JOB_NUMBER" == *.1 ]]; then ./gradlew :grpc-all:coveralls; fi
38  - bash <(curl -s https://codecov.io/bash)
39
40os:
41  - linux
42
43jdk:
44  # net.ltgt.errorprone supports jdk8 and jdk9, but has problems with jdk10
45  # For jdk10, we need to switch over to using net.ltgt.errorprone-javacplugin,
46  # and likely update to the latest com.google.errorprone:error_prone_core.
47  # We have decided not to make our build.gradle support both plugins, so when
48  # we finally move off of jdk8 and jdk9 we will need use the javac annotation
49  # processor based plugin.
50  - oraclejdk8  # if both jdk 8 and 9 are removed, migrate to net.ltgt.errorprone-javacplugin (see above comment)
51  - oraclejdk9  # if both jdk 8 and 9 are removed, migrate to net.ltgt.errorprone-javacplugin (see above comment)
52  - oraclejdk10
53
54notifications:
55  email: false
56
57cache:
58  directories:
59    - /tmp/protobuf-cache
60    - /tmp/gradle-caches-modules-2
61    - /tmp/gradle-wrapper
62
63before_cache:
64  # The lock changes based on folder name; normally $HOME/.gradle/caches/modules-2/modules-2.lock
65  - rm /tmp/gradle-caches-modules-2/gradle-caches-modules-2.lock
66  - find $HOME/.gradle/wrapper -not -name "*-all.zip" -and -not -name "*-bin.zip" -delete
67