-
Notifications
You must be signed in to change notification settings - Fork 3
/
.travis.yml
67 lines (64 loc) · 1.75 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
language: python
dist: xenial
group: travis_latest
services:
- mysql
- postgresql
addons:
# Use postgresql 9.3+ to get commit-lock testing;
# RelStorage works best on/dropped support for,
# older PG
postgresql: "9.6"
python:
- pypy
- 2.7
- 3.5
- 3.6
- 3.7
- 3.8
- pypy3
env:
global:
- ENV=travis
- PYTHONHASHSEED=42
- PYTHONPATH=.travis
- CC="ccache gcc"
- CFLAGS="-g -pipe -std=gnu++11"
- CXXFLAGS="-g -pipe -std=gnu++11"
- Z_FAST="--processes 1 --loops 1 --values 1 --warmups 0 --object-counts 100"
- Z_RUN="coverage run .travis/cover.py"
# We can test each one separately, but it
# uses less build jobs in total to run them together
# which is overall a bit faster.
#- ENV=mysql
#- ENV=postgres
#- ENV=file
matrix:
fast_finish: true
before_script:
# Coverage is very slow on PyPy. 2 minutes for CPython, more than 8 for pypy
- if [[ $TRAVIS_PYTHON_VERSION == pypy* ]]; then Z_RUN="zodbshootout"; fi
script:
- echo $Z_RUN
- coverage run -m zope.testrunner --test-path=src --auto-color --auto-progress
- $Z_RUN $Z_FAST -c 1 --log .travis/log.conf .travis/$ENV.conf --btrees --min-objects 100
- $Z_RUN $Z_FAST -c 3 --log INFO .travis/$ENV.conf --min-objects 200 --threads --gevent -o /tmp/f.json --zap force --include-mapping no
- $Z_RUN $Z_FAST -c 3 --blobs --threads --include-mapping no .travis/$ENV.conf add cold
after_success:
- coverage combine
- coveralls
notifications:
email: false
install:
- pip install -U pip setuptools
- pip install -U coveralls coverage
- pip install -U "gevent>=1.5a1"
- pip install -U -e .[test]
- .travis/setup-$ENV.sh
cache:
pip: true
directories:
- $HOME/.wheelhouse
- $HOME/.ccache
before_cache:
- rm -f $HOME/.cache/pip/log/debug.log