language: generic
sudo: false

branches:
  only:
    - master
os:
  - linux
  - osx
  
env:
  - PYTHON_VERSION=3.4
  - PYTHON_VERSION=3.5
  - PYTHON_VERSION=3.6

before_install:
  # We do this conditionally because it saves us some downloading if the
  # version is the same.
  - if [ "$TRAVIS_OS_NAME" == "linux" ]; then
      wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh;
    else
      curl -o miniconda.sh  https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh;
    fi
  - 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
  # Create the env
  - conda create -q -n test python=$PYTHON_VERSION
  - source activate test
  
install:
  - conda config --add channels conda-forge
  - conda config --add channels jlaura
  - conda install -c conda-forge gdal h5py 
  - conda install pandas sqlalchemy pyyaml networkx affine protobuf
  - conda install -c jlaura pvl

  # Development installation
  - conda install pytest  pytest-cov sh anaconda-client
  
script:
  - pytest --cov=plio

after_success:
  - coveralls
  - conda install conda-build anaconda-client
  - conda config --set anaconda_upload yes
  - conda build --token $CONDA_UPLOAD_TOKEN --python $PYTHON_VERSION recipe

notifications:
  webhooks:
    on_success: always
    on_failure: always
    on_start: never
  email:
      recipients:
        - jlaura@usgs.gov
      on_success: always
      on_failure: always