docs: add Code of Conduct
[express.git] / .travis.yml
blob37735595818e4920a9ed9fc5f112174c31512883
1 language: node_js
2 node_js:
3   - "0.10"
4   - "0.12"
5   - "1.8"
6   - "2.5"
7   - "3.3"
8   - "4.9"
9   - "5.12"
10   - "6.17"
11   - "7.10"
12   - "8.17"
13   - "9.11"
14   - "10.19"
15   - "11.15"
16   - "12.16"
17 matrix:
18   include:
19     - node_js: "13"
20       env: "NVM_NODEJS_ORG_MIRROR=https://nodejs.org/download/nightly"
21   allow_failures:
22     # Allow the nightly installs to fail
23     - env: "NVM_NODEJS_ORG_MIRROR=https://nodejs.org/download/nightly"
24 cache:
25   directories:
26     - node_modules
27 before_install:
28   # Configure npm
29   - |
30     # Skip updating shrinkwrap / lock
31     npm config set shrinkwrap false
32   # Remove all non-test dependencies
33   - |
34     # Remove example dependencies
35     npm rm --silent --save-dev connect-redis
36   # Setup Node.js version-specific dependencies
37   - |
38     # mocha for testing
39     # - use 3.x for Node.js < 4
40     # - use 5.x for Node.js < 6
41     # - use 6.x for Node.js < 8
42     if [[ "$(cut -d. -f1 <<< "$TRAVIS_NODE_VERSION")" -lt 4 ]]; then
43       npm install --silent --save-dev mocha@3.5.3
44     elif [[ "$(cut -d. -f1 <<< "$TRAVIS_NODE_VERSION")" -lt 6 ]]; then
45       npm install --silent --save-dev mocha@5.2.0
46     elif [[ "$(cut -d. -f1 <<< "$TRAVIS_NODE_VERSION")" -lt 8 ]]; then
47       npm install --silent --save-dev mocha@6.2.2
48     fi
49   - |
50     # supertest for http calls
51     # - use 2.0.0 for Node.js < 4
52     # - use 3.4.2 for Node.js < 6
53     if [[ "$(cut -d. -f1 <<< "$TRAVIS_NODE_VERSION")" -lt 4 ]]; then
54       npm install --silent --save-dev supertest@2.0.0
55     elif [[ "$(cut -d. -f1 <<< "$TRAVIS_NODE_VERSION")" -lt 6 ]]; then
56       npm install --silent --save-dev supertest@3.4.2
57     fi
58   # Update Node.js modules
59   - |
60     # Prune and rebuild node_modules
61     if [[ -d node_modules ]]; then
62       npm prune
63       npm rebuild
64     fi
65 script:
66   # Run test script
67   - npm run test-ci
68   # Run linting
69   - npm run lint
70 after_script:
71   - |
72     # Upload coverage to coveralls
73     npm install --save-dev coveralls@2.12.0
74     coveralls < ./coverage/lcov.info