-
Notifications
You must be signed in to change notification settings - Fork 4
/
.travis.yml
49 lines (49 loc) · 1.59 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
language: python
python:
- "2.7"
addons:
# ecoControl requires postgreSQL 9.3 or higher
postgresql: "9.3"
before_install:
# Use conda to speed up builds
- wget http://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -O miniconda.sh
- bash miniconda.sh -b -p $HOME/miniconda
- export PATH="$HOME/miniconda/bin:$PATH"
- hash -r
- conda config --set always_yes yes --set changeps1 no
- conda update -q conda
# Useful for debugging any issues with conda
- conda info -a
# Fix a crash with multiprocessing on Travis
- sudo rm -rf /dev/shm
- sudo ln -s /run/shm /dev/shm
install:
# Create python environment with pre-installed numpy scipy dateutil cython
- conda create --yes -n test-environment python=$TRAVIS_PYTHON_VERSION pip numpy=1.8.1 scipy=0.14.0 cython=0.20.2 dateutil
- source activate test-environment
# Install all other dependencies via pip
- pip install -r requirements_travis.txt
before_script:
# Compile Holt Winters extension
- export PROJECT_HOME="$(pwd)"
- cd server/forecasting/statistical/
- python build_extension.py build_ext --inplace
- cd $PROJECT_HOME
# Set up database
- psql -c "CREATE ROLE ecocontrol LOGIN PASSWORD 'sec-i' SUPERUSER CREATEDB CREATEROLE;" -U postgres
- createdb ecocontrol
- python manage.py syncdb --noinput
script:
# Run all tests
- coverage run --source='.' manage.py test
# Print coverage report
- coverage report
after_success:
# Send coverage information to coveralls
- coveralls
notifications:
email:
recipients:
on_success: change
on_failure: change