1
1
language : java
2
2
sudo : required
3
-
4
- jdk :
5
- - oraclejdk8
6
-
3
+ jdk : oraclejdk8
7
4
notifications :
8
5
email : false
9
6
irc :
@@ -13,53 +10,79 @@ notifications:
13
10
on_failure : always
14
11
use_notice : true
15
12
skip_join : true
16
-
13
+ env :
14
+ global :
15
+ - DISPLAY=:99.0
16
+ matrix :
17
+ - TASK=build
18
+ - TASK=rb TARGET=unit-test
19
+ - TASK=rb TARGET=chrome-test
20
+ - TASK=rb TARGET=firefox-test
21
+ - TASK=rb TARGET=phantomjs-test
22
+ - TASK=py TOXENV=py27-chrome
23
+ - TASK=py TOXENV=py27-firefox
24
+ - TASK=py TOXENV=py27-marionette
25
+ - TASK=py TOXENV=py27-phantomjs
26
+ matrix :
27
+ fast_finish : true
28
+ allow_failures :
29
+ - env : TASK=rb TARGET=firefox-test
30
+ - env : TASK=rb TARGET=phantomjs-test
31
+ - env : TASK=py TOXENV=py27-chrome
32
+ - env : TASK=py TOXENV=py27-firefox
33
+ - env : TASK=py TOXENV=py27-marionette
17
34
before_script :
18
- - " export DISPLAY=:99.0"
19
- - " sh -e /etc/init.d/xvfb start"
20
-
35
+ - sh -e /etc/init.d/xvfb start
21
36
script :
22
- - export CHROME_REVISION=`curl -s http://commondatastorage.googleapis.com/chromium-browser-snapshots/Linux_x64/LAST_CHANGE`
23
- - export CHROMEDRIVER_VERSION=`curl -s http://chromedriver.storage.googleapis.com/LATEST_RELEASE`
24
-
25
- - curl -L -O "http://commondatastorage.googleapis.com/chromium-browser-snapshots/Linux_x64/${CHROME_REVISION}/chrome-linux.zip"
26
- - unzip chrome-linux.zip
27
-
28
- - curl -L -O "http://chromedriver.storage.googleapis.com/${CHROMEDRIVER_VERSION}/chromedriver_linux64.zip"
29
- - unzip chromedriver_linux64.zip
30
-
31
- - chmod +x chromedriver
32
- - mv chromedriver chrome-linux/chromedriver
33
- - export PATH=$PATH:$PWD/chrome-linux
34
-
35
- - export CHROME_BINARY=$PWD/chrome-linux/chrome
36
- - export CHROMEDRIVER=$PWD/chrome-linux/chromedriver
37
-
38
- - export PY_FILES_CHANGED=`git diff --name-only $TRAVIS_COMMIT_RANGE | grep ^py/`
39
- - echo "PY_FILES_CHANGED : $PY_FILES_CHANGED"
40
- - export RB_FILES_CHANGED=`git diff --name-only $TRAVIS_COMMIT_RANGE | grep ^rb/`
41
- - echo "RB_FILES_CHANGED : $RB_FILES_CHANGED"
42
-
43
- - ./go clean build
44
37
- |
45
- if [[ $PY_FILES_CHANGED == py/* ]]; then
46
- pip install --user virtualenv
47
- export PATH=$PATH:$HOME/.local/bin
48
- ./go py_prep_for_install_release //py:phantomjs_test:run
49
- else
50
- echo 'no Python files changed - skipping Python test suite'
51
- fi
38
+ if [[ $TARGET+$TOXENV == *"chrome"* ]]; then
39
+ sudo apt-get -y purge chromium-browser
40
+ export CHROME_REVISION=`curl -s http://commondatastorage.googleapis.com/chromium-browser-snapshots/Linux_x64/LAST_CHANGE`
41
+ curl -L -O "http://commondatastorage.googleapis.com/chromium-browser-snapshots/Linux_x64/${CHROME_REVISION}/chrome-linux.zip"
42
+ unzip chrome-linux.zip
43
+ sudo ln -sf $PWD/chrome-linux/chrome-wrapper /usr/local/bin/chrome
44
+ export CHROMEDRIVER_VERSION=`curl -s http://chromedriver.storage.googleapis.com/LATEST_RELEASE`
45
+ curl -L -O "http://chromedriver.storage.googleapis.com/${CHROMEDRIVER_VERSION}/chromedriver_linux64.zip"
46
+ unzip chromedriver_linux64.zip && chmod +x chromedriver && sudo mv chromedriver /usr/local/bin
47
+ fi
52
48
- |
53
- if [[ $RB_FILES_CHANGED == rb/* ]]; then
54
- export PHANTOMJS_NAME=phantomjs-2.1.1-linux-x86_64
55
- curl -L -O "https://cnpmjs.org/mirrors/phantomjs/${PHANTOMJS_NAME}.tar.bz2"
56
- tar -xvjf $PHANTOMJS_NAME.tar.bz2
57
- chmod +x $PHANTOMJS_NAME/bin/phantomjs
58
- mv $PHANTOMJS_NAME/bin/phantomjs chrome-linux/phantomjs
59
- export PHANTOMJS_BINARY=$PWD/chrome-linux/phantomjs
60
- rvm install 2.2.3
61
- rvm use 2.2.3
62
- ./go //rb:unit-test //rb:firefox-test //rb:phantomjs-test //rb:chrome-test
63
- else
64
- echo 'no Ruby files changed - skipping Ruby test suite'
65
- fi
49
+ if [[ $TOXENV == *"firefox"* ]]; then
50
+ sudo apt-get -y purge firefox
51
+ pip install --user mozdownload mozinstall
52
+ mozdownload --version 47.0.1 --destination firefox.tar.bz2
53
+ mozinstall firefox.tar.bz2
54
+ fi
55
+ - |
56
+ if [[ $TARGET == *"firefox"* ]] || [[ $TOXENV == *"marionette"* ]]; then
57
+ export GECKODRIVER_VERSION=v0.10.0
58
+ curl -L -o geckodriver.tar.gz https://github.com/mozilla/geckodriver/releases/download/${GECKODRIVER_VERSION}/geckodriver-${GECKODRIVER_VERSION}-linux64.tar.gz
59
+ gunzip -c geckodriver.tar.gz | tar xopf -
60
+ chmod +x geckodriver && sudo mv geckodriver /usr/local/bin
61
+ sudo apt-get -y purge firefox
62
+ pip install --user mozdownload mozinstall
63
+ mozdownload --version latest --destination firefox.tar.bz2
64
+ mozinstall firefox.tar.bz2
65
+ fi
66
+ - |
67
+ if [[ $TARGET+$TOXENV == *"phantomjs"* ]]; then
68
+ export PHANTOMJS_NAME=phantomjs-2.1.1-linux-x86_64
69
+ curl -L -O "https://cnpmjs.org/mirrors/phantomjs/${PHANTOMJS_NAME}.tar.bz2"
70
+ tar -xvjf $PHANTOMJS_NAME.tar.bz2
71
+ chmod +x $PHANTOMJS_NAME/bin/phantomjs
72
+ fi
73
+ - |
74
+ if [[ $TASK == "build" ]]; then
75
+ ./go build
76
+ fi
77
+ - |
78
+ if [[ $TASK == "py" ]]; then
79
+ ./go py_prep_for_install_release
80
+ pip install --user tox-travis
81
+ tox -- --verbose --instafail
82
+ fi
83
+ - |
84
+ if [[ $TASK == "rb" ]]; then
85
+ rvm install 2.2.3
86
+ rvm use 2.2.3
87
+ ./go //rb:$TARGET
88
+ fi
0 commit comments