Ghost/.travis.yml

74 lines
2.0 KiB
YAML
Raw Normal View History

language: node_js
# When changing node version also update it on lines 34, 36 and 46.
node_js:
- "4"
- "6"
sudo: false
2014-07-14 11:12:56 +04:00
cache:
directories:
- node_modules
addons:
apt:
sources:
- sourceline: 'deb https://dl.yarnpkg.com/debian/ stable main'
key_url: 'https://dl.yarnpkg.com/debian/pubkey.gpg'
packages:
- yarn
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
matrix:
include:
- node_js: "4"
env: TEST_SUITE=lint
fast_finish: true
branches:
except:
- /^greenkeeper-.+$/
before_install:
- if [ $DB == "mysql" ]; then mysql -e 'create database ghost_testing'; fi
install:
- yarn
- if [ "$DB" == "sqlite3" ]; then yarn add --force sqlite3; fi # fix sqlite caching issues
after_success:
- |
if [ "$DB" != "sqlite3" ] || [ "$TRAVIS_NODE_VERSION" != "4" ] || [[ "$TRAVIS_PULL_REQUEST_BRANCH" != *"greenkeeper"* ]]; then
exit 0
fi
git clone -b "$TRAVIS_PULL_REQUEST_BRANCH" "https://"$PUSH_TOKEN"@github.com/"$TRAVIS_REPO_SLUG".git" repo && cd repo
git log --name-status HEAD^..HEAD | grep "update" || exit 0
yarn
git config --global user.email "github@ghost.org"
git config --global user.name "TryGhost-Travis"
git config --global push.default simple
git add yarn.lock
git commit -m "chore: yarn.lock"
git push
- |
if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then
if [[ "$DB" = "sqlite3" && "$TRAVIS_NODE_VERSION" = "4" ]]; then
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
else
echo "False DB and NODE_VERSION. No coverage generated."
fi
else
echo "This is a PR. No coverage generated."
fi