language: python

python:
  - "2.7"

services:
  - mysql

before_install:
  - "export DISPLAY=:99.0"
  - "sh -e /etc/init.d/xvfb start"

install:
  - sudo apt-get purge -y mysql-common
  - wget https://raw.githubusercontent.com/frappe/bench/master/install_scripts/setup_frappe.sh
  - sudo bash setup_frappe.sh --skip-setup-bench --mysql-root-password travis
  - sudo pip install --upgrade pip
  - rm $TRAVIS_BUILD_DIR/.git/shallow
  - cd ~/ && bench init frappe-bench --frappe-path https://github.com/frappe/frappe.git --frappe-branch develop
  - cp -r $TRAVIS_BUILD_DIR/test_sites/test_site ~/frappe-bench/sites/

script:
  - cd ~/frappe-bench
  - bench get-app erpnext $TRAVIS_BUILD_DIR
  - bench use test_site
  - bench setup redis-cache
  - bench setup redis-async-broker
  - bench setup procfile --with-celery-broker
  - bench reinstall
  - bench build
  - bench build-website
  - bench start &
  - sleep 10
  - bench --verbose run-tests --driver Firefox

before_script:
  - mysql -e 'create database test_frappe'
  - echo "USE mysql;\nCREATE USER 'test_frappe'@'localhost' IDENTIFIED BY 'test_frappe';\nFLUSH PRIVILEGES;\n" | mysql -u root -ptravis
  - echo "USE mysql;\nGRANT ALL PRIVILEGES ON \`test_frappe\`.* TO 'test_frappe'@'localhost';\n" | mysql -u root -ptravis

notifications:
  webhooks:
    urls:
      - https://webhooks.gitter.im/e/92b3bea86d8c5397beef
    on_success: always
    on_failure: always
    on_start: never
