forked from mhvk/baseband-tasks
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
146 lines (117 loc) · 5.47 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
# We set the language to c because python isn't supported on the MacOS X nodes
# on Travis. However, the language ends up being irrelevant anyway, since we
# install Python ourselves using conda.
language: c
os:
- linux
# Setting sudo to false opts in to Travis-CI container-based builds.
sudo: false
# The apt packages below are needed for sphinx builds. A full list of packages
# that can be included can be found here:
#
# https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise
addons:
apt:
packages:
- graphviz
- texlive-latex-extra
- dvipng
env:
global:
# The following versions are the 'default' for tests, unless
# overidden underneath. They are defined here in order to save having
# to repeat them for all configurations.
- PYTHON_VERSION=3.7
- NUMPY_VERSION=stable
- ASTROPY_VERSION=stable
- MAIN_CMD='python setup.py'
- SETUP_CMD='test'
- USE_PYFFTW=False
- USE_PINT=False
- EVENT_TYPE='pull_request push'
# For this package-template, we include examples of Cython modules,
# so Cython is required for testing. If your package does not include
# Cython code, you can set CONDA_DEPENDENCIES=''
- CONDA_DEPENDENCIES=''
- CONDA_DEPENDENCIES_DOC='sphinx-astropy'
# List other runtime dependencies for the package that are available as
# pip packages here.
- PIP_DEPENDENCIES=''
# Conda packages for affiliated packages are hosted in channel
# "astropy" while builds for astropy LTS with recent numpy versions
# are in astropy-ci-extras. If your package uses either of these,
# add the channels to CONDA_CHANNELS along with any other channels
# you want to use.
- CONDA_CHANNELS='astropy-ci-extras astropy conda-forge'
# If there are matplotlib or other GUI tests, uncomment the following
# line to use the X virtual framebuffer.
# - SETUP_XVFB=True
# If you want to ignore certain flake8 errors, you can list them
# in FLAKE8_OPT, for example:
# - FLAKE8_OPT='--ignore=E501'
- FLAKE8_OPT=''
matrix:
# Don't wait for allowed failures
fast_finish: true
include:
# Slow ones first... Try Astropy development version on new python
- env: ASTROPY_VERSION=development
# Check for sphinx doc build warnings.
- env: SETUP_CMD='build_sphinx -w'
USE_PYFFTW=True
USE_PINT=True
PIP_DEPENDENCIES='jplephem'
CONDA_DEPENDENCIES='scipy pyfftw'
# Check Python 3 with stable astropy and numpy, also verifying coverage.
- env: SETUP_CMD='test --coverage'
USE_PYFFTW=True
USE_PINT=True
PIP_DEPENDENCIES='jplephem'
CONDA_DEPENDENCIES='scipy pyfftw'
# Check oldest supported versions.
- env: PYTHON_VERSION=3.5 NUMPY_VERSION=1.14 ASTROPY_VERSION=3.1
# Make sure that egg_info works without dependencies
- env: SETUP_CMD='egg_info'
# Do a PEP8/pyflakes test with flake8 (see setup.cfg for options)
- env: MAIN_CMD="flake8 --count scintillometry" SETUP_CMD=''
before_install:
# If there are matplotlib tests, comment these out to
# Make sure that interactive matplotlib backends work
# - export DISPLAY=:99.0
# - sh -e /etc/init.d/xvfb start
- sudo apt-get update
- if [[ $USE_PYFFTW == True ]]; then
sudo apt-get install -y libfftw3-dev libfftw3-doc libfftw3-double3 libfftw3-single3;
fi
install:
# We now use the ci-helpers package to set up our testing environment.
# This is done by using Miniconda and then using conda and pip to install
# dependencies. Which dependencies are installed using conda and pip is
# determined by the CONDA_DEPENDENCIES and PIP_DEPENDENCIES variables,
# which should be space-delimited lists of package names. See the README
# in https://github.com/astropy/ci-helpers for information about the full
# list of environment variables that can be used to customize your
# environment. In some cases, ci-helpers may not offer enough flexibility
# in how to install a package, in which case you can have additional
# commands in the install: section below.
- git clone --depth 1 git://github.com/astropy/ci-helpers.git
- source ci-helpers/travis/setup_conda.sh
# As described above, using ci-helpers, you should be able to set up an
# environment with dependencies installed using conda and pip, but in some
# cases this may not provide enough flexibility in how to install a
# specific dependency (and it will not be able to install non-Python
# dependencies). Therefore, you can also include commands below (as
# well as at the start of the install section or in the before_install
# section if they are needed before setting up conda) to install any
# other dependencies.
- if [[ $USE_PINT == True ]]; then
git clone https://github.com/nanograv/PINT.git;
(cd PINT && pip install .)
fi
script:
- $MAIN_CMD $SETUP_CMD
after_success:
# If coveralls.io is set up for this package, uncomment the line
# below and replace "packagename" with the name of your package.
# The coveragerc file may be customized as needed for your package.
- if [[ $SETUP_CMD == *coverage* ]]; then coveralls --rcfile='scintillometry/tests/coveragerc'; fi