-
Notifications
You must be signed in to change notification settings - Fork 5k
/
.travis.yml
103 lines (91 loc) · 2.76 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
# http://travis-ci.org/#!/ipython/ipython
language: python
cache:
directories:
- $HOME/.cache/bower
- $HOME/.cache/pip
python:
- 3.6
env:
global:
- PATH=$TRAVIS_BUILD_DIR/pandoc:$PATH
matrix:
- GROUP=js/notebook
- GROUP=python
- GROUP=js/base
- GROUP=js/services
before_install:
- pip install --upgrade pip
- pip install --upgrade setuptools wheel nose coverage codecov
- nvm install 6.9.2
- nvm use 6.9.2
- node --version
- npm --version
- npm upgrade -g npm
- npm install
- |
if [[ $GROUP == js* ]]; then
npm install -g [email protected] [email protected]
fi
- |
if [[ $GROUP == docs ]]; then
pip install -r docs/doc-requirements.txt
pip install --upgrade pytest
fi
- |
if [[ $GROUP == selenium ]]; then
pip install --upgrade selenium pytest
# Install Webdriver backend for Firefox:
wget https://github.com/mozilla/geckodriver/releases/download/v0.19.1/geckodriver-v0.19.1-linux64.tar.gz
mkdir geckodriver
tar -xzf geckodriver-v0.19.1-linux64.tar.gz -C geckodriver
export PATH=$PATH:$PWD/geckodriver
fi
- pip install "attrs>=17.4.0"
install:
- pip install --pre .[test] $EXTRA_PIP
- pip freeze
- wget https://github.com/jgm/pandoc/releases/download/1.19.1/pandoc-1.19.1-1-amd64.deb && sudo dpkg -i pandoc-1.19.1-1-amd64.deb
script:
- jupyter kernelspec list
- |
symlinks=$(find . -type l| grep -v './node_modules/' | grep -v './git-hooks')
if [[ $(echo $symlinks) ]]; then
echo "Repository contains symlinks which won't work on windows:"
echo $symlinks
echo ""
false
else
true
fi
- 'if [[ $GROUP == js* ]]; then travis_retry python -m notebook.jstest ${GROUP:3}; fi'
- 'if [[ $GROUP == python ]]; then nosetests -v --exclude-dir notebook/tests/selenium --with-coverage --cover-package=notebook notebook; fi'
- 'if [[ $GROUP == selenium ]]; then py.test -sv notebook/tests/selenium; fi'
- |
if [[ $GROUP == docs ]]; then
EXIT_STATUS=0
make -C docs/ html || EXIT_STATUS=$?
if [[ $TRAVIS_EVENT_TYPE == cron ]]; then
make -C docs/ linkcheck || EXIT_STATUS=$?;
fi
pytest --nbval --current-env docs || EXIT_STATUS=$?
exit $EXIT_STATUS
fi
matrix:
include:
- python: 3.6
env:
- GROUP=selenium
- JUPYTER_TEST_BROWSER=firefox
- MOZ_HEADLESS=1
addons:
firefox: 57.0
- python: 3.5
env: GROUP=python
- python: 3.7
dist: xenial
env: GROUP=python
- python: 3.6
env: GROUP=docs
after_success:
- codecov