Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorForrest L Norvell <forrest@npmjs.com>2016-06-24 01:57:10 +0300
committerForrest L Norvell <forrest@npmjs.com>2016-06-28 21:45:25 +0300
commit8a5b926188c8c2296d59061af97d98b5743f3d75 (patch)
tree6efaf70bfc5dffd339c5bc42812e79eba3cec3cb
parentc84390830771c31c194cc0017c7dd04c5932a5c4 (diff)
ci: speed up Travis
The new configuration only runs coverage checks against Node.js LTS, which speeds up all the other test runs. By, like, a lot. Also, the entire file has been extensively commented, so the next time we need to mess with it, we'll be able to better remember why all the weird bits are there. Credit: @othiym23
-rw-r--r--.travis.yml42
-rw-r--r--package.json4
2 files changed, 28 insertions, 18 deletions
diff --git a/.travis.yml b/.travis.yml
index d4cef3e3d..988ee7e30 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,23 +1,31 @@
+sudo: false
+# need to declare the language as well as the matrix below
language: node_js
-node_js:
- # LTS is our most important target
- - "4"
- # next LTS and master is next most important
- - "6"
- # still in LTS maintenance until fall 2016
- # (also still in wide use)
- - "0.10"
- # will be unsupported as soon as 6 becomes LTS and 7 released
- - "5"
- # technically in LTS / distros, unbeloved
- - "0.12"
-env:
- - DEPLOY_VERSION=testing
+# having top-level `env:` adds a phantom build
+# https://github.com/travis-ci/travis-ci/issues/4681
+#env: DEPLOY_VERSION=testing
+matrix:
+ include:
+ # LTS is our most important target
+ - node_js: "4"
+ # DEPLOY_VERSION is used to set the couchapp setup mode for test/tap/registry.js
+ # only gather coverage info for LTS
+ env: DEPLOY_VERSION=testing COVERALLS_REPO_TOKEN="$COVERALLS_OPTIONAL_TOKEN"
+ # next LTS and master is next most important
+ - node_js: "6"
+ env: DEPLOY_VERSION=testing
+ # still in LTS maintenance until fall 2016 (also still in wide use)
+ - node_js: "0.10"
+ env: DEPLOY_VERSION=testing
+ # will be unsupported as soon as 6 becomes LTS and 7 released
+ - node_js: "5"
+ env: DEPLOY_VERSION=testing
+ # technically in LTS / distros, unbeloved
+ - node_js: "0.12"
+ env: DEPLOY_VERSION=testing
before_install:
- - "npm config set spin false"
- "node . install -g ."
+ # required by test/tap/registry.js
- "mkdir -p /var/run/couchdb"
-sudo: false
-script: "npm test"
notifications:
slack: npm-inc:kRqQjto7YbINqHPb1X6nS3g8
diff --git a/package.json b/package.json
index 0a34e4355..300177a25 100644
--- a/package.json
+++ b/package.json
@@ -202,8 +202,10 @@
"dumpconf": "env | grep npm | sort | uniq",
"prepublish": "node bin/npm-cli.js prune --prefix=. --no-global && rimraf test/*/*/node_modules && make doc-clean && make -j4 doc",
"preversion": "bash scripts/update-authors.sh && git add AUTHORS && git commit -m \"update AUTHORS\" || true",
- "tap": "tap --coverage --reporter=classic --timeout 300",
+ "tap": "tap --reporter=classic --timeout 300",
+ "tap-cover": "tap --coverage --reporter=classic --timeout 600",
"test": "standard && npm run test-tap",
+ "test-coverage": "npm run tap-cover -- \"test/tap/*.js\"",
"test-tap": "npm run tap -- \"test/tap/*.js\"",
"test-node": "\"$NODE\" \"node_modules/.bin/tap\" --timeout 240 \"test/tap/*.js\""
},