chore(ci): Migrate CI jobs to circleci#2096
Conversation
45dcd83 to
b4b9c5b
Compare
f4bbde6 to
425e88b
Compare
3041baf to
fc28fd9
Compare
Codecov Report
@@ Coverage Diff @@
## master #2096 +/- ##
==========================================
Coverage ? 100.00%
==========================================
Files ? 32
Lines ? 1567
Branches ? 0
==========================================
Hits ? 1567
Misses ? 0
Partials ? 0 Continue to review full report at Codecov.
|
fc28fd9 to
3ff9306
Compare
|
All the circleci jobs looks finally good now (included the windows one), it does submit the coverage data to codecov and I've just applied the last small "circleci"-related tweak to the script that lint the pull request message (which does make us sure that it does follows the conventions expected by the changelog generator utility when there is more than one commit in a repo9) \o/ @muffinresearch @willdurand This should now be good to go, any additional review comments to cover before I'll merge this? |
3ff9306 to
b591a71
Compare
muffinresearch
left a comment
There was a problem hiding this comment.
Thanks for taking the time to get this up and running Luca 👍
| const config = require('./config'); | ||
|
|
||
| // Get the explicit path (needed on travis windows workers). | ||
| // Get the explicit path (needed on CI windows workers). |
There was a problem hiding this comment.
Good call on generalizing.
This pull requests includes the changes needed to migrate our CI jobs from Travis CI to CircleCI:
new CircleCI workflow config (./circleci/config.yml), the workflow is organized as follows:
references.nodejs_versionis the set of nodejs version we run the tests on, these are the only properties of the workflow that needs to be updated to change the nodejs versions tested (without having to mess with the job definition and risk to break some by mistake)build-nodejs-current: run the full test suite (included additional steps for the functional tests), collect and publish coverage, persist build to reuse inrelease_tagjobbuild-nodejs-nextandbuild-nodejs-experimental: run the full test suite, without flow-checks, coverage collection and running the functional tests only once in npm production modetest-windows: run unit test and functional tests on windows (to catch windows-only regressions), skip flow-checks, coverage collection. This job does also retry once the functional tests if they fail (they used to be intermittent on travis windows workers)release_tag: rebuild in production mode and release the new version on npmsmall changes to scripts used in CI jobs to adapt them to the CircleCI environment (in particular script/travis-pr-title-lint has been adapted to use the CIRCLE_PULL_REQUEST environment var).
migrated from coveralls to codecov (because coveralls would require a token which we can't expose to pull requests jobs)
Testing notes: