Add README to github-management

This commit is contained in:
Christoph Blecker 2018-06-26 12:52:25 -07:00
parent 9ce2bdc3bb
commit 5d635348ab
No known key found for this signature in database
GPG Key ID: B34A59A9D39F838B
3 changed files with 72 additions and 37 deletions

View File

@ -0,0 +1,69 @@
# GitHub Management
The Kubernetes project uses Github extensively to store and organize code,
manage issues and documentation, and provide a consistent contributor flow.
With the size and growth of the Kubernetes project, management of our Github
footprint has historically been a challenge. We have created a number of
policies to reduce friction and ease administration of our Github repositories
and organizations. We have also created a number of tools to automate setup and
enforcement of these policies.
## Guides
- [Organization Owners Guide](org-owners-guide.md)
- [Repository Creation Guidelines](kubernetes-repositories.md)
- [Setting up the CNCF CLA Check](setting-up-cla-check.md)
## Project Owned Organizations
The following organizations are currently known to be part of the Kubernetes
project
### Actively used GitHub Organizations
| Name | Description |
| :--: | :---------: |
| [kubernetes](https://github.com/kubernetes) | Core |
| [kubernetes-client](https://github.com/kubernetes-client) | API Client Libraries |
| [kubernetes-csi](https://github.com/kubernetes-csi) | Container Storage Interface Components |
| [kubernetes-incubator](https://github.com/kubernetes-incubator) | Legacy Incubator Projects |
| [kubernetes-retired](https://github.com/kubernetes-retired) | Retired/Archived Projects |
| [kubernetes-security](https://github.com/kubernetes-security) | Private Security Fix Mirror |
| [kubernetes-sigs](https://github.com/kubernetes-sigs) | SIG-related Projects |
### Non-actively used GitHub Organizations
| Name | Description |
| :--: | :---------: |
| [kubernetes-addons](https://github.com/kubernetes-addons) | |
| [kubernetes-charts](https://github.com/kubernetes-charts) | |
| [kubernetes-extensions](https://github.com/kubernetes-extensions) | |
| [kubernetes-federation](https://github.com/kubernetes-federation) | |
| [kubernetes-graveyard](https://github.com/kubernetes-graveyard) | kubernetes-retired should be used instead going forward |
| [kubernetes-incubator-retired](https://github.com/kubernetes-incubator-retired) | kubernetes-retired should be used instead going forward |
| [kubernetes-providers](https://github.com/kubernetes-providers) | |
| [kubernetes-sidecars](https://github.com/kubernetes-sidecars) | |
| [kubernetes-sig-testing](https://github.com/kubernetes-sig-testing) | |
| [kubernetes-test](https://github.com/kubernetes-test) | |
| [kubernetes-tools](https://github.com/kubernetes-tools) | |
Note, this list is subject to change.
There are more organization names that we are squatting on with possible future
intentions. [For more details please see community issue #1407](https://github.com/kubernetes/community/issues/1407).
## Tooling
We have created a number of tools to help with the management of or Github
repositories and organizations:
- [prow](https://git.k8s.io/test-infra/prow): Prow is our system for handling
GitHub events and commands for Kubernetes. It is comprised of a number of
modules/plugins. A couple key ones for GitHub management are below, but a full
list of commands is available [here](https://go.k8s.io/bot-commands)
- [branchprotector](https://git.k8s.io/test-infra/prow/cmd/branchprotector):
enforce branch protection settings across an organization
- [peribolos](https://git.k8s.io/test-infra/prow/cmd/peribolos): Manage Github
organization and team membership based on a defined YAML configuration
- [label_sync](https://git.k8s.io/test-infra/label_sync): Add, modify, delete,
and migrate labels across an entire organization based on a defined YAML
configuration

View File

@ -1,4 +1,4 @@
# Kubernetes Github Organization Guide
# Kubernetes GitHub Organization Guide
The Kubernetes project leverages multiple GitHub organizations to store and
organize code. This guide contains the details on how to run those organizations
@ -26,40 +26,6 @@ contact the steering committee and CNCF prior to moving any code in.
It is easier to start new code in a Kubernetes organization than it is to
transfer in existing code.
## Current Organizations In Use
The following organizations are currently known to be part of the Kubernetes
project:
### Actively used GitHub Organizations:
* [kubernetes](https://github.com/kubernetes)
* [kubernetes-client](https://github.com/kubernetes-client)
* [kubernetes-csi](https://github.com/kubernetes-csi)
* [kubernetes-incubator](https://github.com/kubernetes-incubator)
* [kubernetes-retired](https://github.com/kubernetes-retired)
* [kubernetes-security](https://github.com/kubernetes-security)
* [kubernetes-sig-testing](https://github.com/kubernetes-sig-testing)
* [kubernetes-sigs](https://github.com/kubernetes-sigs)
### Non-actively used GitHub Organizations:
* [kubernetes-addons](https://github.com/kubernetes-addons)
* [kubernetes-charts](https://github.com/kubernetes-charts)
* [kubernetes-extensions](https://github.com/kubernetes-extensions)
* [kubernetes-federation](https://github.com/kubernetes-federation)
* [kubernetes-graveyard](https://github.com/kubernetes-graveyard) †
* [kubernetes-incubator-retired](https://github.com/kubernetes-incubator-retired)
* [kubernetes-providers](https://github.com/kubernetes-providers)
* [kubernetes-sidecars](https://github.com/kubernetes-sidecars)
* [kubernetes-test](https://github.com/kubernetes-test)
* [kubernetes-tools](https://github.com/kubernetes-tools)
† kubernetes-retired should be used instead of kubernetes-graveyard going forward.
Note, this list is subject to change.
There are more organization names that we are squatting on with possible future
intentions. [For more details please see community issue #1407](https://github.com/kubernetes/community/issues/1407).
## Team Guidance
Each organization should have the following teams:

View File

@ -13,7 +13,7 @@ the Linux Foundation CNCF CLA check for your repositories, please read on.
- Payload URL: https://identity.linuxfoundation.org/lfcla/github/postreceive?group=284&comment=no&target=https://identity.linuxfoundation.org/projects/cncf
- `group=284` specifies the ID of the CNCF project authorized committers group in our CLA system.
- `comment=no` specifies that our system should not post help comments into the pull request (since the Kubernetes mungebot does this).
- `target=https://identity.linuxfoundation.org/projects/cncf` specifies what will be used for the "Details" link in Github for this status check.
- `target=https://identity.linuxfoundation.org/projects/cncf` specifies what will be used for the "Details" link in GitHub for this status check.
- Content Type: 'application/json'
- Secret: Please contact [@idvoretskyi](mailto:ihor@cncf.io), and [@caniszczyk](mailto:caniszczyk@linuxfoundation.org).
- Events: Let me select individual events
@ -56,5 +56,5 @@ the same org/repo, to ensure that it can add labels `cncf-cla: yes` and `cncf-cl
on the status published by the Linux Foundation webhook.
The label automation may not be essential for your repository, if youre not using merge
automation. For repos with maintainers doing manual merges, github protected branches may
automation. For repos with maintainers doing manual merges, GitHub protected branches may
suffice.