forked from ipython-contrib/jupyter_contrib_nbextensions
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
147 lines (147 loc) · 5.63 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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# http://travis-ci.org/#!/ipython-contrib/jupyter_contrib_nbextensions
language: python
dist: trusty # required for pandoc>1.9.1
sudo: false
addons:
apt_packages:
- pandoc # for preprocessor tests
- inkscape # for preprocessor tests
# sauce_connect is used for connecting to saucelabs for js testing. Currently
# we don't use saucelabs, as this only works when env vars are set for sauce
# un & pw, which can't be made available securely in pull request builds. As
# a result, we must do any js testng locally with a headless browser.
# sauce_connect: true
matrix:
fast_finish: true
# Use the built-in venv for linux builds
# 3.5 as it isn't installed by default. Let tox handle other versions.
include:
# packaging sanity check
- os: linux
python: '3.4'
env: TOXENV=check
# python linting
- os: linux
python: '3.4'
env: TOXENV=lint
# check docs build correctly
- os: linux
python: '3.4'
env: TOXENV=docs_build
# check docs links
- os: linux
python: '3.4'
env: TOXENV=docs_linkcheck
# check that conda build/install works
- os: linux
python: '3.4'
env: TOXENV=condarecipe
# linux, various python and notebook versions
- os: linux
python: '3.4'
env: TOXENV=py27-notebook
- os: linux
python: '3.3'
env: TOXENV=py33-notebook
- os: linux
python: '3.4'
env: TOXENV=py34-notebook40
- os: linux
python: '3.4'
env: TOXENV=py34-notebook41
- os: linux
python: '3.4'
env: TOXENV=py34-notebook42
- os: linux
python: '3.4'
env: TOXENV=py34-notebook43
- os: linux
python: '3.4'
env: TOXENV=py34-notebook44
- os: linux
python: '3.4'
env: TOXENV=py34-notebook4x
- os: linux
python: '3.5'
env: TOXENV=py35-notebook
- os: linux
python: '3.6'
env: TOXENV=py36-notebook
- os: linux
python: '3.5'
env: TOXENV=py35-notebook50
# OSX tests, python 2 & 3
# Use generic language on osx, get python via terryfy during before_install
- os: osx
language: generic
env: OSX_PYTHON=2.7 TOXENV=py27-notebook
- os: osx
language: generic
env: OSX_PYTHON=3.5 TOXENV=py35-notebook
# finally, appveyor downloads from windows platform
- os: linux
python: '3.4'
env: TOXENV=appveyorartifacts
allow_failures:
- env: TOXENV=appveyorartifacts
- env: TOXENV=docs_linkcheck
- env: TOXENV=lint
- env: TOXENV=py35-notebook50
env:
global:
- LD_PRELOAD=/lib/x86_64-linux-gnu/libSegFault.so
- SEGFAULT_SIGNALS=all
before_install:
- uname -a
- id -un
- id -Gn
# install python on osx
- 'if [[ ${OSX_PYTHON} ]]; then curl https://raw.githubusercontent.com/MacPython/terryfy/12a4641c4e922eb4a63c82732df8d0c5045430af/travis_tools.sh > travis_tools.sh; fi'
- 'if [[ ${OSX_PYTHON} ]]; then source travis_tools.sh; fi'
- 'if [[ ${OSX_PYTHON} ]]; then get_python_environment macpython $OSX_PYTHON venv; fi'
# install 3.4 as it's the default for tox environments like clean, check
- 'if [[ ${OSX_PYTHON} ]] && [[ ${OSX_PYTHON} != "3.4" ]]; then install_macpython 3.4; fi'
# check which python installs are present/active
- 'if [[ ${OSX_PYTHON} ]]; then echo "$PYTHON_EXE"; fi;'
- 'if [[ ${OSX_PYTHON} ]]; then if [[ $(which python ) ]]; then ls -l $(which python ); else echo "missing"; fi; fi'
- 'if [[ ${OSX_PYTHON} ]]; then if [[ $(which python2.7) ]]; then ls -l $(which python2.7); else echo "missing"; fi; fi'
- 'if [[ ${OSX_PYTHON} ]]; then if [[ $(which python3.3) ]]; then ls -l $(which python3.3); else echo "missing"; fi; fi'
- 'if [[ ${OSX_PYTHON} ]]; then if [[ $(which python3.4) ]]; then ls -l $(which python3.4); else echo "missing"; fi; fi'
- 'if [[ ${OSX_PYTHON} ]]; then if [[ $(which python3.5) ]]; then ls -l $(which python3.5); else echo "missing"; fi; fi'
# install conda for conda recipe env
- 'if [[ ${TOXENV} == "condarecipe" ]]; then wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh; fi'
- 'if [[ ${TOXENV} == "condarecipe" ]]; then bash miniconda.sh -b -p $HOME/miniconda; fi'
- 'if [[ ${TOXENV} == "condarecipe" ]]; then export PATH="$HOME/miniconda/bin:$PATH"; fi'
- 'if [[ ${TOXENV} == "condarecipe" ]]; then hash -r; fi'
- 'if [[ ${TOXENV} == "condarecipe" ]]; then conda config --set always_yes yes --set changeps1 no; fi'
- 'if [[ ${TOXENV} == "condarecipe" ]]; then conda info -a; fi # Useful for debugging any issues with conda'
# conda 4.3.14 & conda-build 2.1.6,2.1.7 seem to fail with signals TypError on travis.
# conda's auto-update strategy also means that installing or updating anything else will cause
# conda to attempt to update itself.
# Thus instead of running
# conda update conda
# we install conda & conda-build together, specifying the versions that we
# wish to avoid
- 'if [[ ${TOXENV} == "condarecipe" ]]; then conda install "conda!=4.3.14" "conda-build!=2.1.6,!=2.1.7"; fi'
- 'if [[ ${TOXENV} == "condarecipe" ]]; then conda info -a; fi # Useful for debugging any issues with conda'
- 'if [[ ${TOXENV} == "condarecipe" ]]; then git fetch --unshallow; fi'
install:
- pip install tox
- virtualenv --version
script:
- tox -v -e ${TOXENV}
after_script:
# test if TOXENV not in set
# see http://unix.stackexchange.com/a/111518
- 'if ! [[ ${TOXENV} =~ ^(appveyorartifacts|check|condarecipe|docs|lint)$ ]]; then tox -e coveralls,codecov; fi'
after_failure:
- more .tox/log/* | cat
- more .tox/*/log/* | cat
after_success:
before_cache:
- rm -rf $HOME/.cache/pip/log
cache:
directories:
- $HOME/.cache/pip
notifications:
email: false