-
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 #8 from bcgov/migrate-old-devhub-content
Migrate DevHub content from Old DevHub
- Loading branch information
Showing
15 changed files
with
259 additions
and
6 deletions.
There are no files selected for viewing
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 |
---|---|---|
|
@@ -21,4 +21,4 @@ logs | |
node_modules | ||
/test.sh | ||
patcher.py | ||
test_patcher.py | ||
test_patcher.py |
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 |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# Authentication and Authorization | ||
|
||
We have several solutions for different parts of identity management and authorization to help you to integrate with BC Government tools. | ||
|
||
## Keycloack Pathfinder Pathfinder Single Sign On (SSO) | ||
|
||
Pathfinder Single Sign On (SSO) is the Common Component login service that connects your users to your applications. | ||
|
||
Based on the Red Hat Single Sign On Product (Redhat SSO and Open Source Keycloak), it provides an industry standard Open ID Connect (OIDC) and enterprise-policy compliant means of implementing authentication within applications that are also simple for development teams to provision and utilize. | ||
|
||
### SSO Resources | ||
|
||
* [Request SSO Client Creation](https://github.com/bcgov/sso-keycloak/wiki/SSO-Onboarding) | ||
* [KeyCloak Wiki](https://github.com/bcgov/sso-keycloak/wiki) | ||
* [Pathfinder SSO Service Definition](https://digital.gov.bc.ca/common-components/pathfinder-sso) | ||
|
||
## Digital Trust Identity Management | ||
|
||
Digital Trust is the BC Government's Digital Credential Solutions. This includes the BC Wallet, BCeId and other verifiable credentials used to connect services for the citizens of BC together under one umbrella login. | ||
|
||
## Digital Trust Resources | ||
|
||
* [Digital Trust Home](https://digital.gov.bc.ca/digital-trust/) | ||
* [BC Wallet](https://digital.gov.bc.ca/digital-trust/about/about-bc-wallet/) | ||
* [Personal Credential](https://digital.gov.bc.ca/digital-trust/about/about-person-credential/) |
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 |
---|---|---|
@@ -0,0 +1,67 @@ | ||
# Commonly Used CI/CD Tools | ||
|
||
| Tool | Purpose | Support | | ||
|---|---|---| | ||
| *Argo CD* | GitOps continuous delivery tool for Kubernetes | Availabe within OpenShift | | ||
| *GitHub Actions* | GitOps continuous integration and delivery tool for Github | Available for all GitHub repositories | | ||
| *Tekton* | GitOps continuous integration and delivery tool | Available within OpenShift | | ||
|
||
## Argo CD | ||
|
||
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes (the foundation of OpenShift). You can use it to implement a GitOps-style deployment service. | ||
|
||
### Why Argo CD | ||
|
||
ArgoCD provides more control over the success of the deployment and brings many other benefits of the infrastructure as code/GitOps approach, such as: | ||
|
||
* Observability | ||
|
||
* Improved stability and consistency | ||
|
||
* An improved security model | ||
|
||
* It is efficient, well supported, and well documented. | ||
|
||
* It can reduce the maintenance overhead of pipelines | ||
|
||
* It will help you to reduce resource consumption by using a shared service | ||
|
||
### Resources | ||
|
||
* [Configuring Argo CD within OpenShift](../docs/default/component/platform-developer-docs/docs/automation-and-resiliency/argo-cd-usage/#enable-argo-cd-for-your-project-set) | ||
|
||
|
||
## Github Actions | ||
|
||
GitHub Actions is available within our BCGov and BCGov Enterprise GitHub organizations to assist with automation of your build and deployment pipelines | ||
|
||
### Why Github Actions | ||
|
||
* Lots of community support | ||
|
||
* Easy to learn | ||
|
||
* Easy to integrate with your code already in GitHub | ||
|
||
|
||
## Tekton | ||
|
||
Tekton is the RedHat flavour of GitOps, available within your OpenShift Private Cloud Environment. | ||
|
||
### Why Tekton | ||
|
||
* No limitations on runners | ||
|
||
* Integration with our RedHat tooling | ||
|
||
### Resources | ||
|
||
[Integrating Tekton with OpenShift](../docs/default/component/platform-developer-docs/docs/build-deploy-and-maintain-apps/deploy-an-application/#1-integrating-the-deployment-process-into-a-cicd-pipeline) | ||
|
||
<details> | ||
<summary>This content is open to contributions to improve it</summary> | ||
|
||
As the Developer Experience Team, we know that our community knows of way more resources on this topic than we do! | ||
If you know of another internal BC Government resource on this topic, please make a pull request to add it to the list and share with everyone. | ||
|
||
</details> |
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 |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# Common Components | ||
|
||
Common Components are Open Source tools developed by the BC Government that are owned and maintained by product teams as part of their mandate. | ||
|
||
As part of the [Digital Investment Office priorities](https://digital.gov.bc.ca/topics/funding/intro/), teams are required to use these for projects receiving IM/IT capital funding from the OCIO. | ||
|
||
* [BC Address Geocoder](https://digital.gov.bc.ca/bcgov-common-components/bc-address-geocoder/) | ||
* [Common Document Generation Service](https://digital.gov.bc.ca/bcgov-common-components/common-document-generation-service/) | ||
* [Common Hosted Forms Service](https://digital.gov.bc.ca/bcgov-common-components/common-hosted-form-service/) | ||
* [Common Hosted Email Service](https://digital.gov.bc.ca/bcgov-common-components/common-hosted-email-service/) | ||
* [Common Object Management Service](https://digital.gov.bc.ca/bcgov-common-components/common-object-management-service/) | ||
* [Get Token](https://github.com/bcgov/nr-get-token) | ||
* [Pathfinder Single Sign-On Keycloak](https://digital.gov.bc.ca/bcgov-common-components/pathfinder-sso/) |
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 |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# Community Contributed Tools | ||
|
||
Open Source tools developed or modified to work within the BC Government Ecosystem. | ||
|
||
The resources on this list are open for use, but may not have dedicate maintainers, and do not have funding. However, with more use and cross-team contributions these may mature to becoming official Common Components in future. | ||
|
||
* [BCDevOps Repo](https://github.com/BCDevOps/) | ||
* [Backup Container](https://github.com/BCDevOps/backup-container) | ||
* [BC Design System (legacy Boostrap)](https://github.com/bcgov/design-system) | ||
* [FIDIR]() | ||
* [Matomo OpenShift](https://github.com/BCDevOps/matomo-openshift/blob/master/README.md) | ||
* [SonarQube](https://github.com/BCDevOps/sonarqube) |
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 |
---|---|---|
@@ -0,0 +1,38 @@ | ||
# Commonly Used Container Tools | ||
|
||
For modern development practices, using Docker to handle building, running and deploying container images in a predictable way is the standard, and continues to be the recommended path for BC Government developers. This list elaborates on tooling to orchestrate Docker images in your development workflow. | ||
|
||
| Tool | Licensing | Availability | | ||
|---|---|---| | ||
| *Docker Desktop* | While Docker is free, Docker Desktop now requires a license | Check with your Ministry IMB | | ||
| *Podman* | RedHat's free alternative to Docker Desktop | Open Source | | ||
| *Rancher* | Free alternative to Docker Desktop | Open Source | | ||
|
||
## Docker Desktop | ||
|
||
Docker Desktop allows you to seamlessly run linux Docker containers on a Windows or MacOS. | ||
|
||
Unfortunately, as of 2023 Docker Desktop requires a license for Government entities. | ||
|
||
Some ministries have procured licenses for their users. Please contact the CITZ IMB if you wish you re-use the PIA and STRA documentaiton to support your own procurement. | ||
|
||
## Podman | ||
|
||
Podman is a drop-in replacement for Docker Desktop. It supports the concept of `pods` to share resources across containers. | ||
|
||
It is compatible with Docker Images and compatible with the Docker CLI. | ||
|
||
|
||
## Rancher | ||
|
||
Rancher is a drop-in replacement for Docker Desktop. | ||
|
||
It is compatible with Docker Images and compatible with the Docker CLI. It also provides support for local testing of Kubernetes. | ||
|
||
<details> | ||
<summary>This content is open to contributions to improve it</summary> | ||
|
||
As the Developer Experience Team, we know that our community knows of way more resources on this topic than we do! | ||
If you know of another internal BC Government resource on this topic, please make a pull request to add it to the list and share with everyone. | ||
|
||
</details> |
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 |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# BC's Digital Government Vision & Plan | ||
|
||
## Digital Government 101 | ||
|
||
As the practices of developing and delivering digital services within the B.C. government have evolved, so has corporate guidance. Three important examples are highlighted below. | ||
|
||
1. [The Digital Plan](https://digital.gov.bc.ca/policies-standards/digital-plan/) describes the four missions and calls to action for Ministries in supporting the digital services they provide to citizens. | ||
2. [The Digital Code of Practice](https://digital.gov.bc.ca/policies-standards/dcop/) expands on what good implementation of digital products and services looks like. | ||
3. [Digital Government website](https://digital.gov.bc.ca) hosts the materials above as well as content about many other topics for digital practitioners and leaders within the B.C. government. | ||
|
||
<details> | ||
<summary>This content is open to contributions to improve it</summary> | ||
|
||
As the Developer Experience Team, we know that our community knows of way more resources on this topic than we do! | ||
If you know of another internal BC Government resource on this topic, please make a pull request to add it to the list and share with everyone. | ||
|
||
</details> |
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 |
---|---|---|
@@ -0,0 +1,41 @@ | ||
# Commonly Used Package Hosting Tools | ||
|
||
| Tool | Purpose | Support | | ||
|---|---|---| | ||
| *Artifactory* | Package hosting and management | Available within OpenShift | | ||
| *GitHub Packages* | Package hosting and management | Available for `bcgov-c` and `bcgov-ent` repositories ???? | | ||
|
||
## Artifactory | ||
|
||
Artifactory is a package management tool that comes with all applications hosted within Open Shift. | ||
|
||
### Why Artifactory | ||
|
||
* Caches/proxies for all major public artifact repositories/registries and several private repositories/registries where BC Government owns licensed access, reducing build time and network traffic. | ||
* Quota-limited storage where teams have full control to push and pull and manage access their own artifacts of any type. | ||
* Automatic inclsuion of the Xray add-on service for security scanning for all objects in Artifactory. | ||
|
||
### Resources | ||
|
||
* [Image and artifact management in OpenShift](../docs/default/component/platform-developer-docs/docs/build-deploy-and-maintain-apps/image-artifact-management-with-artifactory/) | ||
|
||
[comment]: <> This one feels like it could be replaced with generic links to other resources, but that falls into the bucket of "guidance for good documentation for teams" than something I'm worried about at this stage? | ||
* [Pushing and pulling artifacts](../docs/build-deploy-and-maintain-apps/push-pull-artifacts-artifactory/) | ||
* [Setting up a project](../docs/default/component/platform-developer-docs/docs/build-deploy-and-maintain-apps/setup-artifactory-project-repository/) | ||
* [Setting up an account](../docs/default/component/platform-developer-docs/docs/build-deploy-and-maintain-apps/setup-artifactory-service-account/) | ||
|
||
## Github Packages | ||
|
||
Artifactory is a package management tool that is available within GitHub. | ||
|
||
### Why Github Packages | ||
|
||
GitHub Packages is an alternative to Artifactory, without any limitations or connection to your code being in OpenShift. However, it may come with additional cost to your team to achieve the required storage. Contact the Developer Experience team to learn more. | ||
|
||
<details> | ||
<summary>This content is open to contributions to improve it</summary> | ||
|
||
As the Developer Experience Team, we know that our community knows of way more resources on this topic than we do! | ||
If you know of another internal BC Government resource on this topic, please make a pull request to add it to the list and share with everyone. | ||
|
||
</details> |
File renamed without changes.
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 |
---|---|---|
@@ -0,0 +1,9 @@ | ||
# Ways of working | ||
|
||
## Agile Ways of Working | ||
|
||
Most teams developing modern digital services for the B.C. government are approaching their work with an [agile](https://en.wikipedia.org/wiki/Agile_software_development) mindset. While many teams have adopted [Scrum](https://en.wikipedia.org/wiki/Scrum_(software_development)) as an agile framework, there is no single official or mandated agile methodology or framework within the B.C. government. Teams and leaders within different areas may choose the approaches they feel most suited to their work. | ||
|
||
### Supports for Agile Learning | ||
|
||
* [Agile Community of Practice](https://digital.gov.bc.ca/communities/agile/) |
Oops, something went wrong.