1 os: linux 2 3 dist: xenial 4 5 language: python 6 7 python: 8 - "2.7" 9 10 cache: pip 11 12 addons: 13 apt: 14 packages: 15 - patchelf 16 17 matrix: 18 include: 19 - python: "2.7" 20 env: TOXENV=py27 21 - python: "2.7" 22 arch: arm64-graviton2 23 group: edge 24 virt: lxd 25 env: TOXENV=py27 26 - python: "3.5" 27 env: TOXENV=py34 TOXPYTHON=/home/travis/virtualenv/python3.4.8/bin/python3.4 28 - python: "3.5" 29 arch: arm64-graviton2 30 group: edge 31 virt: lxd 32 env: TOXENV=py34 TOXPYTHON=/home/travis/virtualenv/python3.4.8/bin/python3.4 33 - python: "3.5" 34 env: TOXENV=py35 35 - python: "3.5" 36 arch: arm64-graviton2 37 group: edge 38 virt: lxd 39 env: TOXENV=py35 40 - python: "3.6" 41 env: TOXENV=py36 42 - python: "3.6" 43 arch: arm64-graviton2 44 group: edge 45 virt: lxd 46 env: TOXENV=py36 47 - python: "3.7" 48 env: TOXENV=py37 49 - python: "3.7" 50 arch: arm64-graviton2 51 group: edge 52 virt: lxd 53 env: TOXENV=py37 54 - python: "3.8" 55 env: TOXENV=py38 56 - python: "3.8" 57 arch: arm64-graviton2 58 group: edge 59 virt: lxd 60 env: TOXENV=py38 61 - python: "3.9" 62 env: TOXENV=py39 63 - python: "3.9" 64 arch: arm64-graviton2 65 group: edge 66 virt: lxd 67 env: TOXENV=py39 68 - python: "2.7" 69 env: TOXENV=py27-flake8 70 - python: "3.9" 71 env: TOXENV=py39-flake8 72 - os: osx 73 # No version of Python is available via virtualenv on OS X workers, see https://github.com/travis-ci/travis-ci/issues/2312 74 language: generic 75 env: TOXENV=py27 76 - os: osx 77 language: generic 78 env: TOXENV=py35 79 - os: osx 80 language: generic 81 env: TOXENV=py36 82 - os: osx 83 language: generic 84 env: TOXENV=py37 85 - os: osx 86 language: generic 87 env: TOXENV=py38 88 - os: osx 89 language: generic 90 env: TOXENV=py39 91 - python: "pypy2.7-6.0" 92 env: TOXENV=pypy 93 94 fast_finish: true 95 96 before_install: 97 - | 98 if [ "$TRAVIS_OS_NAME" = 'osx' -a "$TOXENV" != "py27" ]; then 99 curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh 100 bash Miniconda3-latest-MacOSX-x86_64.sh -b -p "$HOME/miniconda3" 101 REQUIRED_PYTHON_VERSION=$(python -c "import os; toxenv = os.environ['TOXENV']; print('.'.join(list(toxenv[2:])))") 102 ~/miniconda3/bin/conda create -y -n "$TOXENV" python="$REQUIRED_PYTHON_VERSION" 103 . ~/miniconda3/bin/activate "$TOXENV" 104 fi 105 - | 106 if [ "$TRAVIS_OS_NAME" = 'linux' -a "$TOXENV" = "py34" ]; then 107 # Manually install Python 3.4 to run tox under Python 3.5 and tests with Python 3.4 108 curl -sSf --retry 5 -o python-3.4.tar.bz2 https://storage.googleapis.com/travis-ci-language-archives/python/binaries/ubuntu/16.04/x86_64/python-3.4.tar.bz2 109 sudo tar xjf python-3.4.tar.bz2 --directory / 110 fi 111 112 install: 113 - travis_retry pip install --upgrade "pip<19.2" "setuptools<44" "tox>=3.15" ppu 114 115 script: 116 - tox 117 118 before_cache: 119 - remove-old-files.py -o 180 ~/.cache/pip 120 121 deploy: 122 provider: script 123 script: devscripts/CI/travisci-release 124 on: 125 tags: true