forked from brian-team/brian2genn
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
122 lines (115 loc) · 5.12 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
language: c # We are not using the Python infrastructure
dist: trusty
sudo: required
env:
global:
- secure: "fYNzSW9BZeANbLCX+fluHs9DHQ4IX5mSu/8d3sqJbvkjSMhU7ZEh/AW00i4smfQWcja+3KRyBjjSvTfvYIW3wNlF4AcR63mf1t+D/Wax2OvwGgomvyad1xghD1p0b18UB+ADSxwOaeuhvTUez0tth6QQWLP+gvZJ2D0LmdezMEY="
- secure: "jtMm9VW67fThl/3GCwEapG5atUTIKAI9KYro/xYUjw9nWU28+vV/mNVwqza4G01jPmNeNK9T+hBBH7IOAumU/Sgkw8V0PJHROsBiAUHm3p9IIuQkEUuHwlOUUKYBL9SO74xyabrekf+celG00qnp5XI1qiIR/X5SFWd34HIFnyU="
matrix:
include:
- python: "2.7"
env: PYTHON="2.7" CONDA_PY="27" ARCHITECTURE="x86_64" DEPENDENCIES="stable" ANACONDA_UPLOAD="yes"
os: linux
- python: "3.5"
env: PYTHON="3.5" CONDA_PY="35" ARCHITECTURE="x86_64" DEPENDENCIES="stable" ANACONDA_UPLOAD="no"
os: linux
- python: "3.6"
env: PYTHON="3.6" CONDA_PY="36" ARCHITECTURE="x86_64" DEPENDENCIES="stable" ANACONDA_UPLOAD="no"
os: linux
- python: "2.7"
env: PYTHON="2.7" CONDA_PY="27" ARCHITECTURE="x86_64" DEPENDENCIES="stable" ANACONDA_UPLOAD="no"
os: osx
osx_image: xcode8.3
- python: "3.5"
env: PYTHON="3.5" CONDA_PY="35" ARCHITECTURE="x86_64" DEPENDENCIES="stable" ANACONDA_UPLOAD="no"
os: osx
osx_image: xcode8.3
- python: "3.6"
env: PYTHON="3.6" CONDA_PY="36" ARCHITECTURE="x86_64" DEPENDENCIES="stable" ANACONDA_UPLOAD="no"
os: osx
osx_image: xcode8.3
- python: "2.7"
env: PYTHON="2.7" CONDA_PY="27" ARCHITECTURE="x86_64" DEPENDENCIES="latest" ANACONDA_UPLOAD="no"
os: linux
- python: "3.5"
env: PYTHON="3.5" CONDA_PY="35" ARCHITECTURE="x86_64" DEPENDENCIES="latest" ANACONDA_UPLOAD="no"
os: linux
- python: "3.6"
env: PYTHON="3.6" CONDA_PY="36" ARCHITECTURE="x86_64" DEPENDENCIES="latest" ANACONDA_UPLOAD="no"
os: linux
- python: "2.7"
env: PYTHON="2.7" CONDA_PY="27" ARCHITECTURE="x86_64" DEPENDENCIES="latest" ANACONDA_UPLOAD="no"
os: osx
osx_image: xcode8.3
- python: "3.5"
env: PYTHON="3.5" CONDA_PY="35" ARCHITECTURE="x86_64" DEPENDENCIES="latest" ANACONDA_UPLOAD="no"
os: osx
osx_image: xcode8.3
- python: "3.6"
env: PYTHON="3.6" CONDA_PY="36" ARCHITECTURE="x86_64" DEPENDENCIES="latest" ANACONDA_UPLOAD="no"
os: osx
osx_image: xcode8.3
allow_failures:
env: DEPENDENCIES="latest"
fast_finish: true
# Use miniconda to install binary versions of numpy etc. from continuum
# analytic's repository. Follows an approach described by Dan Blanchard:
# https://gist.github.com/dan-blanchard/7045057
before_install:
- if [ ${PYTHON:0:1} == "2" ]; then
if [ "$TRAVIS_OS_NAME" == "linux" ]; then
travis_retry wget http://repo.continuum.io/miniconda/Miniconda2-latest-Linux-$ARCHITECTURE.sh -O miniconda.sh;
else
travis_retry wget http://repo.continuum.io/miniconda/Miniconda2-latest-MacOSX-$ARCHITECTURE.sh -O miniconda.sh;
fi;
else
if [ "$TRAVIS_OS_NAME" == "linux" ]; then
travis_retry wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-$ARCHITECTURE.sh -O miniconda.sh;
else
travis_retry wget http://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-$ARCHITECTURE.sh -O miniconda.sh;
fi;
fi
- chmod +x miniconda.sh
- ./miniconda.sh -b -p ~/miniconda
- export PATH=~/miniconda/bin:$PATH
# command to install dependencies
install:
- if [ "$DEPENDENCIES" == "stable" ]; then
BRIAN_CHANNEL="brian-team";
else
BRIAN_CHANNEL="brian-team/label/dev";
fi
- travis_retry conda install --yes --quiet -c brian-team py-cpuinfo nose python=$PYTHON
- travis_retry conda install --yes --quiet -c conda-forge -c $BRIAN_CHANNEL brian2
# Install gcc via conda -- the version provided by Ubuntu in this container image is too old
- if [ "$TRAVIS_OS_NAME" == "linux" ]; then conda install --yes --quiet gcc; fi
- cd ../..
- if [ "$DEPENDENCIES" == "latest" ]; then
(cd brian-team/brian2genn/genn; git checkout development)
fi
- export GENN_PATH=$(pwd)/brian-team/brian2genn/genn
- cd brian-team/brian2genn
# command to run tests
script:
- pip install .
- python scripts/run_brian_tests_CPU.py
after_success:
# Install minimal CUDA components to build the conda package and upload to anaconda.org if this is a tagged release in the master branch
- if [[ "$TRAVIS_OS_NAME" == "linux" && $ANACONDA_UPLOAD == 'yes' ]]; then
CUDA_URL=http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_8.0.61-1_amd64.deb;
CUDA_FILE=/tmp/cuda_install.deb;
travis_retry curl $CUDA_URL -o $CUDA_FILE &&
sudo dpkg -i $CUDA_FILE &&
rm -f $CUDA_FILE;
sudo apt-get update -qq -y &&
sudo apt-get install -q -y cuda-core-8-0 cuda-misc-headers-8-0 cuda-cudart-dev-8-0 &&
export CUDA_PATH=/usr/local/cuda-8.0/;
travis_retry conda install --yes --quiet conda-build &&
python scripts/build_conda_packages.py;
if [[ $TRAVIS_PULL_REQUEST == 'false' && $TRAVIS_REPO_SLUG == 'brian-team/brian2genn' && ! -z $TRAVIS_TAG ]]; then
conda install --yes --quiet anaconda-client;
python scripts/conda-server-push.py $TRAVIS_TAG;
fi;
fi
notifications:
email: false