Flow Enterprise works with your internal GitHub Enterprise installation. GitHub Enterprise does not require global system OAuth keys. The configuration for GitHub Enterprise happens inside the Flow Enterprise application, not the administration console.
We recommend that you create a service account for this integration. This account should be a user that can authenticate into GitHub Enterprise and has access to the organizations, teams, and repositories you wish to analyze in Flow Enterprise.
Note: Make sure the account you use has access to organizations, teams, and repositories you wish to analyze.
- Log in to your GitHub Enterprise installation.
- Click on the icon in the top-right corner of the application to drop-down your personal menu. Then click Settings.
- You will now see a larger set of settings options. At the bottom, there will be a list of organizations. Please choose the one you want to integrate.
- You will be shown a list of organization settings. At the bottom, under Organization Profile you will see OAuth Applications. Please select that to reach the list of OAuth Applications that have been integrated with the organization. Click Register a new application.
- You will now be asked to enter the details of the new OAuth application. The fields on the form should be filled out according to these guidelines:
- Application Name: This should be an easily recognizable name for your Flow Enterprise instance. For example, "Flow Enterprise Integration," for a literal use. Or, if you have multiple Flow Enterprise Integrations, perhaps per department, you might use "Flow Enterprise: Core System Developers."
- Homepage URL: This is the root URL of your Flow Enterprise instance. For example, https://flow.mycompany.com
- Application Description: A more verbose description of the integration.
- Authorization Callback URL: This URL is the URL that GitHub will redirect the user browser to after OAuth authentication has been performed. This should be on the format of https:///accounts/complete/github-enterprise/. For example, if your Flow Enterprise instance is at flow.mycompany.com, you would enter: https://flow.mycompany.com/accounts/complete/github-enterprise/
- Next, go to the URL where you have placed Flow Enterprise. For example, https://flow.mycompany.com.
- Next, browse in the My Data menu to Repos. From there, click Add Repos to drop down the options and choose GitHub Enterprise.
- The next step is to use the information created in Step Five to finish configuring your connection to GitHub Enterprise.
The fields here are simple:
- Base URL: This is the URL of your GitHub Enterprise installation. It must be a full URL. For example https://github-enterprise.mycompany.com.
- Client ID: This is the Oauth Client ID you created in Step Five.
- Client Secret: This is the OAuth Client Secret you created in Step Five.
Clicking Save will cause Flow Enterprise to validate your configuration and take you to the next step in the process.
- Now that you have the OAuth connection configured, you simply need to connect your OAuth user to GitHub Enterprise. To proceed, simply click the "Connect GitHub Enterprise" button. You will be taken to GitHub Enteprise to login. Login to GitHub Enterprise with your user or a service account user that you created. Once you have logged in, you will be asked to authorize the application. Make sure the account you use has access to organizations, teams, and repositories you wish to analyze. Please click "Authorize Application" to continue.
- You should now be redirected to a screen with your repositories segmented by the organizations the connected user has access to. You can click Import for any repositories you wish to analyze in Flow Enterprise. You can also click Import all repos for any organization you want to completely analyze. You may also choose to auto-import any new repositories by changing the Auto-import all future repositories toggle for any organization you wish to auto-import any new repositories.
If you need help, please email firstname.lastname@example.org for 24/7 assistance.