sudo: required dist: trusty language: node_js # When changing node version also update it on lines 34, 36 and 46. node_js: - "0.10" - "0.12" - "4" cache: directories: - node_modules - core/client/node_modules - core/client/bower_components addons: firefox: "latest" postgresql: "9.3" apt: sources: - google-chrome packages: - mysql-server - google-chrome-stable env: global: - GITHUB_OAUTH_KEY=003a44d58f12089d0c0261338298af3813330949 - GHOST_NODE_VERSION_CHECK=false - TEST_SUITE=server matrix: - DB=sqlite3 NODE_ENV=testing - DB=mysql NODE_ENV=testing-mysql - DB=pg NODE_ENV=testing-pg matrix: include: - node_js: "0.10" env: TEST_SUITE=client - node_js: "0.10" env: TEST_SUITE=lint before_install: - if [ $DB == "mysql" ]; then mysql -u root -e 'create database ghost_testing'; fi - if [ $DB == "pg" ]; then psql -c 'create database ghost_testing;' -U postgres; fi before_script: - if [ $TEST_SUITE == "client" ]; then export DISPLAY=:99; sh -e /etc/init.d/xvfb start; sleep 3; fi after_success: - | if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then if [[ "$DB" = "sqlite3" && "$TRAVIS_NODE_VERSION" = "0.10" ]]; then echo "Generate coverage..." grunt coverage npm install -g codeclimate-test-reporter codeclimate-test-reporter < core/test/coverage/unit/lcov.info else echo "False DB and NODE_VERSION. No coverage generated." fi else echo "This is a PR. No coverage generated." fi