forked from JMRI/JMRI
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
81 lines (68 loc) · 2.65 KB
/
.travis.yml
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
language: java
jdk:
- openjdk8
addons:
apt:
update: true
packages:
- graphviz
- libalut0
- pulseaudio
- tidy
firefox: latest
chrome: stable
services:
- xvfb
before_install:
# uncomment next line dump Travis CI environment variables into log
# - set | grep '^[A-Z].*='
# ensure no unwanted defaults are set
# see https://github.com/travis-ci/travis-ci/issues/4613#issuecomment-181845546
- export MAVEN_SKIP_RC="true"
# install graphviz on macOS
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install graphviz ; fi
install:
- mvn verify -DskipTests=true -Dmaven.javadoc.skip=true -B -V
before_script:
# start audio services
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then start-pulseaudio-x11 ; fi
# silence errors from firefox about dbus.
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then dbus-launch ; fi
# install Code Climate test coverage reporter
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter ; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-darwin-amd64 > ./cc-test-reporter ; fi
- chmod +x ./cc-test-reporter
- ./cc-test-reporter before-build
script:
- if [[ "$PRINT_SUMMARY" == "false" ]] ; then ./scripts/travis.sh ; else ./scripts/travis.sh ; fi
cache:
directories:
- $HOME/.m2
os:
- linux
dist: bionic
env:
global:
# false to silence most maven output; true to catch tests that do not complete
- PRINT_SUMMARY=true
- MAVEN_OPTS=-Xmx1536m
# see http://maven.apache.org/surefire/maven-surefire-plugin/test-mojo.html#runOrder for valid values
- RUN_ORDER=alphabetical
- CC_TEST_REPORTER_ID=1d1326c4dfaeede878b46588cda440432d1dd6ec605d2c99af7b240ac7db0477
- SKIPINTERMITTENT=true
jobs:
include:
- name: GUI Tests
os: linux
env: HEADLESS=false STATIC=false
- name: Headless Tests
os: linux
env: HEADLESS=true STATIC=false
- name: Intermittently Failing GUI Tests
os: linux
env: HEADLESS=false SKIPINTERMITTENT=false STATIC=true
after_success:
- if [[ "$TRAVIS_OS_NAME" == "linux" && "$HEADLESS" == "false" ]] ; then mvn jacoco:report coveralls:report -U -P travis-coverage ; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" && "$HEADLESS" == "false" ]] ; then JACOCO_SOURCE_PATH=java/src ./cc-test-reporter format-coverage target/site/jacoco/jacoco.xml --input-type jacoco ; ./cc-test-reporter upload-coverage ; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" && "$HEADLESS" == "false" ]] ; then bash <(curl -s https://codecov.io/bash) ; fi