forked from numenta/nupic-legacy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
105 lines (90 loc) · 3.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
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
sudo: false
branches:
except:
- gh-pages
language: cpp
os:
- linux
- osx
compiler:
- clang
- gcc
addons:
apt:
sources:
- deadsnakes
- ubuntu-toolchain-r-test
packages:
- python2.7
- python2.7-dev
- python-virtualenv
- python-numpy
# install gcc-4.8 for C++11 compatibility, #TODO remove when Travis has gcc>=4.8, (it's used for clang too, in coveralls)
- g++-4.8
- cmake
- cmake-data
- tree
env:
global:
- NUPIC=$TRAVIS_BUILD_DIR
- PATH=$TRAVIS_BUILD_DIR/python/bin:$PATH
# AWS keys are for manual uploads of linux wheel to S3.
- AWS_ACCESS_KEY_ID=AKIAIGHYSEHV3WFKOWNQ
# AWS_SECRET_ACCESS_KEY encrypted below
- secure: "pYsMDbNp8k2i0d9p5mf/9TlDzxt2FiiR1QJV7QUn+S2/r372VYdZaplL+s9ItVGCGFpAyKk7HXcwm//DKw/ZKb6UlDJm3Fph9m+3aDDIiVFNB7g1uro+Yg8nIGuV8qZEtIaHRtR1zOt1EufoR9dg1Mq8ryRggN9rrB0FvCxUZAQ="
# PyPi credentials for manual uploads to Pypi on release.
- PYPI_USERNAME=numenta
# PYPI_PASSWD encrypted below.
- secure: "elm3E3MwpbZqTCz+EHPQ7CEBwoBvRgqS3q5MHY+jUcpdrWeSjmy7TZoRN5+rAjDQYuR5g33pMXnyeRGw/DG7Xa5FG0g3PoMnO6fnIe7Hs7gPlDXbwilfYxfi462N7Y9aAGPFuvNkZsgd0dfwXKwNEiZ5hYfsbFFwHMeXMQA/SA8="
- NUPIC_DEPLOYMENT_BUILD=true
matrix:
# This excludes OSX GCC builds.
exclude:
- os: osx
compiler: gcc
git:
submodules: false
notifications:
irc:
channels:
- "irc.freenode.net#nupic-hackers"
webhooks:
urls:
- https://webhooks.gitter.im/e/68f77bae61efa5c931f8
- https://api.keen.io/3.0/projects/5555161e2fd4b1326f14444a/events/travis-webhooks?api_key=a2e613bbb19b9b1f71a5543b7b677563551b4c3fe98534269546ff666ae453f82505791772faefc48682ee882ac7e99d2c3bfae7c7c19db7b5e7bbda34039119e4b42f5bf41bcea62d4ea9731db4a455141be7d5e8c715cb06366922eae0358e84abc2704ce16bb77b01fec3476cbac6
# Successful builds are archived and uploaded to S3 for regression testing.
before_deploy:
- . ./ci/travis/before_deploy.sh
deploy:
# S3 deployment of NuPIC and dependency wheels on every push to master. These
# packages are used in dependent projects like nupic.regression and
# nupic.research.
- provider: s3
access_key_id: AKIAIGHYSEHV3WFKOWNQ
secret_access_key:
secure: "ONG00ZCPpfU/nugFiON3K2q8IMk3nB/aAUj2Ggjf1z0CJS/cvnfIexmJhe+DJCccoco2l5gpiqp7gweH5vXEcyrzTt1I3Z+iFNas2cQ/wF3LjW0NcbdGeC9NN9kGIoOvr8g6L66CUvazYoirgbJO01ktm7LVNeGS3Q1pk36Vp10="
bucket: artifacts.numenta.org
region: us-west-2
local-dir: "dist/wheels"
upload-dir: "numenta/nupic/${TRAVIS_COMMIT}"
skip_cleanup: true
# Only deploy on master from linux/clang job
on:
branch: master
condition:
- "$TRAVIS_OS_NAME == linux"
- "$CC == gcc-4.8"
before_install:
- "if [ ${TRAVIS_OS_NAME:-'linux'} = 'linux' ]; then . ./ci/travis/before_install-linux.sh; fi"
- "if [ ${TRAVIS_OS_NAME:-'linux'} = 'osx' ]; then . ./ci/travis/before_install-osx.sh; fi"
install:
- "if [ ${TRAVIS_OS_NAME:-'linux'} = 'linux' ]; then . ./ci/travis/install-linux.sh; fi"
- "if [ ${TRAVIS_OS_NAME:-'linux'} = 'osx' ]; then . ./ci/travis/install-osx.sh; fi"
script:
- . ./ci/travis/script-run-tests.sh
after_success:
- cd ${TRAVIS_BUILD_DIR}
# Run release script if this is a tagged build.
- "if [ ${TRAVIS_OS_NAME:-'linux'} = 'linux' ]; then . ./ci/travis/after_success-report-coverage-linux.sh; fi"
- "if [ -n \"${TRAVIS_TAG}\" -a \"${TRAVIS_OS_NAME}--${CC}\" = 'linux--gcc-4.8' ]; then . ./ci/travis/after_success-release-linux.sh; fi"
- "if [ -n \"${TRAVIS_TAG}\" -a \"${TRAVIS_OS_NAME}--${CC}\" = 'osx--clang' ]; then . ./ci/travis/after_success-release-osx.sh; fi"