blob: eed620b7103cde0bcdfab29e9c4a67d81583488e [file] [log] [blame]
Louis Ryanc42c8c42015-03-18 16:31:38 -07001sudo: false
2
Louis Ryan540b4d32015-09-04 13:26:24 -07003language: java
Louis Ryanc42c8c42015-03-18 16:31:38 -07004
5env:
6 global:
Eric Anderson56dca032016-02-12 08:48:41 -08007 - GRADLE_OPTS=-Xmx512m
Kun Zhange2ed2e82016-01-27 08:26:19 -08008 - PROTOBUF_VERSION=3.0.0-beta-2
Eric Anderson80f73a42016-04-27 15:23:35 -07009 - LDFLAGS=-L/tmp/protobuf/lib
10 - CXXFLAGS=-I/tmp/protobuf/include
11 - LD_LIBRARY_PATH=/tmp/protobuf/lib
Louis Ryanc42c8c42015-03-18 16:31:38 -070012
Eric Andersona0acb9b2015-03-20 10:26:00 -070013before_install:
Eric Anderson1d7a11c2016-04-29 15:07:22 -070014 - 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
Eric Anderson6dc5e802015-10-15 14:52:24 -070018 # Work around https://github.com/travis-ci/travis-ci/issues/2317
19 - if \[ "$TRAVIS_OS_NAME" = linux \]; then jdk_switcher use oraclejdk8; fi
Kun Zhangbd23a8d2015-08-28 18:47:06 -070020 - buildscripts/make_dependencies.sh # build protoc into /tmp/protobuf-${PROTOBUF_VERSION}
Eric Anderson80f73a42016-04-27 15:23:35 -070021 - ln -s "/tmp/protobuf-${PROTOBUF_VERSION}/$(uname -s)-$(uname -p)" /tmp/protobuf
Eric Anderson26141b42015-03-21 10:59:17 -070022 - mkdir -p $HOME/.gradle
23 - echo "checkstyle.ignoreFailures=false" >> $HOME/.gradle/gradle.properties
Louis Ryanc42c8c42015-03-18 16:31:38 -070024
Eric Andersoncea8e8e2015-10-27 19:53:18 -070025install:
26 - ./gradlew assemble generateTestProto
27
Eric Anderson34571992015-05-07 17:00:44 -070028before_script:
29 - test -z "$(git status --porcelain)" || (git status && echo Error Working directory is not clean. Forget to commit generated files? && false)
30
Eric Anderson6715f122016-02-13 14:43:38 -080031script:
32 - ./gradlew check :grpc-all:jacocoTestReport
33
Eric Anderson522580d2015-08-07 18:02:31 -070034after_success:
Eric Anderson6dc5e802015-10-15 14:52:24 -070035 - if \[ "$TRAVIS_OS_NAME" = linux \]; then ./gradlew :grpc-all:coveralls; fi
Eric Anderson6715f122016-02-13 14:43:38 -080036 - bash <(curl -s https://codecov.io/bash)
Louis Ryanc42c8c42015-03-18 16:31:38 -070037
38os:
39 - linux
Eric Anderson6dc5e802015-10-15 14:52:24 -070040 - osx
41
42# This image comes with jdk8
43osx_image: xcode7
Louis Ryanc42c8c42015-03-18 16:31:38 -070044
Louis Ryanc42c8c42015-03-18 16:31:38 -070045notifications:
Eric Andersona0acb9b2015-03-20 10:26:00 -070046 email: false
47
Eric Anderson6dc5e802015-10-15 14:52:24 -070048# Caching does not work for public repositories with OS X:
49# https://github.com/travis-ci/travis-ci/issues/4011
Eric Andersona0acb9b2015-03-20 10:26:00 -070050cache:
51 directories:
Kun Zhangbd23a8d2015-08-28 18:47:06 -070052 - /tmp/protobuf-${PROTOBUF_VERSION}
Eric Anderson1d7a11c2016-04-29 15:07:22 -070053 - /tmp/gradle-caches-modules-2
54 - /tmp/gradle-wrapper
Eric Anderson16055782015-03-20 12:03:48 -070055
56before_cache:
Eric Anderson1d7a11c2016-04-29 15:07:22 -070057 # The lock changes based on folder name; normally $HOME/.gradle/caches/modules-2/modules-2.lock
58 - rm /tmp/gradle-caches-modules-2/gradle-caches-modules-2.lock
Eric Anderson3b54ffa2015-04-29 07:56:04 -070059 - find $HOME/.gradle/wrapper -not -name "*-all.zip" -and -not -name "*-bin.zip" -delete