language: php

cache:
    directories:
        - $HOME/.composer/cache

php:
  - 5.3
  - 5.4
  - 5.5
  - 5.6
  - 7.0
  - hhvm

matrix:
  include:
    - php: 5.6
      env: SYMFONY_VERSION='2.3.*'
    - php: 5.6
      env: SYMFONY_VERSION='2.7.*'
    - php: 5.6
      env: SYMFONY_VERSION='2.8.*'
    - php: 5.6
      env: SYMFONY_VERSION='3.0.*'
  allow_failures:
    - php: hhvm
  fast_finish: true

before_script:
  - /usr/share/elasticsearch/bin/elasticsearch -v
  - sudo /usr/share/elasticsearch/bin/plugin -install elasticsearch/elasticsearch-mapper-attachments/2.0.0
  - sudo service elasticsearch restart
  - if [ "$TRAVIS_PHP_VERSION" != "hhvm" ]; then phpenv config-add travis.php.ini; fi;
  - sh -c 'if [ "$TRAVIS_PHP_VERSION" != "hhvm" ]; then echo "extension = mongo.so" >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi;'
  - sh -c 'if [ "$SYMFONY_VERSION" != "" ]; then composer require --dev --no-update symfony/symfony=$SYMFONY_VERSION; fi;'
  - if [ "$DEPENDENCIES" = "dev" ]; then perl -pi -e 's/^}$/,"minimum-stability":"dev"}/' composer.json; fi;
  - composer install --dev --prefer-source

script:
  - vendor/bin/phpunit --coverage-clover=coverage.clover

services:
  - elasticsearch

after_script:
  - wget https://scrutinizer-ci.com/ocular.phar
  - php ocular.phar code-coverage:upload --format=php-clover coverage.clover
