70 lines
1.4 KiB
YAML
70 lines
1.4 KiB
YAML
dist: xenial
|
|
language: python
|
|
|
|
jobs:
|
|
fast_finish: true
|
|
include:
|
|
- &latest_py2
|
|
python: 2.7
|
|
- <<: *latest_py2
|
|
env: LANG=C
|
|
- python: pypy
|
|
env: DISABLE_COVERAGE=1 # Don't run coverage on pypy (too slow).
|
|
- python: pypy3
|
|
env: DISABLE_COVERAGE=1
|
|
- python: 3.5
|
|
- python: 3.6
|
|
- python: 3.7
|
|
- &latest_py3
|
|
python: 3.8
|
|
- <<: *latest_py3
|
|
env: LANG=C
|
|
- python: 3.8-dev
|
|
- <<: *latest_py3
|
|
env: TOXENV=docs DISABLE_COVERAGE=1
|
|
- <<: *latest_py3
|
|
stage: deploy
|
|
if: tag IS present
|
|
script: tox -e release
|
|
after_success: skip
|
|
allow_failures:
|
|
# suppress failures due to pypa/setuptools#2000
|
|
- python: pypy3
|
|
|
|
cache: pip
|
|
|
|
install:
|
|
|
|
# ensure we have recent pip/setuptools/wheel
|
|
- pip install --disable-pip-version-check --upgrade pip setuptools wheel
|
|
# need tox to get started
|
|
- pip install --upgrade tox tox-venv
|
|
|
|
# Output the env, to verify behavior
|
|
- pip freeze --all
|
|
- env
|
|
|
|
- "! grep pyc setuptools.egg-info/SOURCES.txt"
|
|
|
|
script:
|
|
- export NETWORK_REQUIRED=1
|
|
- |
|
|
( # Run testsuite.
|
|
if [ -z "$DISABLE_COVERAGE" ]
|
|
then
|
|
tox -- --cov
|
|
else
|
|
tox
|
|
fi
|
|
)
|
|
|
|
after_success:
|
|
- |
|
|
( # Upload coverage data.
|
|
if [ -z "$DISABLE_COVERAGE" ]
|
|
then
|
|
export TRAVIS_JOB_NAME="${TRAVIS_PYTHON_VERSION} (LANG=$LANG)" CODECOV_ENV=TRAVIS_JOB_NAME
|
|
tox -e coverage,codecov
|
|
fi
|
|
)
|