dist: xenial language: node_js node_js: - '12' - '10' - '8' cache: yarn services: - mysql # Don't run builds for renovate PRs if: NOT head_branch =~ ^renovate env: matrix: - DB=sqlite3 NODE_ENV=testing - DB=mysql NODE_ENV=testing-mysql matrix: include: - node_js: '10' env: TEST_SUITE=lint allow_failures: - node_js: '12' install: - if [ "$TRAVIS_NODE_VERSION" == "12" ]; then yarn --ignore-engines; else yarn; fi before_script: - if [ $DB == "mysql" ]; then mysql -e 'create database ghost_testing'; fi - if [ "$DB" == "sqlite3" ]; then yarn add --ignore-engines --force sqlite3; fi script: | if [ "$TEST_SUITE" == "lint" ]; then yarn lint elif [[ "$TRAVIS_PULL_REQUEST_BRANCH" =~ ^renovate || "$TRAVIS_EVENT_TYPE" == "cron" ]]; then yarn ci:regression else yarn ci fi notifications: slack: if: type = cron rooms: - secure: KzvGpf6RFHgQ3BkppKM4OejFjJYxH60KkDDShet0a0v+j/03HF5Nx0S0Vl9O/F2dPt2qWvblKb3j9EKgB7RsoFSdZuOk7ijA9Duvn+p9RrLom0C9JxOA3ob065WAGyE0OGRm1P5H98loX/L+6oOHC4/qqGKXgz6gUdBtZBn/yo8= on_success: change on_failure: always on_pull_requests: false