When a branch/PR is pushed, we test a lot of stuff:
- run tests on latest Node.js version (10.x for now)
- run tests on Node.js 8.x (LTS)
- run tests on Node.js 6.x (LTS)
- run tests on Node.js 4.x with the ES5 build (to validate the ES5 build even if Node.js 4.x is EOL)
- run tests on Chrome/Firefox for the browser version of the client
For now, they are all run inside the build and test stage. The Jenkinsfile could be refactored to have:
- a lint stagge
- a build stage
- a browser build stage
- run node (latest or latest LTS?) and browser tests against Nuxeo master
- launch parallel tests on other node versions against Nuxeo master
- launch parallel tests on 7.10, 8.10 and 9.10 (Nuxeo LTS versions): those tests should be node (latest or latest LTS?) and browser tests.
Commit status could be:
lint
build/es5
build/browser
test/master/browser
test/master/node/10.x
test/master/node/8.x
test/master/node/6.x
test/master/es5
test/9.10/browser
test/9.10/node/10.x (or 8.x?)
test/8.10/browser
test/8.10/node/10.x (or 8.x?)
test/7.10/browser
test/7.10/node/10.x (or 8.x?)