ci: Travis: dist=xenial

This commit is contained in:
Daniel Hahler
2019-02-22 01:28:53 +01:00
parent 7bd3669220
commit 877705ca42
2 changed files with 18 additions and 51 deletions

View File

@@ -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:
- |

View File

@@ -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."