language: node_js node_js: - 8 - node env: global: - NODE_ENV=production matrix: - NPM_SCRIPT="tap:unit -- --jobs=4" - NPM_SCRIPT="tap:integration -- --jobs=4" sudo: false cache: directories: - node_modules install: - npm --production=false install - npm --production=false update script: npm run $NPM_SCRIPT jobs: include: - env: NPM_SCRIPT=lint node_js: 8 - stage: release node_js: 8 env: NPM_SCRIPT=build before_deploy: - npm --no-git-tag-version version $($(npm bin)/json -f package.json version)-prerelease.$(date +%s) - git config --global user.email $(git log --pretty=format:"%ae" -n1) - git config --global user.name $(git log --pretty=format:"%an" -n1) deploy: - provider: npm skip_cleanup: true email: $NPM_EMAIL api_key: $NPM_TOKEN - provider: script skip_cleanup: true script: npm run --silent deploy -- -x -r $GH_PAGES_REPO stages: - test - name: release if: branch in (master, develop)