diff --git a/.travis.yml b/.travis.yml index 2766b46b55e..4f912c0fa2d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,6 +5,7 @@ cache: - $HOME/.ccache - $HOME/.cache/pip - $HOME/.cache/matplotlib + - $HOME/Library/Caches/pip addons: apt: @@ -58,16 +59,29 @@ matrix: env: BUILD_DOCS=true - python: "nightly" env: PRE=--pre + - os: osx + osx_image: xcode7.3 + language: generic + env: MOCK=mock NOSE_ARGS= allow_failures: - python: "nightly" before_install: - | # Install into our own pristine virtualenv - source ci/travis/travis_tools.sh - virtualenv --python=python venv - source venv/bin/activate - export PATH=/usr/lib/ccache:$PATH + if [[ $TRAVIS_OS_NAME != 'osx' ]]; then + virtualenv --python=python venv + source venv/bin/activate + export PATH=/usr/lib/ccache:$PATH + else + brew update + brew tap homebrew/gui + brew install python libpng ffmpeg imagemagick mplayer ccache + # We could install ghostscript and inkscape here to test svg and pdf + # but this makes the test time really long. + # brew install ghostscript inkscape + export PATH=/usr/local/opt/ccache/libexec:$PATH + fi install: - | @@ -123,7 +137,11 @@ script: echo The following args are passed to nose $NOSE_ARGS if [[ $BUILD_DOCS == false ]]; then export MPL_REPO_DIR=$PWD # needed for pep8-conformance test of the examples - gdb -return-child-result -batch -ex r -ex bt --args python tests.py $NOSE_ARGS $TEST_ARGS + if [[ $TRAVIS_OS_NAME == 'osx' ]]; then + python tests.py $NOSE_ARGS $TEST_ARGS + else + gdb -return-child-result -batch -ex r -ex bt --args python tests.py $NOSE_ARGS $TEST_ARGS + fi else cd doc python make.py html --small @@ -177,21 +195,6 @@ after_success: else echo "Will only deploy docs build from matplotlib master branch" fi - if [[ $TRAVIS_PULL_REQUEST == false ]] && \ - [[ $TRAVIS_REPO_SLUG == 'matplotlib/matplotlib' ]] && \ - [[ $TRAVIS_BRANCH == 'master' ]]; then - cd $TRAVIS_BUILD_DIR - python ci/travis/travis_after_all.py - export $(cat .to_export_back) - if [ "$BUILD_LEADER" = "YES" ]; then - if [ "$BUILD_AGGREGATE_STATUS" = "others_succeeded" ]; then - echo "All Succeeded! Triggering OSX build..." - ./ci/travis/build_children.sh - else - echo "Some Failed; no OSX build" - fi - fi - fi if [[ $NOSE_ARGS="--with-coverage" ]]; then coveralls fi