From 877705ca42937bfc9759facfa91ac764a779a23e Mon Sep 17 00:00:00 2001 From: Daniel Hahler Date: Fri, 22 Feb 2019 01:28:53 +0100 Subject: [PATCH] ci: Travis: dist=xenial --- .travis.yml | 36 ++++++++++++++++++------------------ travis_install.sh | 33 --------------------------------- 2 files changed, 18 insertions(+), 51 deletions(-) delete mode 100755 travis_install.sh diff --git a/.travis.yml b/.travis.yml index eb9aa876..f1033d04 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,10 +1,11 @@ +dist: xenial language: python -sudo: true python: - 2.7 - 3.4 - 3.5 - 3.6 + - 3.7 env: - JEDI_TEST_ENVIRONMENT=27 @@ -12,16 +13,11 @@ env: - JEDI_TEST_ENVIRONMENT=35 - JEDI_TEST_ENVIRONMENT=36 -addons: - apt: - packages: - # Required to properly create a virtual environment with system Python 3.4. - - python3.4-venv - matrix: allow_failures: - python: pypy - env: TOXENV=sith + - python: 3.7 include: - python: 3.6 env: @@ -32,20 +28,24 @@ matrix: # For now ignore pypy, there are so many issues that we don't really need # to run it. #- python: pypy - - python: "nightly" - env: - - JEDI_TEST_ENVIRONMENT=36 -before_install: - - ./travis_install.sh - # Need to add the path to the Python versions in the end. This might add - # something twice, but it doesn't really matter, because they are appended. - - export PATH=$PATH:/opt/python/3.5/bin - # 3.6 was not installed manually, but already is on the system. However - # it's not on path (unless 3.6 is selected). - - export PATH=$PATH:/opt/python/3.6/bin install: - pip install --quiet tox-travis script: + - | + set -x + test_env_version=${JEDI_TEST_ENVIRONMENT:0:1}.${JEDI_TEST_ENVIRONMENT:1:1} + if [ "$TRAVIS_PYTHON_VERSION" != "$test_env_version" ]; then + python_bin=python$test_env_version + if ! which $python_bin; then + # Only required for JEDI_TEST_ENVIRONMENT=34. + download_name=python-$test_env_version + wget https://s3.amazonaws.com/travis-python-archives/binaries/ubuntu/16.04/x86_64/$download_name.tar.bz2 + sudo tar xjf $download_name.tar.bz2 --directory / opt/python + ln -s "/opt/python/${test_env_version}/bin/python" /home/travis/bin/$python_bin + fi + $python_bin --version + fi + set +x - tox after_script: - | diff --git a/travis_install.sh b/travis_install.sh deleted file mode 100755 index 2c5eb944..00000000 --- a/travis_install.sh +++ /dev/null @@ -1,33 +0,0 @@ -#! /usr/bin/env bash -set -e - -# 3.6 is already installed on Travis but not as root. This is problematic for -# our virtualenv tests because we require the Python used to create a virtual -# environment to be owned by root (or to be in a safe location which is not the -# case here). -sudo chown root: /opt/python/3.6/bin/python -sudo chown root: /opt/python/3.6.3/bin/python - -if [[ $JEDI_TEST_ENVIRONMENT == "35" ]]; then - VERSION=3.5 - DOWNLOAD=1 -fi - -if [[ -z $VERSION ]]; then - echo "Environments should already be installed" - exit 0 -fi - -PYTHON=python-$VERSION - -# Check if the desired Python version already exists. -$PYTHON --version && exit 0 || true - -if [[ $DOWNLOAD == 1 ]]; then - # Otherwise download and install. - DOWNLOAD_NAME=python-$VERSION - wget https://s3.amazonaws.com/travis-python-archives/binaries/ubuntu/14.04/x86_64/$DOWNLOAD_NAME.tar.bz2 - sudo tar xjf $DOWNLOAD_NAME.tar.bz2 --directory / -fi - -echo "Successfully installed environment."