os: linux dist: xenial language: python jobs: fast_finish: true include: - {python: 3.6, env: TOXENV=pep8} - {python: 2.7, env: TOXENV=py27-epolls} - {python: 2.7, env: TOXENV=py27-poll} - {python: 2.7, env: TOXENV=py27-selects} - {python: 3.5, env: TOXENV=py35-epolls} - {python: 3.5, env: TOXENV=py35-poll} - {python: 3.5, env: TOXENV=py35-selects} - {python: 3.6, env: TOXENV=py36-epolls} - {python: 3.6, env: TOXENV=py36-poll} - {python: 3.6, env: TOXENV=py36-selects} - {python: 3.7, env: TOXENV=py37-epolls} - {python: 3.7, env: TOXENV=py37-poll} - {python: 3.7, env: TOXENV=py37-selects} - {python: 3.8, env: TOXENV=py38-epolls} - {python: 3.8, env: TOXENV=py38-poll} - {python: 3.8, env: TOXENV=py38-selects} - {python: pypy, env: TOXENV=pypy-epolls} - {python: pypy, env: TOXENV=pypy-poll} - {python: pypy, env: TOXENV=pypy-selects} - {python: 3.6, env: TOXENV=ipv6} - {python: 3.8, env: TOXENV=py38-openssl} allow_failures: - python: 3.7-dev - python: pypy cache: apt: true ccache: true pip: true directories: - $HOME/.cache addons: apt_packages: - ccache - libffi-dev - libmysqlclient-dev - libpq-dev - libssl-dev - libzmq3-dev install: - pip install --upgrade pip setuptools tox virtualenv codecov before_script: - "export EVENTLET_DB_TEST_AUTH='{\"psycopg2\": {\"user\": \"postgres\"}, \"MySQLdb\": {\"passwd\": \"\", \"host\": \"localhost\", \"user\": \"root\"}}'" - "export PATH=/usr/lib/ccache:$PATH" # Add an IPv6 config - see the corresponding Travis issue # https://github.com/travis-ci/travis-ci/issues/8361 - if [[ "${TRAVIS_OS_NAME}" == "linux" ]] ; then sudo sh -c 'echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6' ; fi script: - tox -v -v - codecov --flags=$(echo $TOXENV |tr -d -- '-.') after_failure: - for X in .tox/$TOXENV/log/*; do echo "$X\n"; cat "$X"; echo "\n\n"; done - echo "pip.log\n"; cat $HOME/.pip/pip.log