At Formula5, we have seen how GitHub Enterprise can enhance DevOps practices and facilitate faster, more secure deployments. We understand that the main challenge for many organizations is not in recognizing the benefits of GitHub, but rather in effectively adopting the tool and transforming their internal processes. This is where our GitHub Enterprise Adoption Framework can be of assistance, as it guides organizations through the adoption journey, outlines the components, processes, and tasks involved, and provides support along the way.
In this blog, we will be focusing on one aspect of the framework, GitHub Deployment Options, which is part of the Enterprise Configuration phase:
To gain a deeper understanding of the complete process or to see the relationship of Enterprise Configuration to the broader framework, you may refer to our GitHub Enterprise Adoption Framework page. Let’s begin.
GitHub Enterprise deployment options
After establishing strategy and goals, the next step in the Adoption Framework is Enterprise Configuration. This involves familiarizing oneself with the three available options and their respective benefits and drawbacks. Understanding the deployment options of GitHub Enterprise is crucial in this process. There are three deployment options offered by GitHub Enterprise:
- GitHub Enterprise Cloud
- GitHub Enterprise Server
- GitHub AE
Let’s examine their capabilities and determine when a particular deployment option may be a suitable choice for your organization.
GitHub Enterprise Cloud
If you desire to fully leverage the GitHub platform while prioritizing high-availability and security without the hassle of infrastructure management, GitHub Enterprise Cloud is the solution for you. It offers advanced features including:
- Configuration of Single-Sign-On using your organization identity provider so you can manage user accounts in the central place, like Azure Active Directory.
- Extended time for GitHub Actions execution.
- Configuration of the environment’s protection rules to make sure that only specific people in your organization can approve deployments.
- Restricting email notifications to only verified domains.
- Enhanced auditing to have full visibility into the platform usage.
GitHub Enterprise Cloud is an optimal option if your organization does not have specific compliance requirements such as data residency limitations, developer account isolation, or restricted network access. It is a cloud-based, highly available service that dynamically scales to meet your needs without the need for manual backups.
GitHub Enterprise Server
GitHub Enterprise Server is a comprehensive solution designed specifically to meet the needs of enterprises facing strict regulatory requirements. It offers a secure, customizable platform that addresses the challenges posed by public cloud-based software development platforms.
With GitHub Enterprise Server, organizations have full control over hosting environments, data residency, network isolation, and developer identities, ensuring complete data protection and security.
While the level of customization and control is a significant advantage of this version, it also requires dedicated resources for high availability, security, and infrastructure management. The enterprise is responsible for upgrading and patching the instance of GitHub Enterprise Server, as well as configuring a robust data backup solution.
It is worth noting that to leverage the full range of features available on the GitHub.com platform, such as Dependabot alerts and GitHub Actions integration, GitHub Enterprise Server requires the use of GitHub Connect. This secure and isolated bridge facilitates the integration of additional features, enhancing the overall experience of using GitHub Enterprise Server.
GitHub Connect enables seamless communication and collaboration between GitHub Enterprise Server and GitHub.com, ensuring secure and streamlined access to a wide range of features and functionalities. For more information on the benefits of enabling GitHub Connect, please refer to the following link.
GitHub Enterprise AE provides a powerful solution for enterprises looking to move their DevOps workloads to the cloud while maintaining strict security and compliance standards. The platform ensures the privacy and security of your data by storing it within the geographic region specified during the setup of the GitHub Enterprise AE instance.
GitHub Enterprise AE is ideal for organizations with specific compliance requirements regarding the hosting environment, data residency, developer account isolation, and restricted network access. The platform provides a secure and isolated environment for developer accounts, ensuring full protection and privacy of sensitive information. By default, all developer accounts on GitHub Enterprise AE are completely separated from other services, including those offered by GitHub.com.
It is noteworthy that GitHub AE is a globally hosted, fully managed cloud service. This means that it offers automatic scaling and eliminates the need for additional manual configuration, providing a seamless and efficient experience.
In order to access the full suite of features available on the GitHub.com platform, such as Dependabot alerts and GitHub Actions integration, it is necessary to utilize GitHub Connect. This secure and isolated bridge facilitates the integration of additional features, enhancing the overall capabilities of GitHub AE.
Requirements and decision map
To facilitate informed decision-making, we have provided the following table that highlights key considerations for choosing the appropriate deployment strategy:
In conclusion, the deployment options provided by GitHub Enterprise play a crucial role in the adoption of the tool. The article examined the three available deployment options: GitHub Enterprise Cloud, GitHub Enterprise Server, and GitHub Enterprise AE. Each of these options offers unique benefits and drawbacks and is suited to meet specific organizational requirements.
GitHub Enterprise Cloud is an optimal choice for organizations that prioritize high-availability and security without having to manage the infrastructure. On the other hand, GitHub Enterprise Server is suitable for enterprises facing strict regulatory requirements, offering full control and customization of the platform. Meanwhile, GitHub Enterprise AE is ideal for organizations with specific compliance requirements and looking to move their DevOps workloads to the cloud.
It is important to note that the deployment options discussed in this article are just a small part of the larger Enterprise Adoption Framework. There is a lot to consider when adopting GitHub and this article is merely the tip of the iceberg. Stay tuned for more articles that will delve deeper into the Enterprise Adoption Framework and guide organizations on their journey towards a successful GitHub Enterprise adoption.