GitHub Checks with the Bitrise GitHub App
Bitrise Checks is a GitHub app which provides an extended version of the classic status checks Bitrise sends back to GitHub.
GitHub App integration
If you use the Bitrise GitHub App to connect a Bitrise Workspace to a GitHub account or organization, you don't need to do anything described in this section: GitHub Checks will automatically work for you to provide status updates.
You can, however, continue to use the OAuth connection for your apps and use GitHub Checks with our GitHub App.
The Bitrise GitHub App provides, among other things, an extended version of the classic build status checks that Bitrise sends back to GitHub. This extended version includes a Bitrise build summary and a check status. You can view the checks if you click the Details link of a pull request on GitHub. It unfolds the detailed build summary and build status our GitHub app attaches to your pull request on the Checks tab of GitHub.
There can be three different check statuses:
-
Success.
-
Failed.
-
Action required (in the case of manual pull request approval).
To start using Bitrise Checks, you need to perform two separate actions:
-
Install Bitrise Checks: Install our GitHub app to your repository. This is only necessary for GitHub.com users. GitHub Enterprise Server users who already set up the integration can proceed to enable Bitrise Checks.
-
Enable Bitrise Checks: Turn on the feature on the Bitrise website and run a first build to be able to select Bitrise Checks in your branch protection rules.
Installing Bitrise Checks
To use Bitrise Checks as a GitHub.com user, you need to install it as a GitHub app.
If the Workspace that owns the Bitrise app has the Bitrise GitHub App connected and granted access to the Bitrise app's repository, you don't need to install or enable Bitrise Checks: you can just start using it.
GitHub.com users only
If you are a GitHub Enterprise Server user, you don't need to do this procedure. To enable Bitrise Checks, you need to:
-
Open your project on Bitrise with a user that has the Admin role on the project.
-
On the main page of the project, click on the Project settings button.
-
On the left, select Integrations from the menu options.
-
Click the install our Bitrise Checks app to your GitHub repository LINK under the toggle. Don’t toggle the switch just yet, since you first need to install Bitrise Checks.
This link will take you to GitHub's Bitrise Checks installation page.
-
On the Install Bitrise Checks page, select the user or GitHub Organization you want to add Bitrise Checks to.
-
Select an option to install Bitrise Checks to:
-
: Applies to all current and future repositories.
-
: Select the repositories that you need.
With this, you authorize Bitrise Checks to act on your behalf; for example, to check which repos you have access to, and use GitHub Checks to display check results.
-
-
Click
. -
In the GitHub prompt, provide your GitHub password.
If all goes well, you land on the Bitrise Checks page of GitHub. You should see a blue note at the top-left corner of the page that Bitrise Checks has been successfully installed on your GitHub account.
Enabling GitHub Checks on Bitrise
Once Bitrise Checks is installed on GitHub, you need to enable GitHub Checks on your app’s page on Bitrise.
Enabling GitHub Checks is limited
Please note that only Workspace owners and app admins can enable this toggle on the App Settings page of the app.
-
Open your project on Bitrise with a user that has the Admin role on the project.
-
On the main page of the project, click on the Project settings button.
-
On the left, select Integrations from the menu options.
-
Scroll down and toggle on the
switch.Can't toggle the switch?
If you can't toggle the switch, check out Can't enable GitHub Checks.
-
Trigger a build. You can do so either automatically or manually. If you trigger a build manually, provide a specific commit hash to build.
This build is necessary to perform the first Bitrise check. Once there is a finished check, you can select Bitrise Checks in your branch protection rules.
And you’re done! Now any pull request you open to your app on GitHub will be validated with Bitrise Checks and a build will get automatically started on Bitrise (if the pull request trigger is properly set on Bitrise).
You can easily get to your app’s page on Bitrise. If you click on the build summary or on View more details on Bitrise Checks link on the Checks tab, you’ll quickly get to your app’s Build page.
Can't enable GitHub Checks
There are two main reasons why you might not be able to toggle the switch to enable GitHub Checks:
-
You cannot toggle the switch unless you install Bitrise Checks FIRST. Once it’s done, you can go ahead and toggle the switch to the right to enable it.
-
If you have renamed or moved the GitHub repository of an app which has already been added to Bitrise and you have installed Bitrise Checks on it. The repository’s GitHub URL has obviously changed. GitHub Checks switch can only work if the URL on Github and on Bitrise fully match (no redirect URL is allowed). So in this case, you have to manually update the Repository URL of your app.
Switching to Bitrise Checks from previous CI checks
If you have been already using status checks on pull requests prior to merging, it must have been the ci/bitrise/...
check system. To be able to use Bitrise Checks, you have to manually switch from ci/bitrise/...
to Bitrise to
access those detailed checks. Let’s see how!
-
Go to the Settings tab of your repository.
-
Click Branches on the side menu. Under Require status checks to pass before merging, you can see
ci/bitrise/...
as the selected checks system. -
Select Bitrise instead of
ci/bitrise/...
. -
Merge a pull request.
Disabling GitHub Checks
You can easily disable GitHub Checks on Bitrise if you toggle the ENABLE GITHUB CHECKS switch to the left on the Settings page of the app.
If you decide to uninstall Bitrise Checks from your GitHub account, you can click the Uninstall button on the Install GitHub Apps page.
GitHub Checks test summary
If your app’s repository contains any UI or unit tests, you can run those tests by using the appropriate testing Steps in your Workflow, and if you add the Deploy to Bitrise.io Step, your test results will be displayed in our Test Reports page and you can also see them on GitHub Checks, too.
For example, if you have an Android app, you can use the Virtual Unit Testing for Android Step to be able to see all your test results on GitHub Checks.
Step by Step error report
If a CI build runs, GitHub Checks' test summary displays the Steps' successful and failed tests in separate tabs on the left sidebar. If you click on a Step, a more detailed report summary comes up where a number of tests are listed with actionable error report. The build summary is available on the Bitrise tab.
Please note that GitHub Checks' test summary can only print detailed information of the following Steps:
-
Xcode Test for iOS
-
Android Unit Test
-
iOS Device Testing
-
Virtual Device Testing for Android
-
Flutter Test
You can export test results generated by any other Step to the Deploy to Bitrise.io Step in two ways:
-
We strongly recommend using our Export test results to the Test reports add-on Step: this Step locates the test results based on your inputs.
-
You can configure your own custom Script Step that creates and exports the necessary files.
Checking the test results of a failed Step
If your build has some failed tests, here is how to access them in GitHub Checks:
-
Click the Bitrise Checks dropdown.
-
Click on a Step and view the error report of the specific Step.
You can click on other Steps from here or the build summary. The View more details on Bitrise Checks link takes you to the build page on Bitrise.
Re-running a build using GitHub checks
Role requirement
To re-run a build using GitHub Checks, your GitHub account must connected to Bitrise, and you need to have at least Developer role in your app's team. If these conditions are not met, re-run checks will fail without an error.
For a complete list of user roles and role cheatsheets, check User roles on app teams.
If you would like to re-run a build using GitHub Checks:
-
Open the pull request on GitHub where you would like to re-run checks.
-
Open the Checks tab.
-
Click
.