Start Building for Free
CircleCI.comAcademyBlogCommunitySupport

Enabling GitHub Checks

4 months ago3 min read
Cloud
On This Page

Introduction

This document describes how to enable the GitHub Checks feature and authorize CircleCI to report workflow status to GitHub user interface. The GitHub checks integration feature is not currently available on CircleCI server.

GitHub Checks provides you with workflow status messages and gives the option to rerun workflows from the GitHub Checks page.

After GitHub Checks is enabled, CircleCI workflow status is reported under the checks tab on GitHub.

CircleCI checks on GitHub

GitHub Check and GitHub status updates

GitHub Checks should not be confused with GitHub status updates:

  • GitHub Checks are administered from the GitHub UI, and are reported in the GitHub UI per workflow.
  • GitHub status updates are the default way status updates from your builds are reported in the GitHub UI, and they are reported per job.

If both these features are enabled, in a GitHub PR view the Checks tab will show workflow status and the Checks section in the PR conversation view will show job status.

If you are using GitHuck Checks or GitHub Status updates with the skip jobs feature, the status of the skipped builds will not be reported even though the checks will be created in GitHub.

Prerequisites

  • You must be using the cloud-hosted version of CircleCI.
  • Your project must be using Workflows.
  • You must be an admin on your GitHub repository to authorize installation of the CircleCI Checks integration.

Enable GitHub Checks

  1. In the CircleCI app sidebar, select Organization Settings.
  2. Select VCS.
  3. Click the Manage GitHub Checks button. CircleCI VCS Settings Page
  4. Select the repositories that should use checks and click the Install button.

After installation completes, the Checks tab on the GitHub PR view will be populated with workflow status information, and from here you can rerun workflows or navigate to the CircleCI app to view further information.

Checks status reporting

CircleCI reports the status of workflows and all corresponding jobs under the Checks tab on GitHub. Additionally, Checks provides a button to rerun all workflows configured for your project.

After a rerun is initiated, CircleCI reruns the workflows from the start and reports the status in the Checks tab. To navigate to the CircleCI app from GitHub, click the View more details on CircleCI Checks link.

Disable GitHub Checks for a project

To disable the GitHub Checks integration, navigate to the Organization Settings page in the CircleCI app, then remove the repositories using GitHub Checks, as follows:

  1. Click the Organization Settings option in the CircleCI sidebar.
  2. Select VCS.
  3. Click the Manage GitHub Checks button. The Update CircleCI Checks repository access page appears.
  4. Deselect the repository to uninstall the Checks integration. Click Save. If you are removing GitHub checks from the only repo you have it installed on, you will need to either suspend or uninstall CircleCI Checks.
  5. Confirm that GitHub status updates have been enabled on your project so you will see job level status within PRs in GitHub. Go to the CircleCI app and navigate to Project Settings > Advanced Settings and confirm that the setting GitHub Status Updates is set to on.

CircleCI VCS Settings Page

Uninstall Checks for the organization

  1. Click the Organization Settings option in the CircleCI sidebar.
  2. Select VCS.
  3. Click the Manage GitHub Checks button.
  4. Scroll down and click the Uninstall button to uninstall the GitHub Checks app.

Troubleshoot GitHub Checks waiting for status in GitHub

ci/circleci:build — Waiting for status to be reported

If you have enabled GitHub Checks in your GitHub repository, but the status check never completes on GitHub Checks tab, there may be status settings in GitHub that you need to deselect. For example, if you choose to protect your branches, you may need to deselect the ci/circleci:build status key as this check refers to the job status from CircleCI, as follows:

Uncheck GitHub Job Status Keys

Having the ci/circleci:build checkbox enabled will prevent the status from showing as completed in GitHub when using a GitHub Check because CircleCI posts statuses to GitHub at a workflow level rather than a job level.

Go to Settings > Branches in GitHub and click the Edit button on the protected branch to deselect the settings, for example https://github.com/your-org/project/settings/branches.

Next steps


Suggest an edit to this page

Make a contribution
Learn how to contribute