GitHub Enterprise Server
Overview
Heeler connects to your GitHub Enterprise Server (GES) account by using a GitHub App that you create in your GES account. Your GitHub App will require information about Heeler (documented below) plus a Secret, which you will need to get from us directly. Please contact us via Slack or email for the Secret.
Requirements
To connect to GitHub Enterprise Server, you must have permission to create a GitHub App. For Heeler to use the GitHub App, it must have the following permissions and subscribe to the following events:
Permissions:
Repository: Administration (read-only), Checks (read and write), Contents (read-only), Dependabot alerts (read-only), Dependabot secrets (read-only), Pull requests (read-only)
Organization: Members (read-only)
Events: Pull requests, Push, Release
If your organization uses an IP Allow List, ensure that Heeler's outbound IP addresses are added for ports
443and22.44.221.229.4052.73.231.96
GitHub Enterprise Server Integration Information
In GHE, under your profile, navigate to Your organizations

Scroll down and click on Developer settings -> GitHub Apps

Then click on New GitHub App (the screenshot below also shows an existing GitHub App called
Heeler Security)

Then fill in the details to register your GitHub App
GitHub App name: A name appropriate for its purpose
Write: Optional description of the App
Homepage URL:
https://app.heeler.comCallback URL:
https://app.heeler.com/adminstration/connections/scm_accounts?type=GITHUBExpire user authorization tokens: Unchecked

GitHub App registration continued
Webhook URL:
https://gh-events.heeler.com/api/v1/github/payloadSecret: Enter secret provided to you by Heeler
SSL verification: Select
Enable SSL verification

GitHub App registration continued
Repository permissions:
Administration: Read-only
Checks: Read and write
Contents: Read-only
Dependabot alerts: Read-only
Dependabot secrets: Read-only
Pull requests: Read-only

GitHub App registration continued
Organization permissions:
Members: Read-only

GitHub App registration continued
Subscribe to events
Pull requests
Push
Release

GitHub App registration continued
Where can this GitHub App be Installed?: Only on this account
Select Create GitHub App

Copy the
App IDvalue. This value is required when configuring the integration in Heeler Security. Specifically, you will need it when asked for theApplication ID.Click on the link to
generate a private key. The link takes you to the next screenshot. (Alternatively, scroll down.)

Generate a private key

Confirm the creation of the private key and note the location of the downloaded
pemfile. Thepemfile's contents are required when configuring the integration in Heeler Security. Specifically, you will need the file contents when asked for thePrivate Key.

Scroll back up and click on Install App (N.b., another chance to copy down
App IDvalue.)

Choose a GES account in which to install your newly registered GitHub App. In this screenshot, the chosen account is called
Heelerand the newly registered GitHub App is calledHeeler Security Docs. Click on the green Install button.

Select All repositories
Click on the green Install button.

Capture the URL to parse out the remaining required information when configuring the integration in Heeler Security. Specifically, the remaining required values are
Installation ID,Organization, andHostname.The URL is of the format
https://<Hostname>/organizations/<Organization>/settings/installations/<Installation ID>.

In this example, the URL is
https://ghe.heeler.com/organizations/Heeler/settings/installations/3, so you would retrieve the followingInstallation ID: 3Organization: HeelerHostname: ghe.heeler.com
Heeler Security Integration Information
Select the
icon from the top navigationSelect Connections -> Code Organizations then select Add Code Organization -> GitHub Enterprise Server

Enter the required information in the modal
Name: A name representing the GHE account
Application ID: Enter the
App IDobtained in an earlier stepInstallation ID: Enter the
Installation IDobtained from parsing the captured URLOrganization: Enter the
Organizationobtained from parsing the captured URLHostname: Enter the
Hostnameobtained from parsing the captured URLPrivate Key: Enter the contents of the downloaded
pemfile created when generating a private key
Click Save

You should see confirmation that integration was successful with a
Healthystatus under Health

Last updated
Was this helpful?
