{"id":15922636,"url":"https://github.com/iamdtang/ember-cli-doorkeeper","last_synced_at":"2026-04-18T04:01:41.816Z","repository":{"id":57223254,"uuid":"110194599","full_name":"iamdtang/ember-cli-doorkeeper","owner":"iamdtang","description":"Fail CI on pull requests in Ember apps and addons if code coverage drops by a specified threshold","archived":false,"fork":false,"pushed_at":"2018-03-20T07:28:22.000Z","size":40,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-16T05:43:26.868Z","etag":null,"topics":["ci","coverage","coverage-drops","ember","emberjs"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/ember-cli-doorkeeper","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iamdtang.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-11-10T02:51:48.000Z","updated_at":"2018-03-20T07:24:56.000Z","dependencies_parsed_at":"2022-08-24T16:20:52.854Z","dependency_job_id":null,"html_url":"https://github.com/iamdtang/ember-cli-doorkeeper","commit_stats":null,"previous_names":["skaterdav85/ember-cli-doorkeeper"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/iamdtang/ember-cli-doorkeeper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamdtang%2Fember-cli-doorkeeper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamdtang%2Fember-cli-doorkeeper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamdtang%2Fember-cli-doorkeeper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamdtang%2Fember-cli-doorkeeper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iamdtang","download_url":"https://codeload.github.com/iamdtang/ember-cli-doorkeeper/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamdtang%2Fember-cli-doorkeeper/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31955919,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ci","coverage","coverage-drops","ember","emberjs"],"created_at":"2024-10-06T20:23:08.617Z","updated_at":"2026-04-18T04:01:41.799Z","avatar_url":"https://github.com/iamdtang.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/skaterdav85/ember-cli-doorkeeper.svg?branch=master)](https://travis-ci.org/skaterdav85/ember-cli-doorkeeper)\n\n# ember-cli-doorkeeper\n\nThis 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`](https://github.com/kategengler/ember-cli-code-coverage).\n\n## Installation and Configuration\n\n1. `ember install ember-cli-doorkeeper`\n2. Set your `npm test` command to `ember doorkeeper`\n3. Add your test command to `testCommand` in `.doorkeeperrc.js`. The default is `COVERAGE=true ember test`. For addons, use `COVERAGE=true ember try:each`.\n4. Add `!/coverage/coverage-summary.json` to `.gitignore`\n5. Run your test suite locally to generate `coverage/coverage-summary.json` and commit it to your repo.\n\n## How It Works\n\nThe [`ember-cli-code-coverage`](https://github.com/kategengler/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).\n\nWhen 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.\n\nIn 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.__\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiamdtang%2Fember-cli-doorkeeper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiamdtang%2Fember-cli-doorkeeper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiamdtang%2Fember-cli-doorkeeper/lists"}