2016-04-18 17:22:23 -04:00
|
|
|
language: node_js
|
|
|
|
node_js:
|
2018-05-08 19:36:01 -04:00
|
|
|
- 8
|
2018-11-19 15:09:38 -05:00
|
|
|
- 10
|
2017-05-12 19:48:03 -04:00
|
|
|
env:
|
2018-05-08 19:37:09 -04:00
|
|
|
global:
|
|
|
|
- NODE_ENV=production
|
|
|
|
matrix:
|
2017-05-14 15:56:06 -04:00
|
|
|
- NPM_SCRIPT="tap:unit -- --jobs=4"
|
|
|
|
- NPM_SCRIPT="tap:integration -- --jobs=4"
|
2016-04-18 17:22:23 -04:00
|
|
|
cache:
|
|
|
|
directories:
|
2018-06-28 10:34:54 -04:00
|
|
|
- "$HOME/.npm"
|
2018-06-28 10:51:16 -04:00
|
|
|
before_install:
|
|
|
|
# package-lock.json was introduced in npm@5
|
|
|
|
- '[[ $(node -v) =~ ^v9.*$ ]] || npm install -g npm@latest' # skipped when using node 9
|
|
|
|
- npm install -g greenkeeper-lockfile
|
|
|
|
install:
|
2018-06-28 11:22:35 -04:00
|
|
|
- if [[ ${TRAVIS_BRANCH:0:11} = greenkeeper ]]; then npm install --production=false; else npm ci --production=false; fi
|
2018-06-28 10:51:16 -04:00
|
|
|
before_script: greenkeeper-lockfile-update
|
2017-05-12 19:48:03 -04:00
|
|
|
script: npm run $NPM_SCRIPT
|
2018-06-28 10:51:16 -04:00
|
|
|
after_script: greenkeeper-lockfile-upload
|
2017-05-12 19:48:03 -04:00
|
|
|
jobs:
|
|
|
|
include:
|
|
|
|
- env: NPM_SCRIPT=lint
|
2018-05-08 19:38:05 -04:00
|
|
|
node_js: 8
|
2018-05-31 17:03:55 -04:00
|
|
|
- env: NPM_SCRIPT=build
|
|
|
|
node_js: 8
|
|
|
|
if: not (branch in (master, develop) and type != pull_request)
|
2017-05-12 19:48:03 -04:00
|
|
|
- stage: release
|
2018-05-08 19:38:05 -04:00
|
|
|
node_js: 8
|
2017-07-19 12:04:22 -04:00
|
|
|
env: NPM_SCRIPT=build
|
|
|
|
before_deploy:
|
2018-07-18 15:16:57 -04:00
|
|
|
- npm --no-git-tag-version version $($(npm bin)/json -f package.json version)-prerelease.$(date +%Y%m%d%H%M%S)
|
2018-06-21 17:53:45 -04:00
|
|
|
- git config --global user.email "$(git log --pretty=format:"%ae" -n1)"
|
|
|
|
- git config --global user.name "$(git log --pretty=format:"%an" -n1)"
|
2017-05-12 19:48:03 -04:00
|
|
|
deploy:
|
2018-04-06 10:13:29 -04:00
|
|
|
- provider: npm
|
2018-05-09 16:47:06 -04:00
|
|
|
on:
|
|
|
|
all_branches: true
|
2017-05-12 19:48:03 -04:00
|
|
|
skip_cleanup: true
|
2018-04-06 10:13:29 -04:00
|
|
|
email: $NPM_EMAIL
|
|
|
|
api_key: $NPM_TOKEN
|
|
|
|
- provider: script
|
2018-05-09 16:47:06 -04:00
|
|
|
on:
|
|
|
|
all_branches: true
|
2017-07-19 13:48:55 -04:00
|
|
|
skip_cleanup: true
|
2018-04-06 10:13:29 -04:00
|
|
|
script: npm run --silent deploy -- -x -r $GH_PAGES_REPO
|
2018-05-08 23:37:54 -04:00
|
|
|
stages:
|
|
|
|
- test
|
|
|
|
- name: release
|
2018-05-09 09:49:30 -04:00
|
|
|
if: branch in (master, develop) and type != pull_request
|