Skip to content
Snippets Groups Projects
.travis.yml 1.98 KiB
Newer Older
  • Learn to ignore specific revisions
  • jlaura's avatar
    jlaura committed
    language: generic
    
    jlaura's avatar
    jlaura committed
    sudo: false
    
    Jason R Laura's avatar
    Jason R Laura committed
    
    branches:
    
    jlaura's avatar
    jlaura committed
      only:
        - master
    
    Jason R Laura's avatar
    Jason R Laura committed
      - linux
      - osx
    
    jlaura's avatar
    jlaura committed
    env:
    
    jlaura's avatar
    jlaura committed
      - PYTHON_VERSION=3.5
      - PYTHON_VERSION=3.6
    
    jlaura's avatar
    jlaura committed
    
    
    Jason R Laura's avatar
    Jason R Laura committed
    before_install:
      # We do this conditionally because it saves us some downloading if the
      # version is the same.
    
      - if [ "$TRAVIS_OS_NAME" == "linux" ]; then
    
    Jay's avatar
    Jay committed
          wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh;
    
    Jay's avatar
    Jay committed
          curl -o miniconda.sh  https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh;
    
    Jason R Laura's avatar
    Jason R Laura committed
      - bash miniconda.sh -b -p $HOME/miniconda
      - export PATH="$HOME/miniconda/bin:$PATH"
      - hash -r
      - conda config --set always_yes yes --set changeps1 no
      - conda update -q conda
      # Useful for debugging any issues with conda
      - conda info -a
    
    Jay's avatar
    Jay committed
      # Create the env
    
    jlaura's avatar
    jlaura committed
      - conda create -q -n test python=$PYTHON_VERSION
    
    Jay's avatar
    Jay committed
      - source activate test
    
      # https://github.com/travis-ci/travis-ci/issues/8982
      - python -c "import fcntl; fcntl.fcntl(1, fcntl.F_SETFL, 0)"
    
    jlaura's avatar
    jlaura committed
    install:
    
    jlaura's avatar
    jlaura committed
      - conda config --add channels conda-forge usgs-astrogeology
    
      - conda install -c conda-forge libgdal gdal numpy pyproj h5py pvl scipy protobuf affine jinja2 networkx pandas sqlalchemy pyyaml
      - conda install -c usgs-astrogeology usgscam
    
    Jason R Laura's avatar
    Jason R Laura committed
      # Development installation
    
    Jay's avatar
    Jay committed
      - conda install -q pytest pytest-cov sh coveralls nbsphinx
    
    Jason R Laura's avatar
    Jason R Laura committed
    script:
    
    jay's avatar
    jay committed
      - pytest --cov=plio
    
    Jason R Laura's avatar
    Jason R Laura committed
    
    after_success:
      - coveralls
    
    jlaura's avatar
    jlaura committed
      # Need to do the build in the root
    
      - source deactivate
    
    jlaura's avatar
    jlaura committed
      - conda install -q conda-build anaconda-client
    
    Jay's avatar
    Jay committed
      - conda config --set anaconda_upload yes
    
    jlaura's avatar
    jlaura committed
      - conda build --token $CONDA_UPLOAD_TOKEN --python $PYTHON_VERSION recipe -q
    
    Jason R Laura's avatar
    Jason R Laura committed
    
    
    jlaura's avatar
    jlaura committed
      # Docs to gh-pages
    
    Jay's avatar
    Jay committed
      - source activate test  # Reactivate the env to have all deps installed.
      - pip install travis-sphinx
    
    jlaura's avatar
    jlaura committed
      - travis-sphinx build --source=docs --nowarn # The sphinx build script
    
    jlaura's avatar
    jlaura committed
      - travis-sphinx deploy
    
    jlaura's avatar
    jlaura committed
    
    
    Jason R Laura's avatar
    Jason R Laura committed
    notifications:
      webhooks:
        on_success: always
        on_failure: always
        on_start: never
      email:
          recipients:
            - jlaura@usgs.gov
          on_success: always
    
    Jason R Laura's avatar
    Jason R Laura committed
          on_failure: always