-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
101 lines (99 loc) · 2.92 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
sudo: false
matrix:
allow_failures:
- os: osx
- python: 3.7-dev
- python: pypy3.3-5.2-alpha1
- env: TRAVIS_NODE_VERSION=9
include:
- language: python
python: 2.7
env: TRAVIS_NODE_VERSION=4.8
- language: python
python: 3.3
env: TRAVIS_NODE_VERSION=4.8
- language: python
python: 3.4
env: TRAVIS_NODE_VERSION=6.12
- language: python
python: 3.5
env: TRAVIS_NODE_VERSION=6.12
- language: python
python: 3.6
env: TRAVIS_NODE_VERSION=8.9
- language: python
python: 3.7-dev
env: TRAVIS_NODE_VERSION=9
- language: python
python: pypy
env: TRAVIS_NODE_VERSION=4.8
- language: python
python: pypy3
env: TRAVIS_NODE_VERSION=6.12
- language: python
python: pypy3.3-5.2-alpha1
env: TRAVIS_NODE_VERSION=8.9
# test different versions of Node.js on osx
- language: node_js
node_js: 6.12
os: osx
env: TRAVIS_PYTHON_VERSION=3.4.7
- language: node_js
node_js: 8.9
os: osx
env: TRAVIS_PYTHON_VERSION=3.5.4
- language: node_js
node_js: 9.3
os: osx
env: TRAVIS_PYTHON_VERSION=3.6.4
before_install:
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
brew update || brew update ;
brew install pyenv ;
brew outdated pyenv || brew upgrade pyenv ;
pyenv install $TRAVIS_PYTHON_VERSION ;
pyenv global $TRAVIS_PYTHON_VERSION ;
eval "$(pyenv init -)" ;
python --version ;
python -m pip install --user virtualenv ;
python -m virtualenv ~/.venv ;
source ~/.venv/bin/activate ;
else
rm -rf ~/.nvm ;
git clone https://github.com/creationix/nvm.git ~/.nvm ;
(cd ~/.nvm && git checkout `git describe --abbrev=0 --tags` );
source ~/.nvm/nvm.sh ;
nvm install "$TRAVIS_NODE_VERSION" ;
fi
- node --version
- npm --version
install:
- pip install nose coverage flake8
# must be installed first, as this writes package_json into egg-info
- pip install calmjs
- python setup.py develop
script:
- flake8 setup.py src
# with pypy version >= 2.5.0 (maybe earlier, definitely after 2.2.1),
# coverage fails to produce meaningful results running with nose.
# Check that and only use nose (which is only somewhat useful only
# when errors happen) with CPython. This happened on the prior
# changeset (ee599b4d) where checks and testing with callbacks that
# lead to recursive calling of functions were added.
- if [[ $TRAVIS_PYTHON_VERSION == pypy* ]]; then
coverage run --include=src/* -m unittest calmjs.bower.tests.make_suite ;
else
nosetests --with-coverage --cover-package=calmjs.bower --with-doctest ;
fi
after_success:
- coverage report -m
# only submit coverage when testing under linux.
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
pip install coveralls ;
coveralls ;
fi
branches:
only:
- testing
- master
- 1.0.x