1- os : linux
21dist : trusty
3-
42sudo : false
5- group : edge
6-
7- _base_envs :
8- - &stage_lint
9- stage : &stage_lint_name lint
10- - &stage_test_priority
11- stage : &stage_test_priority_name test against latest Python versions first (under GNU/Linux)
12- - &stage_test_osx
13- stage : &stage_test_osx_name test under OS X (last chance to fail before deploy available)
14- - &stage_deploy
15- stage : &stage_deploy_name upload new version of python package to PYPI (only for tagged commits)
16- - &pyenv_base
17- language : generic
18- python : &pypy2 pypy2.7-5.8.0
19- env :
20- - &env_pypy2 PYTHON_VERSION=pypy2.7-5.8.0
21- - &env_pyenv PYENV_ROOT="$HOME/.pyenv"
22- - &env_path PATH="$PYENV_ROOT/bin:$PATH"
23- before_install :
24- - &ensure_pyenv_installed |
25- if [ ! -f "$PYENV_ROOT/bin/pyenv" ]
26- then
27- rm -rf "$PYENV_ROOT"
28- curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
29- eval "$(pyenv init -)"
30- eval "$(pyenv virtualenv-init -)"
31- fi
32- eval "$(pyenv init -)"
33- eval "$(pyenv virtualenv-init -)"
34- pyenv update
35- - &install_python pyenv install --skip-existing --keep --verbose "$PYTHON_VERSION"
36- - &switch_python pyenv shell "$PYTHON_VERSION"
37- - &python_version python --version
38- - &osx_python_base
39- << : *pyenv_base
40- << : *stage_test_osx
41- os : osx
42- language : generic
43- before_install :
44- - brew update
45- - brew install readline xz
46- - *ensure_pyenv_installed
47- - *install_python
48- - *switch_python
49- - *python_version
50- before_cache :
51- - brew --cache
52- - &pure_python_base_priority
53- << : *stage_test_priority
54- python : &mainstream_python 3.6
55- - &lint_python_base
56- << : *stage_lint
57- python : *mainstream_python
58- after_failure : []
59-
60- stages :
61- - *stage_lint_name
62- - *stage_test_priority_name
63- - test
64- - *stage_test_osx_name
65- - name : *stage_deploy_name
66- if : tag IS present
67-
68- # Base test matrix run in linux containers:
69- python :
70- - 2.7
71- - 3.3
72- - 3.4
73- - 3.5
74- - *mainstream_python
75- - *pypy2
76- - &pypy3 pypy3.5-5.8.0
3+ language : python
774
785jobs :
796 fast_finish : true
80- allow_failures :
81- - env : &pep257_env TOXENV=pre-commit-pep257
82- - env : &pre-commit_env TOXENV=pre-commit
83- # pypy2.7 succeeds locally
84- - python : *pypy2
85- os : linux
86- # pypy3.5 fails locally like in Travis
87- - python : *pypy3
88- os : linux
89- # OS X environment is extremely unstable
90- - os : linux
917 include :
92- - << : *lint_python_base
93- env : *pre-commit_env
94- - << : *lint_python_base
95- env : *pep257_env
96- - << : *pure_python_base_priority
97- # mainstream here (3.6)
98- - << : *pure_python_base_priority
99- python : nightly
100- - << : *osx_python_base
101- python : 2.7
102- env :
103- - PYTHON_VERSION=2.7.13
104- - *env_pyenv
105- - *env_path
106- - << : *osx_python_base
107- python : 3.3
108- env :
109- - PYTHON_VERSION=3.3.6
110- - *env_pyenv
111- - *env_path
112- - << : *osx_python_base
113- python : 3.4
114- env :
115- - PYTHON_VERSION=3.4.6
116- - *env_pyenv
117- - *env_path
118- - << : *osx_python_base
119- python : 3.5
120- env :
121- - PYTHON_VERSION=3.5.3
122- - *env_pyenv
123- - *env_path
124- - << : *osx_python_base
125- python : *mainstream_python
126- env :
127- - PYTHON_VERSION=3.6.1
128- - *env_pyenv
129- - *env_path
130- - << : *osx_python_base
131- python : nightly
132- env :
133- - PYTHON_VERSION=3.7-dev
134- - *env_pyenv
135- - *env_path
136- - << : *osx_python_base
137- python : *pypy2
138- env :
139- - *env_pypy2
140- - *env_pyenv
141- - *env_path
142- # pypy3.5-5.8.0 fails under OS X because it's unsupported (PR #26)
143- - << : *stage_deploy
144- python : *mainstream_python
8+ - python : 2.7
9+ - python : &latest_py3 3.6
10+ - stage : deploy
11+ if : tag IS present
12+ python : *latest_py3
14513 install : skip
14614 script : skip
14715 deploy :
@@ -150,25 +18,15 @@ jobs:
15018 tags : true
15119 all_branches : true
15220 user : jaraco
153- distributions : dists
15421 password :
15522 secure : rGooTu2PXDe+83QGlXVyfrMFZkUJ78qNMj6TRpLDz1Mb+SEx9HazxxrcURtNBemHlx9bebUYV0Ue2xgkK4vUFw2vyD3WVaXBJTQQkkKsGlUZy27NgOqqNxR3igQqloM1oVg7+NZqRvuAhoTTkhA9btp7l6CZ4tp8JfljO9b9TAw=
23+ distributions : dists
24+ skip_cleanup : true
25+ skip_upload_docs : true
15626
157- cache :
158- pip : true
159- directories :
160- - $HOME/.pre-commit
161- - $HOME/Library/Caches/Homebrew
27+ cache : pip
16228
16329install :
16430- pip install tox
16531
166- script :
167- - tox -e${TOXENV-python}
168-
169- after_failure :
170- - echo "Here's a list of installed Python packages:"
171- - pip list --format=columns
172- - py_log=/home/travis/build/cherrypy/magicbus/.tox/python/log/python-0.log
173- - echo Outputting python invocation log from $py_log
174- - cat $py_log
32+ script : tox
0 commit comments