91 lines
2.5 KiB
YAML
91 lines
2.5 KiB
YAML
#
|
|
# This is the Travis-CI configuration.
|
|
#
|
|
# The actual dependency installation and test execution is done via tox as a
|
|
# way to share the same process between Travis-CI and Buildbot.
|
|
#
|
|
language: python
|
|
dist: xenial
|
|
|
|
|
|
# Only run tests on push on a few branches.
|
|
# Test on PR should be execute for all branches and forks.
|
|
branches:
|
|
only:
|
|
- trunk
|
|
- /^release-.*$/
|
|
|
|
|
|
env:
|
|
global:
|
|
- TRIAL_REPORTER=text
|
|
# Version which should be removed from the cache.
|
|
- PREVIOUS_PYPY_VERSION=pypy=5.3.1
|
|
# Some python versions (like PYPY) are installed using pyenv and we cache
|
|
# the compiled version.
|
|
- PYENV_ROOT="$HOME/.pyenv"
|
|
|
|
|
|
matrix:
|
|
include:
|
|
- services:
|
|
- docker
|
|
env: PIP=pip TOXENV=wheels
|
|
- python: 2.7
|
|
env: TOXENV=py27-alldeps-withcov-posix,coverage-prepare,codecov-push,coveralls-push
|
|
- python: 2.7
|
|
env: TOXENV=py27-nodeps-withcov-posix,coverage-prepare,codecov-push,coveralls-push
|
|
- python: 3.5
|
|
env: TOXENV=py35-alldeps-withcov-posix,coverage-prepare,codecov-push,coveralls-push
|
|
- python: 3.6
|
|
env: TOXENV=py36-alldeps-withcov-posix,coverage-prepare,codecov-push,coveralls-push
|
|
- python: 3.7
|
|
env: TOXENV=py37-alldeps-withcov-posix,coverage-prepare,codecov-push,coveralls-push
|
|
- python: 3.5
|
|
env: TOXENV=lint
|
|
# We need a builder without IPv6. This is going to be slower than all the
|
|
# others, but that's ok.
|
|
- python: 3.6
|
|
env: TOXENV=py36-alldeps-withcov-posix,coverage-prepare,codecov-push,coveralls-push DISABLE_IPV6=yes
|
|
- python: pypy
|
|
env: TOXENV=pypy-nodeps-withcov-posix,coverage-prepare,codecov-push,coveralls-push PYPY_VERSION=pypy2.7-7.1.1
|
|
- python: pypy3
|
|
env: TOXENV=pypy-nodeps-withcov-posix,coverage-prepare,codecov-push,coveralls-push PYPY_VERSION=pypy3.6-7.1.1
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- libssl-dev
|
|
- libssl1.0.0
|
|
|
|
|
|
cache:
|
|
directories:
|
|
- $HOME/.cache/pip
|
|
- $PYENV_ROOT
|
|
before_cache:
|
|
# Show the current cache size and try to delete things which are no longer
|
|
# needed.
|
|
- du -h $HOME/.cache/pip
|
|
- du -h $PYENV_ROOT
|
|
- rm -f $HOME/.cache/pip/log/debug.log
|
|
- pyenv uninstall -f $PREVIOUS_PYPY_VERSION
|
|
|
|
|
|
install:
|
|
- ./.travis/install.sh tox
|
|
|
|
|
|
# FIXME: https://twistedmatrix.com/trac/ticket/8373
|
|
# By default, Travis only clones one branch.
|
|
# Some tests require the presence of the `trunk` branch so here we are, also
|
|
# fetching `trunk` for each test.
|
|
before_script:
|
|
- git remote set-branches --add origin trunk
|
|
- git fetch origin trunk
|
|
|
|
|
|
# Run tox from the created virtualenv.
|
|
script:
|
|
- ./.travis/run.sh
|