py-twisted/.travis.yml

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