@@ -8,157 +8,110 @@ os: linux
88language : cpp
99env :
1010 global :
11- - PYTHON2_VERSION="2.7.15"
12- - PYTHON3_VERSION="3.6.7" # "3.7.1" after #29326 is fixed
13- - PYTHON2_CACHE=$HOME/.ccache/py${PYTHON2_VERSION}
14- - PYTHON3_CACHE=$HOME/.ccache/py${PYTHON3_VERSION}
15- cache :
16- ccache : true
17- directories :
18- - ${PYTHON2_CACHE}
19- - ${PYTHON3_CACHE}
11+ - PYTHON_VERSION="2.7.15"
2012jobs :
2113 include :
2214 - stage : " Compile"
23- name : " Compile V8 (py2)"
15+ name : " Compile V8"
16+ cache : ccache
2417 addons :
2518 apt :
26- update : true
2719 sources :
2820 - ubuntu-toolchain-r-test
2921 packages :
3022 - g++-6
3123 install : *ccache-setup-steps
3224 script :
33- - pyenv global ${PYTHON2_VERSION }
25+ - pyenv global ${PYTHON_VERSION }
3426 - ./configure
3527 - make -j2 -C out V=1 v8
3628
37- - name : " Compile V8 (py3)"
29+ - name : " Compile Node.js"
30+ cache : ccache
3831 addons :
3932 apt :
40- update : true
4133 sources :
4234 - ubuntu-toolchain-r-test
4335 packages :
4436 - g++-6
4537 install : *ccache-setup-steps
4638 script :
47- - pyenv global ${PYTHON3_VERSION}
48- # - ./configure # workaround pending #25878
49- - python3 configure.py
50- - make -j2 -C out V=1 v8
51-
52- - name : " Compile Node.js (py2)"
53- addons :
54- apt :
55- update : true
56- sources :
57- - ubuntu-toolchain-r-test
58- packages :
59- - g++-6
60- install : *ccache-setup-steps
61- script :
62- - pyenv global ${PYTHON2_VERSION}
39+ - pyenv global ${PYTHON_VERSION}
6340 - ./configure
6441 - make -j2 V=1
65- - cp out/Release/node ${PYTHON2_CACHE}
66- - cp out/Release/cctest ${PYTHON2_CACHE}
67-
68- - name : " Compile Node.js (py3)"
69- addons :
70- apt :
71- update : true
72- sources :
73- - ubuntu-toolchain-r-test
74- packages :
75- - g++-6
76- install : *ccache-setup-steps
77- script :
78- - pyenv global ${PYTHON3_VERSION}
79- # - ./configure # workaround pending #25878
80- - python3 configure.py
81- - make -j2 V=1
82- - cp out/Release/node ${PYTHON3_CACHE}
83- - cp out/Release/cctest ${PYTHON3_CACHE}
42+ - cp out/Release/node /home/travis/.ccache
43+ - cp out/Release/cctest /home/travis/.ccache
8444
8545 - stage : " Tests"
86- name : " Test JS Suites (py2)"
87- install :
88- - mkdir -p out/Release
89- - cp ${PYTHON2_CACHE}/node out/Release/node
90- script :
91- - pyenv global ${PYTHON2_VERSION}
92- - python tools/test.py -j 2 -p dots --report --mode=release --flaky-tests=dontcare default
93-
94- - name : " Test JS Suites (py3)"
46+ name : " Test JS Suites"
47+ cache : ccache
9548 install :
9649 - mkdir -p out/Release
97- - cp ${PYTHON3_CACHE} /node out/Release/node
50+ - cp /home/travis/.ccache /node out/Release/node
9851 script :
99- - pyenv global ${PYTHON3_VERSION }
52+ - pyenv global ${PYTHON_VERSION }
10053 - python tools/test.py -j 2 -p dots --report --mode=release --flaky-tests=dontcare default
10154
102- - name : " Test C++ Suites (py2)"
55+ - name : " Test C++ Suites"
56+ cache : ccache
10357 install :
10458 - export CCACHE_NOSTATS=1
10559 - export CCACHE_SLOPPINESS="file_macro,include_file_mtime,include_file_ctime,time_macros,file_stat_matches"
10660 - export CC='ccache gcc'
10761 - export CXX='ccache g++'
10862 - mkdir -p out/Release
109- - cp ${PYTHON2_CACHE} /node out/Release/node
63+ - cp /home/travis/.ccache /node out/Release/node
11064 - ln -fs out/Release/node node
111- - cp ${PYTHON2_CACHE} /cctest out/Release/cctest
65+ - cp /home/travis/.ccache /cctest out/Release/cctest
11266 - touch config.gypi
11367 script :
114- - pyenv global ${PYTHON2_VERSION }
68+ - pyenv global ${PYTHON_VERSION }
11569 - out/Release/cctest
11670 - make -j1 V=1 test/addons/.buildstamp test/js-native-api/.buildstamp test/node-api/.buildstamp
11771 - python tools/test.py -j 2 -p dots --report --mode=release --flaky-tests=dontcare addons js-native-api node-api
11872
119- - name : " Test C++ Suites (py3)"
120- install :
121- - export CCACHE_NOSTATS=1
122- - export CCACHE_SLOPPINESS="file_macro,include_file_mtime,include_file_ctime,time_macros,file_stat_matches"
123- - export CC='ccache gcc'
124- - export CXX='ccache g++'
125- - mkdir -p out/Release
126- - cp ${PYTHON3_CACHE}/node out/Release/node
127- - ln -fs out/Release/node node
128- - cp ${PYTHON3_CACHE}/cctest out/Release/cctest
129- - touch config.gypi
130- script :
131- - pyenv global ${PYTHON3_VERSION}
132- - out/Release/cctest
133- - make -j1 V=1 test/addons/.buildstamp test/js-native-api/.buildstamp test/node-api/.buildstamp
134- - python tools/test.py -j 2 -p dots --report --mode=release --flaky-tests=dontcare addons js-native-api node-api
135-
136- - name : " Linter (py2)"
73+ - name : " Linter"
13774 language : node_js
13875 node_js : " node"
13976 install :
140- - pyenv global ${PYTHON2_VERSION }
77+ - pyenv global ${PYTHON_VERSION }
14178 - make lint-py-build || true
14279 script :
14380 - NODE=$(which node) make lint lint-py
14481
145- - name : " Linter (py3)"
82+ - name : " First commit message adheres to guidelines at <a href=\" https://goo.gl/p2fr5Q\" >https://goo.gl/p2fr5Q</a>"
83+ if : type = pull_request
84+ language : node_js
85+ node_js : " node"
86+ script :
87+ - if [ "${TRAVIS_PULL_REQUEST}" != "false" ]; then
88+ bash -x tools/lint-pr-commit-message.sh ${TRAVIS_PULL_REQUEST};
89+ fi
90+
91+ - name : " Python 3 is EXPERIMENTAL (Py36)"
14692 language : node_js
14793 node_js : " node"
14894 install :
149- - pyenv global ${PYTHON3_VERSION}
150- - make lint-py-build || true
95+ - pyenv global 3.6.7
96+ - python3.6 -m pip install --upgrade pip
97+ - make lint-py-build
15198 script :
15299 - NODE=$(which node) make lint lint-py
100+ - python3.6 ./configure.py
101+ - NODE=$(which node) make test
153102
154- - name : " First commit message adheres to guidelines at <a href=\" https://goo.gl/p2fr5Q\" >https://goo.gl/p2fr5Q</a>"
155- if : type = pull_request
103+ - name : " Python 3 is EXPERIMENTAL (Py37)"
156104 language : node_js
157105 node_js : " node"
106+ install :
107+ - pyenv global 3.7.1
108+ - python3.7 -m pip install --upgrade pip
109+ - make lint-py-build
158110 script :
159- - if [ "${TRAVIS_PULL_REQUEST}" != "false" ]; then
160- bash -x tools/lint-pr-commit-message.sh ${TRAVIS_PULL_REQUEST};
161- fi
111+ - NODE=$(which node) make lint lint-py
112+ - python3.7 ./configure.py
113+ - NODE=$(which node) make test
162114
163115 allow_failures :
164- - name : " Test C++ Suites (py3)" # allow_failures pending #29246
116+ - name : " Python 3 is EXPERIMENTAL (Py36)"
117+ - name : " Python 3 is EXPERIMENTAL (Py37)"
0 commit comments