language: php
sudo: true

addons:
  firefox: "latest-esr"
  postgresql: "9.6"
  apt:
    packages:
      - "oracle-java8-installer"
      - "oracle-java8-set-default"

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

php:
  - 7.0
  - 7.1
  - 7.2

env:
  global:
    - MOODLE_BRANCH=MOODLE_35_STABLE
  matrix:
    - DB=mysqli
    - DB=pgsql

before_install:
  - phpenv config-rm xdebug.ini
  - nvm install 8.9
  - nvm use 8.9
  - cd ../..
  - composer selfupdate
  - composer create-project -n --no-dev --prefer-dist moodlerooms/moodle-plugin-ci ci ^2
  - export PATH="$(cd ci/bin; pwd):$(cd ci/vendor/bin; pwd):$PATH"

install:
  - moodle-plugin-ci install

script:
  - moodle-plugin-ci phplint
  - moodle-plugin-ci phpcpd
  - moodle-plugin-ci phpmd
  - moodle-plugin-ci codechecker
  - moodle-plugin-ci validate
  - moodle-plugin-ci savepoints
  - moodle-plugin-ci mustache
  - moodle-plugin-ci grunt
  - moodle-plugin-ci phpunit
  - moodle-plugin-ci behat

jobs:
  include:
    - stage: test old
      env: DB=mysqli MOODLE_BRANCH=MOODLE_33_STABLE
      php: 5.6

    - stage: deploy
      php: 7.2

      before_deploy:
        - cd "$TRAVIS_REPO_SLUG"
        - git stash --all
        - /bin/sh build.sh

      deploy:
        api_key: $GITHUB_PROJECT_TOKEN
        email: "info@valentineus.link"
        file: "../build/*.zip"
        file_glob: true
        provider: releases
        skip_cleanup: true

        on:
          tags: true