How it works
Range will add suggestions for GitHub Enterprise Issues you are assigned or have closed, as well as suggestions for Pull Requests and Reviews.
Setup
An administrator with admin access to both your GitHub Enterprise organization and your Range organization must connect it once for the whole Range workspace.
First, create an OAuth application for Range in your GitHub Enterprise organization following the instructions from GitHub, using your Range organization's URL (e.g. https://range.co/your-org/
) for both the Homepage URL and Authorization callback URL fields.
Once created, you should be presented with a client id and client secret which need to be entered for the GitHub Enterprise integration settings in Range, along with your installation's hostname (e.g. "github.your-company.com"). Your Range organization's integration settings are found under Settings > Integrations.
Individual users can then link their identity on the integrations settings page.
Security considerations
When an administrator connects GitHub Enterprise via OAuth the scopes admin:org_hook and read:org are requested and used to add webhooks that notify Range of events. These permissions do not allow access to source code or the content of issues.
As of May 2020, Range listens to the following events:
- pull_request
- pull_request_review
- pull_request_review_comment
- issues
- issue_comment
- meta
Individual users must also go through an OAuth flow in order to link their accounts. The only scope requested is user:email.
Range persists the following data for GitHub Enterprise Issues:
- Issue number
- Title
- HTML URL
- Repo Name
- Repo Description
- Repo HTML URL
- Created At
- Closed At
- State
And for Pull Requests:
- PR number
- Title
- Description
- HTML URL
- Repo Name
- Repo Description
- Repo HTML URL
- Created At
- Updated At
- Closed At
- State
Troubleshooting
Timeouts when connecting GitHub Enterprise
If your GitHub Enterprise installation is behind a firewall you will need to allow incoming connections from Range services. Please whitelist the following IPs:
34.226.6.141
35.168.176.194
52.23.189.8
Getting suggestions without opening up the firewall
If your organization does not want to open up the firewall and grant Range OAuth access to the GitHub APIs, you can run a self-hosted GitHub integration.
The integration can be run as a cron but requires that you manually map GitHub users to the email address they use with Range.
Still have questions? Reach out to us below.