aboutsummaryrefslogtreecommitdiff
path: root/.travis.yml
blob: 996d4c018fcbb0cfd74d5eade87b125412e5f93d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
sudo: false

language: java

matrix:
  fast_finish: true
  include:
  - jdk: openjdk7
    env: TASK=BUILD
    os: linux

  - jdk: oraclejdk8
    env: TASK=BUILD
    os: linux
    addons:
      apt:
        packages:
          # Install the JREs that are used for integration tests in
          # contrib/agent, but are not installed by default.
          - openjdk-6-jdk

  # - jdk: oraclejdk9
  #   env: TASK=BUILD
  #   os: linux

  - jdk: oraclejdk8
    env: TASK=CHECKER_FRAMEWORK
    os: linux

  - env: TASK=CHECK_GIT_HISTORY
    os: linux

  # Build example projects last, since they are affected by fewer pull requests.
  - jdk: oraclejdk8
    env: TASK=CHECK_EXAMPLES_LICENSE
    os: linux

  - jdk: oraclejdk8
    env: TASK=BUILD_EXAMPLES_GRADLE
    os: linux

  - jdk: oraclejdk8
    env: TASK=BUILD_EXAMPLES_MAVEN
    os: linux

  - jdk: oraclejdk8
    env: TASK=BUILD_EXAMPLES_BAZEL
    os: linux

  - jdk: oraclejdk8
    env: TASK=CHECK_EXAMPLES_FORMAT
    os: linux

  # Work around https://github.com/travis-ci/travis-ci/issues/2317
  - env: TASK=BUILD
    os: osx

  allow_failures:
  # Allowing failures because osx builds are very slow.
  - env: TASK=BUILD
    os: osx

before_install:
  - git log --oneline --decorate --graph -30
  - if \[ "$TASK" == "BUILD_EXAMPLES_BAZEL" \]; then
      echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list ;
      curl https://bazel.build/bazel-release.pub.gpg | sudo apt-key add - ;
      sudo apt-get update ;
      sudo apt-get install bazel ;
    fi

# Skip Travis' default Gradle install step. See http://stackoverflow.com/a/26575080.
install: true

script:
  - scripts/travis_script

after_success:
  - if \[ "$TASK" == "BUILD" \] && \[ "$TRAVIS_JDK_VERSION" == "oraclejdk8" \] && \[ "$TRAVIS_OS_NAME" = linux \]; then
      bash <(curl -s https://codecov.io/bash) ;
    fi

before_cache:
  - rm -fr $HOME/.gradle/caches/modules-2/modules-2.lock

cache:
  directories:
    - $HOME/.gradle
    - $HOME/.gradle/caches/
    - $HOME/.gradle/wrapper/