-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #10 from bcgov/new-process-diagram
Added a github enterprise license process map Updates framing and details about GitHub Enterprise
- Loading branch information
Showing
4 changed files
with
47 additions
and
88 deletions.
There are no files selected for viewing
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
88 changes: 34 additions & 54 deletions
88
docs/use-github-in-bcgov/github-enterprise-user-licenses-bc-government.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,83 +1,63 @@ | ||
--- | ||
title: GitHub Enterprise user licences in the BC government | ||
|
||
slug: github-enterprise-user-licenses-bc-government | ||
|
||
description: Describes the benefits of GitHub Enterprise user licences and how to access them. | ||
|
||
keywords: GitHub, GitHub Enterprise, closed source, private repository, private organization, licence, license, user licence, user license | ||
|
||
page_purpose: Discusses why you might want to use a GitHub Enterprise user licence and how to request, access, and pay for the users. | ||
|
||
audience: technical lead, product owner | ||
|
||
author: Jonathan Bond | ||
|
||
content_owner: Olena Mitovska | ||
|
||
sort_order: 4 | ||
--- | ||
|
||
# GitHub Enterprise user licences in the BC government | ||
|
||
All code by B.C. government teams should be open source by default. If you have closed-source code and still want to use GitHub, you can work temporarily in a private repository under the GitHub Enterprise licence. | ||
|
||
For more information on our GitHub organizations and their uses, see [B.C. government organizations in GitHub](../bc-government-organizations-in-github/). | ||
# B.C. government GitHub Enterprise | ||
|
||
## On this page | ||
>Note: This page is under review as of December 2023 and will be updated for clarity and accuracy early in 2024. | ||
- [Benefits of a GitHub Enterprise user licence](#benefits-of-a-github-enterprise-user-licence) | ||
- [Enterprise account ownership](#enterprise-account-ownership) | ||
- [Request GitHub Enterprise user licences](#request-github-enterprise-user-licences) | ||
- [Access the GitHub Enterprise account](#access-the-github-enterprise-account) | ||
- [Pay for the GitHub Enterprise user licences](#pay-for-the-github-enterprise-user-licences) | ||
All code built for B.C. government for staff or contracted developers should be open source by default and stored in the public [`bcgov` organization on GitHub.com](https://github.com/bcgoc). If you have closed source code and still want to use GitHub's functionality, you can store your code in a private repository within the B.C. government's [GitHub Enterprise environment](https://github.com/enterprises/bcgov-ent/). This page contains details related to that environment and its use. | ||
|
||
## Benefits of a GitHub Enterprise user licence | ||
For more information about B.C. government GitHub organizations outside of GitHub Enterprise, see [B.C. government organizations in GitHub](../bc-government-organizations-in-github/). | ||
|
||
The enterprise user licence offers various features over the Free and Teams version. To find out more on the differences in features and pricing, see [Pricing](https://github.com/pricing). | ||
## B.C. government GitHub Enterprise Overview | ||
|
||
## Enterprise account ownership | ||
GitHub Enterprise offers various features beyond those of the Free and Teams tiers. To find out more about the features of GitHub Enterprise, you may wish to review [GitHub's product page](https://github.com/enterprise). | ||
|
||
The GitHub Enterprise account is owned by OCIO and managed by the Platform Services team. Ministries own GitHub organizations linked to the B.C. government’s GitHub Enterprise accounts and the private repositories within their organizations. | ||
There are certain notable differences between the [public facing `bcgov` GitHub organization](https://github.com/bcgov) and B.C. government's GitHub Enterprise environment. For example, the ability to create public repositories is disabled within GitHb Enterprise since with B.C. government public open source code should be in the [public `bcgov` organization](https://github.com/bcgov). | ||
|
||
User licenses for accessing the private repositories come from a central pool under the GitHub Enterprise account and must be purchased for each user that needs access to the private repositories in the ministry’s private organizations. Management of this pool of seats is done in partnership with each sector or ministry purchasing their own allocated seat count. | ||
Other details of GitHub Enterprise include the following: | ||
|
||
When your private organization is linked to the GitHub Enterprise account certain settings are automatically enabled or disabled. For example, the ability to create public repositories within this private organization is removed to fall in line with all Provincial open-source code remaining in `bcgov`. Other features include the following: | ||
* Single sign-on is provided via Azure AD (aka Entra ID) | ||
* Login uses government-issued IDIR identities | ||
* Users will be automatically assigned new GitHub IDs, which will change the login experience for users working in both GitHub.com repositories and B.C. government GitHub Enterprise | ||
* GitHub Actions is enabled | ||
* Code Dependency Insights is enabled | ||
|
||
* Two-factor authentication is mandatory | ||
* GitHub Actions is enabled for all | ||
* Code Dependency Insights is enabled for all organizations linked to the GitHub Enterprise account | ||
## GitHub Enterprise account ownership | ||
|
||
## Request GitHub Enterprise user licences | ||
The B.C. government's GitHub Enterprise account is managed centrally by the Digital Office's [Developer Experience Team](mailto:[email protected]). Ministries or sectors are provided with GitHub "organizations" within the central GitHub Enterprise account. Teams' private repositories are created within these organizations. Management of ministry or sector organizations within GitHub Enterprise is delegated to staff within the corresponding IMB/ISB. | ||
|
||
Contact Software Central Management at [email protected] and cc Dean Picton ([email protected]). Use the subject line "GitHub Enterprise Request" and send the following information: | ||
Paid licenses are required to use GitHub Enterprise. Licenses must be purchased for each user that will use or administer to the B.C. government GitHub Enterprise organizations or repositories. Each ministry or sector is responsible for acquiring and paying for its own licenses. The process for acquiring licences is described [below](#background-bc-government-github-enterprise-process-map). | ||
|
||
* Private GitHub organization name and whether you need a new organization created or are linking an existing private organization | ||
## Acquiring GitHub Enterprise user licences | ||
|
||
* GitHub IDs of the organization administrators | ||
> Note: the process outlined below may be slightly different for some sectors or ministries, but it will be generally similar for all. For example, in some areas, the responsibility for interacting with CSAM may be done by the ministry or sector IMB/ISB staff rather than end users in a business area. | ||
* Number of user licenses needed. If you're transferring a GitHub organization to Enterprise, request as many user licenses as you have organization members. | ||
This section outlines what is involved in acquiring the licenses required to use B.C. government GitHub Enterprise. | ||
|
||
## Access the GitHub Enterprise account | ||
### Pre-requisites: | ||
|
||
Each ministry has GitHub administrators that manage user licences purchased by the ministry and assign individual users to the licences. All license management and licence-to-user assignment must go through ministry account administrators. | ||
- Confirm that your intended use of GitHub Enterprise aligns with its purpose, which is exclusively for storing code that can't be, or isn't currently, open source. | ||
- Confirm whether your ministry or sector is using GitHub Enterprise and know who in your IMB/ISB is responsible for managing access. If you aren't sure who to contact within your IMB/ISB, please contact the [Developer Experience Team]([email protected]) for assistance. | ||
- Identify who is responsible within your business area for submitting iStore orders. | ||
|
||
1. Your ministry’s GitHub administrator creates a private organization for your ministry, if it doesn’t exist already, and links it to the GitHub Enterprise account. | ||
### Steps | ||
|
||
2. Submit a request to Software Central Management to purchase the desired number of user licences. | ||
Once you've completed the pre-requisites, follow the steps below to acquire GitHub Enterprise licenses. | ||
|
||
3. Once the order is processed and the user licenses have been added to the Province’s GitHub Enterprise account, your ministry’s GitHub administrator adds your users to the GitHub Enterprise account and to the ministry’s private organization. | ||
- Request a quote via email to [[email protected]](mailto:[email protected]). Use the subject line "Request for Quotation for GitHub Enterprise" and indicate in the body the number of users who need GitHub Enterprise licenses. For example, "Could I please get a quote for 10 GitHub Enterprises licenses (Standalone)?". | ||
- Wait for a response by email from CSAM, which will include a quote number and the associated cost for your licenses. This should take 2-3 business days. | ||
- Work with the person reponsisble for iStore orders in your business area to create and submit an iStore order referencing the quote number to initiate the purchase. This will triggerthe e-approval process. | ||
- Wait for a notification from CSAM indicating that they have made the purchase of GitHub licenses on your behalf. This should take less than 5 business days. Billing back to your expense authority will commence at this point. Billing occurs monthly until you notify CSAM to cancel the user licenses. | ||
- Work with the appropriate individual or team within your ministry or sector IMB/ISB to request access to the corresponding organization within B.C. government's GitHub Enterprise environment. | ||
|
||
These users have access to all features available in GitHub Enterprise within their private organization. | ||
Once the above steps are complete, you'll be able to log in (using your IDIR) to the B.C. government GitHub Enterprise at [https://github.com/enterprises/bcgov-ent/](https://github.com/enterprises/bcgov-ent/) and begin working in private repositories within your ministry or sector's organization. | ||
|
||
## Pay for the GitHub Enterprise user licences | ||
## Background: BC government GitHub Enterprise process map | ||
|
||
Software Central Management handles your purchase order, with billing back to your expense authority. The ministry is billed monthly for the GitHub Enterprise user licenses until Software Central gets a request asking to cancel the user licenses. | ||
Our team has created the artifact below which captures the steps and teams involved in acquiring and mananaging GitHub Enterprise licenses. This version is intended for reference only, but we intend to create simplified, more focused versions for both end users and administrators. | ||
|
||
![A detailed diagram illustrating the process of acquiring and administering GitHub Enterprise licenses within the B.C. government. ](../images/github-e-process-map.png) | ||
--- | ||
Related links: | ||
|
||
* [BC Government Organizations in GitHub](../bc-government-organizations-in-github/) | ||
* [Pricing](https://github.com/pricing) | ||
|
||
--- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters