You can access additional features and workflows on your GitHub Enterprise Server instance by enabling GitHub Connect. See About GitHub Connect.
On GHE.com, GitHub Connect features do not include any functionality that relies on resources on GitHub.com.
What happens when GitHub Connect is enabled?
When you enable GitHub Connect, you configure a connection between your GitHub Enterprise Server instance and an enterprise account on GitHub Enterprise Cloud. The connection uses HTTPS over ports 443 or 80 and is secured by TLS.
Enabling GitHub Connect creates a GitHub App owned by the enterprise account on GitHub Enterprise Cloud. GitHub Enterprise Server uses the GitHub App's credentials to make requests to GitHub Enterprise Cloud.
GitHub Enterprise Server stores credentials from the GitHub App. The following credentials will be replicated to all nodes in a high availability or cluster environment, and stored in any backups, including snapshots created by GitHub Enterprise Server Backup Utilities.
- An authentication token, which is valid for one hour
- A private key, which is used to generate a new authentication token
Prerequisites
-
Administrative access: You need administrative access to both an enterprise account on GHE.com and a GitHub Enterprise Server instance.
-
Version requirement: Your GitHub Enterprise Server instance must run GitHub Enterprise Server 3.12 or later.
-
Proxy configuration: If using a proxy server, allow connectivity to the following GHE.com hostnames (replace SUBDOMAIN with your enterprise's subdomain).
SUBDOMAIN.ghe.com
api.SUBDOMAIN.ghe.com
uploads.SUBDOMAIN.ghe.com
Step 1: Enable connection to GHE.com
By default, GitHub Connect connects GitHub Enterprise Server to GitHub.com. You must enable your instance to connect to your enterprise's subdomain of GHE.com.
To enable the connection, someone with administrative SSH access to your GitHub Enterprise Server instance must complete the following tasks.
-
SSH into your GitHub Enterprise Server instance. If your instance comprises multiple nodes, for example if high availability or geo-replication are configured, SSH into the primary node. If you use a cluster, you can SSH into any node. Replace HOSTNAME with the hostname for your instance, or the hostname or IP address of a node. For more information, see "Accessing the administrative shell (SSH)."
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
To enable your instance to connect to GHE.com for GitHub Connect, run the following command. Replace SUBDOMAIN with the subdomain for your enterprise on GHE.com, for example
octocorp
.Shell ghe-config app.github.github-connect-ghe-com-enabled true ghe-config app.github.github-connect-ghe-com-subdomain "SUBDOMAIN"
ghe-config app.github.github-connect-ghe-com-enabled true ghe-config app.github.github-connect-ghe-com-subdomain "SUBDOMAIN"
-
To apply the configuration, run the following command.
Note
During a configuration run, services on your GitHub Enterprise Server instance may restart, which can cause brief downtime for users.
Shell ghe-config-apply
ghe-config-apply
After the run completes, you can configure GitHub Connect.
Step 2: Enable GitHub Connect
To enable GitHub Connect, you must be an enterprise owner on both GitHub Enterprise Server and GitHub Enterprise Cloud.
People with a user account in both environments can connect the accounts from your GitHub Enterprise Server instance.
-
Sign in to your GitHub Enterprise Server instance and GHE.com.
-
In the top-right corner of GitHub Enterprise Server, click your profile photo, then click Enterprise settings.
-
In the enterprise account sidebar, click GitHub Connect.
-
Under "GitHub Connect is not enabled yet", click Enable GitHub Connect. By clicking Enable GitHub Connect, you agree to the "GitHub Terms for Additional Products and Features."
-
To the right of the enterprise account you'd like to connect, click Connect.
-
Choose which individual features of GitHub Connect you want to enable. See About GitHub Connect.
Reenabling connections to GitHub.com
If you need to reenable GitHub Connect for GitHub.com, you must reconfigure your settings.
-
SSH into your GitHub Enterprise Server instance. If your instance comprises multiple nodes, for example if high availability or geo-replication are configured, SSH into the primary node. If you use a cluster, you can SSH into any node. Replace HOSTNAME with the hostname for your instance, or the hostname or IP address of a node. For more information, see "Accessing the administrative shell (SSH)."
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
Run the following command.
Shell ghe-config app.github.github-connect-ghe-com-enabled false
ghe-config app.github.github-connect-ghe-com-enabled false
-
To apply the configuration, run the following command.
Note
During a configuration run, services on your GitHub Enterprise Server instance may restart, which can cause brief downtime for users.
Shell ghe-config-apply
ghe-config-apply
-
Enable GitHub Connect on GitHub.com. See Enabling GitHub Connect for GitHub.com.