/
.travis.yml
96 lines (84 loc) · 2.68 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
language: python
env:
global:
- PYENV_ROOT="$HOME/.pyenv"
- PYENV="$PYENV_ROOT/bin/pyenv"
#- BENCHMARK_DIR="$HOME/.benchmarks"
#- BENCHMARK_SKIP="--benchmark-skip"
matrix:
include:
# dedicated job to just build the docs
- python: "3.6"
env: BIDICT_BUILD_DOCS_INSTEAD=1
# jobs to test on all supported python versions on Linux
- python: "pypy"
env: PYENV_PYTHON_VER=pypy2.7-portable-5.9.0
- python: "pypy3"
env: PYENV_PYTHON_VER=pypy3.5-portable-5.9.0
- python: "2.7"
env: PYENV_PYTHON_VER=2.7.14
- python: "3.5"
env: PYENV_PYTHON_VER=3.5.3
- python: "3.6"
# only generate coverage report for this one job
env: PYENV_PYTHON_VER=3.6.3 BIDICT_COVERAGE_ENABLE=1
# test all of the above again on macOS
- python: "pypy"
env: PYENV_PYTHON_VER=pypy2.7-portable-5.9.0
os: osx
- python: "pypy3"
env: PYENV_PYTHON_VER=pypy3.5-portable-5.9.0
os: osx
- python: "2.7"
env: PYENV_PYTHON_VER=2.7.14
os: osx
- python: "3.5"
env: PYENV_PYTHON_VER=3.5.3
os: osx
- python: "3.6"
env: PYENV_PYTHON_VER=3.6.3
os: osx
install:
# based on https://github.com/frol/flask-restplus-server-example/blob/018f48e5/.travis.yml
- |
if [[ -n "$PYENV_PYTHON_VER" ]]; then
if [[ -f "$PYENV" ]]; then
pushd "$PYENV_ROOT" && git pull && popd
else
rm -rf "$PYENV_ROOT" && git clone --depth 1 https://github.com/yyuu/pyenv.git "$PYENV_ROOT"
fi
"$PYENV" install --skip-existing "$PYENV_PYTHON_VER"
export PYTHON="$PYENV_ROOT/versions/$PYENV_PYTHON_VER/bin/python"
$PYTHON -m ensurepip --upgrade
$PYTHON -m pip install --upgrade virtualenv
export VENV="$HOME/virtualenvs/$PYENV_PYTHON_VER"
$PYTHON -m virtualenv --python="$PYTHON" "$VENV"
source "$VENV/bin/activate"
fi
- travis_retry pip install -e .[test]
- test -z "$BIDICT_COVERAGE_ENABLE" || travis_retry pip install coveralls
script:
- if [[ -n "$BIDICT_BUILD_DOCS_INSTEAD" ]]; then ./build-docs.sh; else ./test.sh; fi
cache:
directories:
- $HOME/.cache/pip
- $HOME/.hypothesis
- $PYENV_ROOT
#- $BENCHMARK_DIR
before_cache:
- rm -rf $HOME/.cache/pip/log
after_success:
- test -z "$BIDICT_COVERAGE_ENABLE" || coveralls
sudo: false
notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/bf64fb45a633c0935b9b
deploy:
provider: pypi
user: jab
password:
secure: B9LLgXkTbtjeC/IbH4wh9PEBzvKEAuYo3EBNW5f1xuLqVqtsysIyxJa5ar/FQ4qwUCBwZPFAXFurN3lLzRhb2Tc04YQ0GYVv6f8lkzwrjoWau4iB9Qt/nnvdRa7KryEJvtenHCAnwoEUaADCjkZjwo6fIA0hEOLB6/AYfhfgXYA=
on:
tags: true
branch: master