sudo: false
dist: trusty
addons:
chrome: stable
language: node_js
node_js:
- "4"
- "6"
- "8"
- "9"
branches:
only:
- master
- beta
- release
- auto
- /^greenkeeper.*$/
cache:
yarn: true
directories:
- $HOME/.npm
- $HOME/.cache # includes bower's cache
env:
- TEST_COMMAND=test-all
matrix:
fast_finish: true
# We run our additional tests against the most-recent LTS.
# Rather than make the support unclear at the top, we'll manually exclude
# the default build and swap in the different commands.
exclude:
- node_js: "6"
env: TEST_COMMAND=test-all
# This is the reworking of the tests we run against the most-recent LTS.
include:
- node_js: "6"
env: TEST_COMMAND=test-all:cover
- node_js: "6"
env: DISABLE_EMBER_CLI_FEATURES=true; TEST_COMMAND=test-all
before_install:
# Once we no longer support Node.js 0.12 we can drop this entire section.
# prevent the npm loading indicator
- npm config --global set spin false
# if npm version is less than 3.0.0, upgrade to 3
- if [[ $(npm -v | cut -d '.' -f 1) -lt 3 ]]; then npm i -g npm@^3; fi
- if [[ $(npm -v | cut -d '.' -f 1) -gt 4 ]]; then npm i -g npm@^4; fi
# travis currently includes yarn v0.17.8 (20170705)
# this isn't new enough for our use of --non-interactive
- curl -o- -L https://yarnpkg.com/install.sh | bash
- export PATH=$HOME/.yarn/bin:$PATH
script:
# For now we will use `npm` to kick off the test suite.
# Can switch to `yarn` once we no longer support Node.js 0.12:
# - yarn run $TEST_COMMAND
- npm run-script $TEST_COMMAND
after_success:
- if [[ $TEST_COMMAND == 'test-all:cover' ]]; then .travis/codecoverage.sh; fi
- .travis/deploy.sh