diff --git a/.travis.yml b/.travis.yml index 773bd0fad2a..c1187c02205 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,7 +7,7 @@ branches: - develop os: - - linux + linux env: global: @@ -17,101 +17,72 @@ env: - GIT_CI_USER=TravisCI - GIT_CI_EMAIL=TravisCI@mdanalysis.org - MDA_DOCDIR=${TRAVIS_BUILD_DIR}/package/doc/html/html - - MDA_OPTPACKAGES=opt/packages # Set default python version to avoid repetition later + - PYTHON_VERSION=3.6 - BUILD_DOCS=false - - PYTHON_VERSION=2.7 - COVERALLS=false - PYTEST_FLAGS="--disable-pytest-warnings --numprocesses 2 --durations=50" - - PYTEST_LIST="testsuite/MDAnalysisTests/lib testsuite/MDAnalysisTests/formats testsuite/MDAnalysisTests/coordinates testsuite/MDAnalysisTests/utils testsuite/MDAnalysisTests/topology testsuite/MDAnalysisTests/auxiliary testsuite/MDAnalysisTests/core testsuite/MDAnalysisTests/analysis" - - NOSE_COVERAGE_FILE="nose_coverage" - - PYTEST_COVERAGE_FILE="pytest_coverage" + - PYTEST_LIST="testsuite/MDAnalysisTests" - MAIN_CMD="pytest ${PYTEST_LIST}" - SETUP_CMD="${PYTEST_FLAGS}" - BUILD_CMD="pip install -v package/ && pip install testsuite/" - - CONDA_DEPENDENCIES="mmtf-python nose=1.3.7 mock six biopython networkx cython joblib nose-timer matplotlib scipy griddataformats hypothesis" - - CONDA_ALL_DEPENDENCIES="mmtf-python nose=1.3.7 mock six biopython networkx cython joblib nose-timer matplotlib netcdf4 scikit-learn scipy griddataformats seaborn coveralls clustalw=2.1 hypothesis" - # Install griddataformats from PIP so that scipy is only installed in the full build (#1147) - - PIP_DEPENDENCIES='' + # we need nose for assert_raises and stuff + - CONDA_MIN_DEPENDENCIES="mmtf-python mock six biopython networkx cython joblib matplotlib scipy griddataformats hypothesis nose" + - CONDA_DEPENDENCIES="${CONDA_MIN_DEPENDENCIES} seaborn clustalw=2.1 netcdf4 scikit-learn coveralls" - CONDA_CHANNELS='biobuilds conda-forge' - CONDA_CHANNEL_PRIORITY=True - NUMPY_VERSION=stable + - INSTALL_HOLE="true" - + matrix: + # Run a coverage test + - COVERALLS="true" SETUP_CMD="${PYTEST_FLAGS} --cov=MDAnalysis" + - PYTHON_VERSION=3.5 + - PYTHON_VERSION=3.4 + - PYTHON_VERSION=2.7 + - NUMPY_VERSION=1.10.4 + - NUMPY_VERSION=dev EVENT_TYPE="cron" matrix: fast_finish: true include: - - os : linux - env: NAME='minimal' - MEMLEAK='--with-memleak' - MAIN_CMD='pytest ${PYTEST_LIST} ${PYTEST_FLAGS}' - - - os: linux - env: NAME="Doc" + - env: NAME="Doc" MAIN_CMD="cd package && python setup.py" SETUP_CMD="build_sphinx" BUILD_DOCS=true BUILD_CMD="cd ${TRAVIS_BUILD_DIR}/package && python setup.py build_ext --inplace" - CONDA_DEPENDENCIES=${CONDA_ALL_DEPENDENCIES} + INSTALL_HOLE="false" - - os: linux - env: NAME="Lint" + # todo update to default 3.6 (aka removing the line with PYTHON_VERSION here) + - env: NAME="Lint" + PYTHON_VERSION=2.7 MAIN_CMD="pylint --rcfile=package/.pylintrc package/MDAnalysis && pylint --rcfile=package/.pylintrc testsuite/MDAnalysisTests" - SETUP_CMD='' + SETUP_CMD="" BUILD_CMD="" - CONDA_DEPENDENCIES="pylint backports.functools_lru_cache" - PIP_DEPENDENCIES="" - - - os: linux - env: NAME='full' - NOSE_COVERAGE='--with-coverage --cover-package MDAnalysis' - PYTEST_COVERAGE='--cov=MDAnalysis' - SETUP_CMD="${PYTEST_FLAGS} ${PYTEST_COVERAGE}" - CONDA_DEPENDENCIES=${CONDA_ALL_DEPENDENCIES} - COVERALLS='true' + CONDA_DEPENDENCIES="" + INSTALL_HOLE="false" - os: osx - env: NAME='osx' - CONDA_DEPENDENCIES=${CONDA_ALL_DEPENDENCIES} - - - os: linux - env: NAME='old numpy' - NUMPY_VERSION=1.10.4 - CONDA_DEPENDENCIES=${CONDA_ALL_DEPENDENCIES} - - - os: linux - env: NAME='numpy dev' - NUMPY_VERSION=dev - CONDA_DEPENDENCIES=${CONDA_ALL_DEPENDENCIES} - EVENT_TYPE='cron' - - - os: linux - env: NAME='full-py3.4' - PYTHON_VERSION=3.4 - CONDA_DEPENDENCIES=${CONDA_ALL_DEPENDENCIES} + env: PYTHON_VERSION=3.6 - - os: linux - env: NAME='full-py3.5' - PYTHON_VERSION=3.5 - CONDA_DEPENDENCIES=${CONDA_ALL_DEPENDENCIES} - - - os: linux - env: NAME='full-py3.6' - PYTHON_VERSION=3.6 - CONDA_DEPENDENCIES=${CONDA_ALL_DEPENDENCIES} + - os: osx + env: PYTHON_VERSION=2.7 + - env: NAME='minimal' + CONDA_DEPENDENCIES=${CONDA_MIN_DEPENDENCIES} + INSTALL_HOLE="false" install: - - git clone git://github.com/astropy/ci-helpers.git - - source ci-helpers/travis/setup_conda.sh + # download hole first to use system curl # additional external tools (Issue #898) -- HOLE - | - if [[ $NAME == 'full' ]]; then \ - bash ./maintainer/install_hole.sh $TRAVIS_OS_NAME "${HOME}/${MDA_OPTPACKAGES}"; \ - HOLE_BINDIR="${HOME}/${MDA_OPTPACKAGES}/hole2/exe"; \ + if [[ $INSTALL_HOLE == 'true' ]]; then \ + bash ./maintainer/install_hole.sh $TRAVIS_OS_NAME "${HOME}"; \ + HOLE_BINDIR="${HOME}/hole2/exe"; \ export PATH=${PATH}:${HOLE_BINDIR}; \ fi + - git clone git://github.com/astropy/ci-helpers.git + - source ci-helpers/travis/setup_conda.sh - eval $BUILD_CMD script: @@ -120,7 +91,6 @@ script: - echo $MAIN_CMD $SETUP_CMD - eval $MAIN_CMD $SETUP_CMD - after_success: - | if [[ $COVERALLS == 'true' ]]; then \