-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
144 lines (123 loc) · 4.38 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
language: python
python:
- "2.7"
cache:
directories:
- $HOME/.cache
sudo: required
dist: trusty
services:
- rabbitmq
compiler:
- gcc
addons:
apt:
packages:
# Pillow dependencies (see
# https://pillow.readthedocs.org/en/latest/installation.html)
- libtiff5-dev
- libjpeg8-dev
- zlib1g-dev
- libfreetype6-dev
- liblcms2-dev
- libwebp-dev
- tcl8.6-dev
- tk8.6-dev
- python-tk
# vips
- libvips-tools
# openjpeg
- libglib2.0-dev
- libjpeg-dev
- libxml2-dev
- libpng12-dev
# openslide
- autoconf
- automake
- libtool
- pkg-config
- libcairo2-dev
- libgdk-pixbuf2.0-dev
- libxml2-dev
- libsqlite3-dev
# girder worker
# - rabbitmq-server
# pandoc for displaying jupyter notebook examples on ReadTheDocs
- pandoc
- pandoc-citeproc
# canvas
- libgif-dev
before_install:
# Fix a travis/boto issue. See
# https://github.com/travis-ci/travis-ci/issues/7940
- sudo rm -f /etc/boto.cfg
- mkdir -p $HOME/.cache/node_modules || true
- ln -sf $HOME/.cache/node_modules .
- nvm install v8
- npm install -g npm
- npm install -g npm-install-retry
- npm --version
- npm prune
- if [ ${TRAVIS_PYTHON_VERSION:0:1} == "3" ]; then export PY3="true"; else export PY2="true"; fi
- GIRDER_VERSION=2.x-maintenance
- GIRDER_WORKER_VERSION=v0.5.1
- ARCHIVE_VERSION=master
- main_path=$PWD
- SSR_task_PATH=$TRAVIS_BUILD_DIR
- build_path=$HOME/build
- mkdir -p $build_path
- girder_path=$HOME/girder
- rm -fr $girder_path
- git clone https://github.com/girder/girder.git $girder_path && git -C $girder_path checkout $GIRDER_VERSION
- ln -sf $main_path $girder_path/plugins/
- girder_worker_path=$HOME/girder_worker
- git clone https://github.com/girder/girder_worker.git $girder_worker_path && git -C $girder_worker_path checkout $GIRDER_WORKER_VERSION
- cp $SSR_task_PATH/plugin_tests/data/girder_worker.cfg $girder_worker_path/girder_worker/worker.local.cfg
- if [ -n "${PY3}" ]; then
sudo pip2 install --no-cache-dir -U setuptools &&
sudo pip2 install --no-cache-dir -U $girder_worker_path'[girder_io,docker]' ;
else
pip install --no-cache-dir -U $girder_worker_path'[girder_io,docker]' ;
fi
- Archive_path=$girder_path/plugins/Archive
- git clone https://github.com/abcsFrederick/Archive.git $Archive_path && git -C $Archive_path checkout $ARCHIVE_VERSION
- export MONGO_VERSION=3.4.19
- export PY_COVG="ON"
- CACHE=$HOME/.cache source $girder_path/scripts/install_mongo.sh >/dev/null 2>/dev/null &
- mkdir /tmp/db
- mongod --dbpath=/tmp/db >/dev/null 2>/dev/null &
- mongod --version
- CACHE=$HOME/.cache CMAKE_VERSION=3.8.0 CMAKE_SHORT_VERSION=3.8 source $girder_path/scripts/install_cmake.sh
- cmake --version
install:
- cd $girder_path
- pip install -U --upgrade-strategy eager -r requirements-dev.txt
- pip install -U --upgrade-strategy eager -e .[worker]
- cd $SSR_task_PATH
- pip install -r script/*/requirements.txt
- cd $Archive_path
- pip install networkx==1.1
- pip install -r requirements.txt
# needs to be installed in dev mode for it to place binaries of cython/c extensions in place
# - pip install -e .
- cd $girder_path
- npm-install-retry
- BABEL_ENV=cover NYC_CWD="$main_path" girder-install web --plugins=jobs,worker,Archive,SSR_task --dev > /dev/null
- pip install jupyter sphinx sphinx_rtd_theme nbsphinx travis-sphinx
# - pip install numpy==1.13.1 # pin numpy for now
- pip freeze # report what we have installed
script:
- cd $girder_worker_path
- python2 -m girder_worker >/tmp/worker.out 2>&1 &
- cd $build_path
- cmake -DPYTHON_COVERAGE:BOOL=${PY_COVG} -DPYTHON_EXECUTABLE:FILEPATH="`which python`" -DPYTHON_VERSION:STRING=${TRAVIS_PYTHON_VERSION} -DRUN_CORE_TESTS:BOOL="OFF" -DTEST_PLUGINS:STRING="SSR_task" $girder_path
- make -j 5 > /dev/null
- JASMINE_TIMEOUT=15000 ctest -VV -j 3
# - travis-sphinx build --source=$main_path/docs
after_failure:
# On failures, show the worker output and other information
- pip freeze
- cat /tmp/worker.out
after_success:
- bash <(curl -s https://codecov.io/bash) -R $SSR_task_PATH -s $girder_path
# - travis-sphinx deploy