Skip to content

Commit

Permalink
Travis CI : added cache to accelerate
Browse files Browse the repository at this point in the history
  • Loading branch information
kangwonlee committed Dec 2, 2018
1 parent 115f775 commit 9de91bc
Showing 1 changed file with 46 additions and 12 deletions.
58 changes: 46 additions & 12 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,24 +26,56 @@ matrix:
- os : windows
fast_finish: true

# https://docs.travis-ci.com/user/caching/
# https://changelog.travis-ci.com/caching-is-now-enabled-in-windows-with-rewritten-caching-utility-76161
# https://github.com/theochem/qcgrids/blob/master/.travis.yml
# https://stackoverflow.com/questions/38421395/to-which-folder-does-chocolatey-download-the-packages-before-installing-them
before_cache:
- rm -rf $HOME/miniconda/locks $HOME/miniconda/pkgs $HOME/miniconda/var $HOME/miniconda/conda-meta/history

cache :
directories:
- $HOME/download
- $HOME/miniconda
- $HOME/AppData/Local/Temp/chocolatey

before_install:
# Obtain miniconda installer
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh;
elif [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
wget https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh -O miniconda.sh;
- if [[ "$TRAVIS_OS_NAME" != "windows" ]]; then
if [[ -f $HOME/download/miniconda.sh ]]; then
echo "miniconda.sh for posix already available";
else
mkdir -p $HOME/download;
if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
echo "downloading miniconda.sh for linux";
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O $HOME/download/miniconda.sh;
elif [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
echo "downloading miniconda.sh for osx";
wget https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh -O $HOME/download/miniconda.sh;
fi;
fi;
fi

install:
# Install miniconda
# https://docs.travis-ci.com/user/reference/windows/#support
# https://chocolatey.org/packages/miniconda3/4.5.11
- if [[ "$TRAVIS_OS_NAME" != "windows" ]]; then
bash miniconda.sh -b -p $HOME/miniconda;
if [[ -d $HOME/miniconda/bin ]]; then
echo "miniconda for posix already available";
else
echo "installing miniconda for posix";
bash $HOME/download/miniconda.sh -b -u -p $HOME/miniconda;
fi;
export PATH="$HOME/miniconda:$HOME/miniconda/bin:$PATH";
hash -r;
elif [[ "$TRAVIS_OS_NAME" == "windows" ]]; then
choco install miniconda3 --params="'/D:$HOME/miniconda'";
if [[ -d $HOME/miniconda/scripts ]]; then
echo "miniconda for Windows already installed";
else
echo "installing miniconda for windows";
choco install miniconda3 --params="'/D:$HOME/miniconda'";
fi;
export PATH="$HOME/miniconda:$HOME/miniconda/scripts:$PATH";
fi
- conda config --set always_yes yes --set changeps1 no
Expand All @@ -55,12 +87,14 @@ install:
# Useful for debugging any issues with conda
- conda info -a
# Apply python module recipies
- if [[ "$TOXENV" == "3.6" ]]; then
conda env create -n test-environment python=$TOXENV -f ./tests/environment.3.6.yml;
elif [[ "$TOXENV" == "3.7" ]]; then
conda env create -n test-environment python=$TOXENV -f ./tests/environment.3.7.yml;
else
conda env create -n test-environment python=$TOXENV -f ./tests/environment.nightly.yml;
- if [[ ! -d $HOME/miniconda/envs/test-environment ]]; then
if [[ "$TOXENV" == "3.6" ]]; then
conda env create -n test-environment python=$TOXENV -f ./tests/environment.3.6.yml;
elif [[ "$TOXENV" == "3.7" ]]; then
conda env create -n test-environment python=$TOXENV -f ./tests/environment.3.7.yml;
else
conda env create -n test-environment python=$TOXENV -f ./tests/environment.nightly.yml;
fi;
fi
- source activate test-environment
- conda list
Expand Down

0 comments on commit 9de91bc

Please sign in to comment.