forked from LABSN/expyfun
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
86 lines (79 loc) · 2.67 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
language: c
sudo: false
cache:
apt: true
env:
# The _EXPYFUN_SILENT is a workaround for a silly Py3/Travis bug
global: PYTHON_VERSION=3.7 DISPLAY=:99.0
CONDA_DEPENDENCIES="scipy matplotlib coverage setuptools pytest pytest-cov pytest-timeout pillow"
PIP_DEPENDENCIES="codecov pytest-sugar codespell pydocstyle numpydoc check-manifest sounddevice"
matrix:
exclude:
# Exclude the default Python 2.7 build
- python: 2.7
include:
- os: linux
dist: xenial
env: _EXPYFUN_SILENT=true
addons:
apt:
packages:
- ffmpeg
- libglu1-mesa
- os: osx
language: objective-c
- os: linux
dist: trusty
env: PYTHON_VERSION=2.7 DEPS=minimal _EXPYFUN_SILENT=true
addons:
apt:
packages:
- libavbin0
- libavbin-dev
before_install:
# Rvm overrides cd with a function so that it can hook into it to run
# some scripts, see https://github.com/travis-ci/travis-ci/issues/8703
- if [ "${TRAVIS_OS_NAME}" == "osx" ]; then
unset -f cd;
export CONDA_OS="MacOSX";
else
export CONDA_OS="Linux";
fi;
# Easy dependencies (pulseaudio, scipy, matplotlib, pytest, coverage, codecov, flake8)
- git clone git://github.com/astropy/ci-helpers.git --depth=1
- source ci-helpers/travis/setup_conda.sh
- if [ "${PYTHON_VERSION}" != "2.7" ]; then
pip install rtmixer;
fi
# install FFmpeg, sound drivers
- git clone --depth=1 git://github.com/LABSN/sound-ci-helpers.git;
- if [ "${TRAVIS_OS_NAME}" == "osx" ]; then
brew install ffmpeg;
sound-ci-helpers/macos/setup_sound.sh;
else
/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -screen 0 1400x900x24 -ac +extension GLX +render -noreset;
sound-ci-helpers/linux/setup_sound.sh;
fi;
- python -m sounddevice
- pip install -q flake8
# Minimal or full dependencies (pandas, mne-python, h5py, joblib)
- if [ "${DEPS}" == "minimal" ]; then
pip install "pyglet<1.4";
else
conda install --yes --quiet pandas h5py;
pip install -q joblib pyglet mne;
fi;
# Import matplotlib ahead of time so it doesn't affect test timings
# (e.g., building fc-cache)
- python -c "import matplotlib.pyplot as plt"
install:
- python setup.py develop
script:
- pytest --cov=expyfun expyfun
- make flake
- make codespell-error
- make docstyle
- make check-manifest
after_success:
# Need to run from source dir to execute appropriate "git" commands
- codecov