Codecov

Code coverage done right.®

Welcome to Codecov Documentation. You'll find comprehensive guides and documentation to help you start working with Codecov as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started

Link Service Provider

A service provider is the product you use to host your source code. Codecov integrates with GitHub, Github Enterprise, Bitbucket, Bitbucket Server (formally Stash), GitLab and GitLab Enterprise. Please choose one or more provider to link with your Codecov Enterprise.

Do not indent your service provider configuration

A common configuration error is to indent the service provider configuration under the setup block in your codecov.yml. This will result in errors when running codecov enterprise.

When adding service providers, be sure to add them to the codecov.yml as follows:

setup:
    # various setup configs
github_enterprise:
    # provider config

GitHub.com

Below is the guide to link Github.com to your Codecov Enterprise.

Step 1 - Create a new application

  1. Create a new application at https://github.com/settings/applications/new
  2. Fill in an Application Name, ex Codecov Enterprise
  3. (optional) Upload Codecov avatar
  4. Specify Homepage URL to your CE endpoint https://codecov-enterprise-hostname.com
  5. Specify the Authorization Callback URL https://codecov-enterprise-hostname.com/login/github
  6. Click Register Application
    • Store the Client ID and Client Secret for use in the configuration below

Step 2 - Configuration

Append the information collected in step 1 in your enterprise codecov.yml.

github:
  client_id: "Client ID"
  client_secret: "Client Secret"

Step 3 - Restart

Restart your Codecov Enterprise to complete the integration.

GitHub Enterprise

Your Github Enterprise (GHE) is a self-hosted instance of Github. It likely located behind your firewall. Codecov Enterprise (CE) will need to communicate with your GHE to function properly. Please follow these configuration steps to setup your instance properly.

Please replace https://enterprise-hostname.com with the root url of your GHE.

Step 1 - Create a new application

  1. Create a new application at https://enterprise-hostname.com/settings/applications/new
  2. Fill in an Application Name, ex Codecov Enterprise
  3. (optional) Upload Codecov avatar
  4. Specify Homepage URL to your CE endpoint https://codecov-enterprise-hostname.com
  5. Specify the Authorization Callback URL https://codecov-enterprise-hostname.com/login/ghe
  6. Click Register Application
    • Store the Client ID and Client Secret for use in the configuration below

Step 2 - Configuration

Append the information collected in step 1 in your enterprise codecov.yml.

github_enterprise:
  url: "https://enterprise-hostname.com"
  api_url: "https://enterprise-hostname.com/api/v3"
  client_id: "Client ID"
  client_secret: "Client Secret"

Step 3 - Restart

Restart your Codecov Enterprise to complete the integration.

Bitbucket.org

Below is the guide to link Github.com to your Codecov Enterprise.

Step 1 - Add OAuth consumer

  1. Create a new OAuth consumer
    • Goto https://bitbucket.org/account/user/USERNAME/oauth-consumers/new
    • Replace USERNAME with your username or team name above
    • You may review Bitbucket's guide too
  2. Fill in an Application Name, ex Codecov Enterprise
  3. Fill in an Callback URL to http://codecov.domain.com/login/bitbucket
  4. Fill in an URL to http://codecov.domain.com/bb
  5. Toggle the permissions as seen in the image below.
  6. Click Save
  7. In your list of OAuth Consumers click on your new entry.
    • Copy the Key and Secret for your codecov.yml

Step 2 - Configuration

Append the information collected in step 1 in your enterprise codecov.yml.

bitbucket:
  client_id: "key"
  client_secret: "secret"

Step 3 - Restart

Restart your Codecov Enterprise to complete the integration.

Bitbucket Server / Bitbucket Enterprise

Bitbucket Server (BBS, formally Stash) is a self-hosted instance of Bitbucket. Codecov Enterprise (CCE) will need to communicate with your BBS to function properly. Please follow these configuration steps to setup your instance properly.

Step 1 - Create a new Application Link

  1. Create a unique Consumer Key, ex UUID: a49d1f9e-294c-4cd6-a44c-e5e4440e67c9
  2. Configure Application Link at <BBS>/plugins/servlet/applinks/listApplicationLinks
  3. Enter the URL of your Codecov Enterprise instance (<CCE>) next to Create a new link button
  4. Fill in application details
    • Application Name: Codecov
    • Application Type: Generic Application
    • Leave the remaining field empty.
  5. Click *Continue
  6. Now the link is added. Please click Edit on the Codecov link.
  7. Click on the tab Incoming Authorization
  8. Fill in the details:
    • Consumer Key with your generated client id.
    • Consumer Name with Codecov
    • Public Key (see below)
    • Consumer Callback URL with <CCE>/login/bitbucket_server
  9. Click Save

    You should now see Codecov in your Application Links

MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC9d2iMTFiXglyvHmp5ExoNK2X8nxJ+1mlxgWOyTUpTrOKRiDUbZoZID3TP8CobQ5BsqDOSawHyi+Waf9Ca+iYoTu1fa8yZUreQXAdaK1u61Mn2XCkmITE/N5kvbYjDEWA1Dwb6CsvVkYZXo/Eq1X/3yrLXWKDNEnm0Cq48PFWqMQIDAQAB

Step 2 - Configuration

Append the information collected in step 1 in your enterprise codecov.yml.

bitbucket_server:
  url: "<BBS>"
  client_id: "Consumer Key from above"

Step 3 - Restart Codecov container

Restart your Codecov Enterprise container to complete the integration.

GitLab.com

GitLab.com follows the same install setup as GitLab CE/EE below.

GitLab CE/EE

Your Gitlab Enterprise (CE/EE) (aka GLE) is a self-hosted instance of Gitlab. It's likely located behind your firewall. Codecov Enterprise (CE) will need to communicate with your GLE to function properly. Please follow these configuration steps to setup your instance properly.

Link your Gitlab Enterprise to Codecov Enterprise

Please replace https://enterprise-hostname.com with the root url of your GLE.

Using GitLab.com?

If you're using gitlab.com's hosted offering, you should use https://gitlab.com as your root url.

Step 1 - Create a new application

  1. Create a new application at https://enterprise-hostname.com/profile/applications
  2. Fill in an Application Name, ex Codecov Enterprise
  3. Specify the redirect URI for your CE endpoint https://codecov-enterprise-hostname.com/login/gitlab_enterprise
  4. Click Submit
    • Store the Application Id and Secret for use in the configuration below

Step 2 - Configuration

Append the information collected in step 1 in your enterprise codecov.yml.

gitlab_enterprise:
  url: "https://enterprise-hostname.com"
  client_id: "Application Id"
  client_secret: "Secret"

Step 3 - Restart Codecov container

Restart your Codecov Enterprise container to complete the integration.

Have a self-signed SSL certificate? Add your ssl.pem with this documentation.

Include ssl.pem for self-signed SSL

Two steps: (1) add the ssl pem location to your codecov.yml, (2) include it in your docker run

gitlab_enterprise:
  ssl_pem: "/gle.ssl.pem"
docker run -it --rm \
  -v "$PWD/codecov.yml:/codecov.yml" \
  -v "$PWD/gle.ssl.pem:/gle.ssl.pem" \  # this is added
  --link codecov-redis:redis \
  --link codecov-postgres:postgres \
  codecov/enterprise:v?.?.?

Updated 11 months ago


What's Next

Configuration

Link Service Provider


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.