ember-cli-doorkeeper
v0.2.0
Published
Fail CI on pull requests in Ember apps and addons if code coverage drops by a specified threshold
Maintainers
Readme
ember-cli-doorkeeper
This addon will fail CI on pull requests in Ember apps and addons if code coverage drops by a specified threshold when using ember-cli-code-coverage.
Installation and Configuration
ember install ember-cli-doorkeeper- Set your
npm testcommand toember doorkeeper - Add your test command to
testCommandin.doorkeeperrc.js. The default isCOVERAGE=true ember test. For addons, useCOVERAGE=true ember try:each. - Add
!/coverage/coverage-summary.jsonto.gitignore - Run your test suite locally to generate
coverage/coverage-summary.jsonand commit it to your repo.
How It Works
The ember-cli-code-coverage addon generates code coverage results in coverage/coverage-summary.json. This addon works by generating code coverage for a PR and comparing the results against the code coverage results on the master branch (you can configure which branch to compare against in .doorkeeperrc.js via the mainBranch option).
When adding this to your project for the first time, coverage/coverage-summary.json may not be under version control. If this file isn't present in mainBranch, your tests will run as normal and code coverage comparison won't run.
In order to keep coverage/coverage-summary.json up to date in mainBranch, each PR should contain a new coverage/coverage-summary.json. CI will still generate a new one on PRs and use that to compare against the one in mainBranch, but it won't commit it back to the PR. If someone knows how to do this with various CI systems, please reach out and we can update this README with examples.
