-
Notifications
You must be signed in to change notification settings - Fork 49
/
.travis.yml
125 lines (114 loc) · 4.54 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
language: python
python:
- "2.7"
sudo: false
cache:
directories:
- $HOME/xspec
addons:
apt:
packages: &default_apt
- build-essential
- gfortran
- flex
- bison
# We use matrix include so that xspec builds (which are more complicated and long) are started first
matrix:
allow_failures:
- python: "3.5"
fast_finish: true
include:
- env: XSPECVER="12.9.0i" FITS="astropy" INSTALL_TYPE=install TEST=smoke MATPLOTLIBVER=1.5
python: "2.7"
sudo: required
dist: trusty
- env: XSPECVER="12.8.2q" FITS="astropy" INSTALL_TYPE=develop TEST=submodule MATPLOTLIBVER=1.5
python: "2.7"
sudo: required
dist: trusty
- env: XSPECVER="12.9.0i" FITS="astropy" INSTALL_TYPE=develop TEST=submodule MATPLOTLIBVER=1.5 MKL=nomkl
python: "2.7"
sudo: required
dist: trusty
- env: XSPECVER="12.9.0i" FITS="astropy" INSTALL_TYPE=develop TEST=submodule MATPLOTLIBVER=1.5
python: "3.5"
sudo: required
dist: trusty
- env: XSPECVER="12.9.0i" FITS="astropy" INSTALL_TYPE=develop TEST=submodule MATPLOTLIBVER=1.5
python: "2.7"
sudo: required
dist: trusty
- env: INSTALL_TYPE=install TEST=package MATPLOTLIBVER=1.5
python: "2.7"
- env: FITS="astropy" INSTALL_TYPE=develop TEST=submodule MATPLOTLIBVER=1.5
python: "2.7"
- env: FITS="astropy" INSTALL_TYPE=install TEST=package MATPLOTLIBVER=1.4 NUMPYVER=1.9
python: "2.7"
- env: FITS="astropy" INSTALL_TYPE=install TEST=package MATPLOTLIBVER=1.5 NUMPYVER=1.10
python: "2.7"
allow_failures:
- env: XSPECVER="12.8.2q" FITS="astropy" INSTALL_TYPE=develop TEST=submodule MATPLOTLIBVER=1.5
env: FITS="pyfits" INSTALL_TYPE=develop TEST=submodule MATPLOTLIBVER=1.4 # 1.5 does not support numpy 1.8, required by pyfits
before_install:
- export LIBGFORTRANVER="1.0"
- export SHERPA_CHANNEL=https://conda.anaconda.org/sherpa
- export MINICONDA=/home/travis/miniconda
- wget http://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -O miniconda.sh
- chmod +x miniconda.sh
- ./miniconda.sh -b -p $MINICONDA
- export PATH=$MINICONDA/bin:$PATH
- conda update --yes conda
- if [ -n "${MATPLOTLIBVER}" ]; then MATPLOTLIB="matplotlib=${MATPLOTLIBVER}"; fi
- if [ -n "${NUMPYVER}" ]; then NUMPY="numpy=${NUMPYVER}"; fi
- echo ${MATPLOTLIB} ${NUMPY} ${FITS}
- conda create --yes -n build python=$TRAVIS_PYTHON_VERSION
- source activate build
- if [ -n "${FITS}" ]; then conda install --yes -c ${SHERPA_CHANNEL} ${FITS} ${MKL}; fi
- conda install --yes python=$TRAVIS_PYTHON_VERSION pip ${MATPLOTLIB} ${NUMPY} ${MKL} libgfortran=$LIBGFORTRANVER
- conda config --add channels ${SHERPA_CHANNEL}
- pip install -r test_requirements.txt
- if [ ${TEST} == package ];
then pip install ./sherpa-test-data;
git submodule deinit -f .;
fi
- if [ -n "${XSPECVER}" ];
then DS9_SITE=http://ds9.si.edu/download/linux64/;
XPA_SITE=http://ds9.si.edu/download/linux64_5/;
DS9_TAR=ds9.linux64.7.3.2.tar.gz;
XPA_TAR=xpa.linux64_5.2.1.14.tar.gz;
wget $DS9_SITE$DS9_TAR;
wget $XPA_SITE$XPA_TAR;
THIS_DIR=`pwd`;
cd $MINICONDA/bin; tar xf $THIS_DIR/$DS9_TAR; tar xf $THIS_DIR/$XPA_TAR; cd -;
export DISPLAY=:99;
/sbin/start-stop-daemon --start --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac -screen 0 1280x1024x16;
fi
- if [ -n "${XSPECVER}" ];
then sudo apt-get install -qq libwcs4 wcslib-dev libx11-dev libsm-dev libxrender-dev;
conda install --yes -c https://conda.anaconda.org/cxc/channel/dev xspec-modelsonly=${XSPECVER};
export HEADAS=$MINICONDA/envs/build/Xspec/spectral;
export LD_LIBRARY_PATH=$MINICONDA/envs/build/Xspec/x86_64-unknown-linux-gnu-libc2.15-0/lib/;
sed -i.orig s/#with-xspec=True/with-xspec=True/g setup.cfg;
sed -i.orig "s|#xspec_lib_dirs = None|xspec_lib_dirs=$LD_LIBRARY_PATH|g" setup.cfg;
fi
- if [ ${TEST} == smoke ];
then git submodule deinit -f .;
fi
install:
- python setup.py $INSTALL_TYPE &> install.log
script:
- if [ -n "${XSPECVER}" ]; then XSPECTEST="-x"; fi
- if [ -n "${FITS}" ] ; then FITSTEST="-f ${FITS}"; fi
- SMOKEVARS="${XSPECTEST} ${FITSTEST} -v 3"
- if [ ${TEST} == submodule ]; then pip install pytest-cov; python setup.py test -a "--cov sherpa --cov-report term"; fi
- if [ ${TEST} == smoke ];
then cd /home;
sherpa_smoke ${SMOKEVARS};
fi
- if [ ${TEST} == package ];
then cd $HOME;
sherpa_test;
fi
notifications:
email:
- olaurino@cfa.harvard.edu