The easy open source way to privately host your code coverage.
CVR View is an Express application for hosting your code coverage results. If you'd like to host your coverage internally, or without paying for monthly services, CVR View might be for you.
To get started, using the seed project is recommended to make your future updating as simple as a new npm install
.
Configuration requires some setup and copying of related details into environment variables on the machine hosting Node.js:
The required configuration information is for GitHub OAuth and the MongoDB connection string. This info can be specified in either a .env
file in the project root, or via environment variables. A .env-sample
file is included that you can fill out and rename as .env
.
If required variables are missing a crash will occur.
GITHUB_CLIENTID
GitHub OAuth Client IDGITHUB_CLIENTSECRET
GitHub OAuth Client SecretGITHUB_CALLBACKURL
GitHub OAuth Callback URLDB_CONN
MongoDB Connection StringHOST
The host the server will run onGITHUB_ORGS_WHITELIST
Optional array of allowed GitHub orgs. If empty or omitted, all orgs are allowed.MAX_REPO_COMMIT_HISTORY
By default only the last 20 commits per repo are saved to conserve storage space.A GitHub application must be created through GitHub.com to give access to repos in your organization. It is not recommended to make the application on this page https://github.com/settings/applications/new but if you select the relevant organization from the bottom left of the page and then select Applications on the left, you can make the application under the organization's account.
cvr
will do.https://cvr.domain.com
./auth/github/callback
, so with our example that would be https://cvr.domain.io/auth/github/callback
. This is the same URL to use for the environment variable GITHUB_CALLBACKURL
If you are not familiar with hosting MongoDB, using a service like MongoLab is recommended. Once you create an instance and user, grab the connection string, which is a URL, and assign it to the DB_CONN
environment variable. This URL starts with mongodb://
.
Running the service with something like Forever that provides automatic restarts is recommended. For example:
npm install
npm install forever -g
forever start bin/www
The application will need to be hosted under a domain that matches the one you entered when creating the GitHub application. This needs to be configured at the DNS level, generally as a CNAME.