language: python
sudo: required
cache: false
python:
    - '3.5'
os:
    - linux
env:
  global:
    PYTHONUNBUFFERED=yes
  matrix:
    - TOXENV=2.7-unit
    - TOXENV=2.7-integration-rabbitmq
    - TOXENV=2.7-integration-redis
    - TOXENV=3.4-unit
    - TOXENV=3.4-integration-rabbitmq
    - TOXENV=3.4-integration-redis
    - TOXENV=3.5-unit
    - TOXENV=3.5-integration-rabbitmq
    - TOXENV=3.5-integration-redis
    - TOXENV=pypy-unit PYPY_VERSION="5.3"
    - TOXENV=pypy-integration-rabbitmq PYPY_VERSION="5.3"
    - TOXENV=pypy-integration-redis PYPY_VERSION="5.3"
    - TOXENV=pypy3-unit
    - TOXENV=pypy3-integration-rabbitmq
    - TOXENV=pypy3-integration-redis
    - TOXENV=flake8
    - TOXENV=flakeplus
    - TOXENV=apicheck
    - TOXENV=configcheck
    - TOXENV=pydocstyle
    - TOXENV=cov
before_install:
    - |
          if [ "$TOXENV" = "pypy" ]; then
            export PYENV_ROOT="$HOME/.pyenv"
            if [ -f "$PYENV_ROOT/bin/pyenv" ]; then
              cd "$PYENV_ROOT" && git pull
            else
              rm -rf "$PYENV_ROOT" && git clone --depth 1 https://github.com/yyuu/pyenv.git "$PYENV_ROOT"
            fi
            "$PYENV_ROOT/bin/pyenv" install "pypy-$PYPY_VERSION"
            virtualenv --python="$PYENV_ROOT/versions/pypy-$PYPY_VERSION/bin/python" "$HOME/virtualenvs/pypy-$PYPY_VERSION"
            source "$HOME/virtualenvs/pypy-$PYPY_VERSION/bin/activate"
          fi
install: travis_retry pip install -U tox
script: tox -v -- -v
notifications:
  irc:
    channels:
      - "chat.freenode.net#celery"
    on_success: change
    on_failure: change
services:
    - rabbitmq
    - redis