2013-05-13 00:15:35 +04:00
|
|
|
language: node_js
|
2017-11-08 02:27:47 +03:00
|
|
|
# When changing node version also update it on lines 31 and 49.
|
2013-05-13 00:15:35 +04:00
|
|
|
node_js:
|
2018-10-30 11:45:51 +03:00
|
|
|
- "10"
|
2017-10-26 13:37:58 +03:00
|
|
|
- "8"
|
2016-07-15 21:36:15 +03:00
|
|
|
- "6"
|
2017-01-23 18:32:49 +03:00
|
|
|
|
2016-05-24 11:58:13 +03:00
|
|
|
sudo: false
|
2017-01-23 18:32:49 +03:00
|
|
|
|
2014-07-14 11:12:56 +04:00
|
|
|
cache:
|
|
|
|
directories:
|
|
|
|
- node_modules
|
2017-01-23 18:32:49 +03:00
|
|
|
|
2013-10-30 00:54:37 +04:00
|
|
|
env:
|
2015-01-07 23:44:14 +03:00
|
|
|
global:
|
|
|
|
- GITHUB_OAUTH_KEY=003a44d58f12089d0c0261338298af3813330949
|
|
|
|
matrix:
|
|
|
|
- DB=sqlite3 NODE_ENV=testing
|
|
|
|
- DB=mysql NODE_ENV=testing-mysql
|
2017-01-23 18:32:49 +03:00
|
|
|
|
2015-11-13 14:54:50 +03:00
|
|
|
matrix:
|
|
|
|
include:
|
2019-01-31 14:25:04 +03:00
|
|
|
- node_js: "10"
|
2015-11-13 14:54:50 +03:00
|
|
|
env: TEST_SUITE=lint
|
2016-07-15 21:36:15 +03:00
|
|
|
fast_finish: true
|
2017-01-23 18:32:49 +03:00
|
|
|
|
2016-06-28 21:15:04 +03:00
|
|
|
branches:
|
2016-07-15 21:36:15 +03:00
|
|
|
except:
|
2016-06-28 21:15:04 +03:00
|
|
|
- /^greenkeeper-.+$/
|
2017-01-23 18:32:49 +03:00
|
|
|
|
2013-08-27 01:28:41 +04:00
|
|
|
before_install:
|
2016-05-24 11:58:13 +03:00
|
|
|
- if [ $DB == "mysql" ]; then mysql -e 'create database ghost_testing'; fi
|
2018-08-30 19:24:49 +03:00
|
|
|
- curl -sSL https://dl.yarnpkg.com/debian/pubkey.gpg | sudo -E apt-key add -
|
|
|
|
- echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee -a /etc/apt/sources.list >/dev/null
|
|
|
|
- sudo -E apt-get -yq update &>> ~/apt-get-update.log
|
|
|
|
- sudo -E apt-get -yq --no-install-suggests --no-install-recommends $TRAVIS_APT_OPTS install yarn
|
2017-01-23 18:32:49 +03:00
|
|
|
|
|
|
|
install:
|
|
|
|
- yarn
|
2017-01-24 18:36:21 +03:00
|
|
|
- if [ "$DB" == "sqlite3" ]; then yarn add --force sqlite3; fi # fix sqlite caching issues
|
2017-01-23 18:32:49 +03:00
|
|
|
|
2019-01-22 20:31:07 +03:00
|
|
|
script: |
|
2019-01-29 21:40:55 +03:00
|
|
|
if [ "${TRAVIS_EVENT_TYPE}" = "cron" && "${TEST_SUITE}" != "lint" ]; then
|
2019-01-22 20:31:07 +03:00
|
|
|
yarn test:regression
|
|
|
|
else
|
|
|
|
yarn test
|
|
|
|
fi
|
|
|
|
|
2015-06-27 22:03:06 +03:00
|
|
|
after_success:
|
2015-07-10 21:13:41 +03:00
|
|
|
- |
|
2015-06-27 22:03:06 +03:00
|
|
|
if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then
|
2019-01-31 14:25:04 +03:00
|
|
|
if [[ "$DB" = "sqlite3" && "$TRAVIS_NODE_VERSION" = "10" ]]; then
|
2015-06-27 22:03:06 +03:00
|
|
|
echo "Generate coverage..."
|
|
|
|
grunt coverage
|
|
|
|
npm install -g codeclimate-test-reporter
|
2015-08-25 18:27:35 +03:00
|
|
|
codeclimate-test-reporter < core/test/coverage/unit/lcov.info
|
2015-06-27 22:03:06 +03:00
|
|
|
else
|
|
|
|
echo "False DB and NODE_VERSION. No coverage generated."
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
echo "This is a PR. No coverage generated."
|
2015-07-02 17:55:10 +03:00
|
|
|
fi
|
2019-01-28 19:45:15 +03:00
|
|
|
|
2019-01-29 16:22:08 +03:00
|
|
|
after_failure: |
|
|
|
|
if [ "${TRAVIS_EVENT_TYPE}" == "cron" ]; then
|
2019-01-29 16:14:50 +03:00
|
|
|
curl -X POST --data-urlencode "payload={\"attachments\": [{\"color\": \"danger\", \"fallback\": \"Build Failure: $TRAVIS_JOB_WEB_URL\", \"title\": \"Build Failure\", \"text\": \"$TRAVIS_JOB_WEB_URL\"}]}" $SLACK_URL
|
2019-01-28 20:24:30 +03:00
|
|
|
fi
|