Initial CI for Python 3.8

This commit is contained in:
Anthony Scopatz 2019-05-09 11:09:55 -04:00
parent 3edd2df7bd
commit 1b27d8aa38
4 changed files with 76 additions and 5 deletions

View file

@ -18,7 +18,7 @@ jobs:
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
bash miniconda.sh -b -p $HOME/miniconda
export PATH="$HOME/miniconda/bin:$PATH"
conda config --set always_yes yes --set changeps1 no
conda config --set always_yes yes --set changeps1 no --set channel_priority strict
fi
sudo chown -R $USER.$USER $HOME
- run:
@ -64,7 +64,7 @@ jobs:
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
bash miniconda.sh -b -p $HOME/miniconda
export PATH="$HOME/miniconda/bin:$PATH"
conda config --set always_yes yes --set changeps1 no
conda config --set always_yes yes --set changeps1 no --set channel_priority strict
fi
sudo chown -R $USER.$USER $HOME
- run:
@ -110,7 +110,7 @@ jobs:
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
bash miniconda.sh -b -p $HOME/miniconda
export PATH="$HOME/miniconda/bin:$PATH"
conda config --set always_yes yes --set changeps1 no
conda config --set always_yes yes --set changeps1 no --set channel_priority strict
fi
sudo chown -R $USER.$USER $HOME
- run:
@ -139,6 +139,52 @@ jobs:
export PATH="$HOME/miniconda/bin:$PATH"
source activate ${ENV_NAME}
xonsh run-tests.xsh --timeout=10 --flake8 --cov=./xonsh
build_38:
machine: true
environment:
PYTHON: "3.8"
ENV_NAME: "py38-xonsh-test"
steps:
- checkout
- restore_cache:
keys:
- miniconda-v1-{{ checksum "ci/environment-3.8.yml" }}
- run:
name: install miniconda
command: |
if [ ! -d "/home/circleci/miniconda" ]; then
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
bash miniconda.sh -b -p $HOME/miniconda
export PATH="$HOME/miniconda/bin:$PATH"
conda config --set always_yes yes --set changeps1 no --set channel_priority strict
fi
sudo chown -R $USER.$USER $HOME
- run:
name: configure conda
command: |
export PATH="$HOME/miniconda/bin:$PATH"
export ENV_NAME="py38-xonsh-test"
if [ ! -d "/home/circleci/miniconda/envs/py38-xonsh-test" ]; then
conda update -q conda
conda env create -f ci/environment-${PYTHON}.yml --name=${ENV_NAME}
source activate ${ENV_NAME}
fi
conda env list
conda list ${ENV_NAME}
- save_cache:
key: miniconda-v1-{{ checksum "ci/environment-3.8.yml" }}
paths:
- "/home/circleci/miniconda"
- run:
command: |
export PATH="$HOME/miniconda/bin:$PATH"
source activate ${ENV_NAME}
pip install . --no-deps
- run:
command: |
export PATH="$HOME/miniconda/bin:$PATH"
source activate ${ENV_NAME}
xonsh run-tests.xsh --timeout=10 --flake8 --cov=./xonsh
build_black:
machine: true
steps:
@ -153,7 +199,7 @@ jobs:
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
bash miniconda.sh -b -p $HOME/miniconda
export PATH="$HOME/miniconda/bin:$PATH"
conda config --set always_yes yes --set changeps1 no
conda config --set always_yes yes --set changeps1 no --set channel_priority strict
fi
sudo chown -R $USER.$USER $HOME
- run:
@ -177,7 +223,8 @@ workflows:
jobs:
- build_35
- build_36
- build_37
- build_black
# conda-foge does not yet have all Python 3.7 packages available
# uncomment when it does
#- build_37
#- build_38

View file

@ -29,6 +29,9 @@ matrix:
- os: osx
language: generic
env: PYTHON="3.7" MINICONDA_OS="MacOSX"
- os: osx
language: generic
env: PYTHON="3.8" MINICONDA_OS="MacOSX"
allow_failures:
- python: "nightly"
- python: "pypy3"

View file

@ -11,6 +11,8 @@ jobs:
python.version: '3.6'
Python37:
python.version: '3.7'
Python38:
python.version: '3.8'
maxParallel: 4
steps:

19
ci/environment-3.8.yml Normal file
View file

@ -0,0 +1,19 @@
name: py38-xonsh-test
channels:
- conda-forge
- defaults
dependencies:
- python=3.8
- pygments
- prompt_toolkit
- pytest
- pytest-timeout
- numpy
- psutil
- matplotlib
- flake8
- coverage
- pyflakes
- pytest-cov
- pytest-flake8
- codecov