-
Notifications
You must be signed in to change notification settings - Fork 5.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding initial directions for kubernetes organization owners #1569
Conversation
/assign ref: #1407 |
/assign @spiffxp I'd like to work on this as well from the CNCF side. |
org-owners-guide.md
Outdated
to for CNCF compliance and for the guidelines of the community. | ||
|
||
## Organization Naming | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree with this section.
org-owners-guide.md
Outdated
|
||
## Contributor License Agreement (CLA) | ||
|
||
All code contribute to the Kubernetes project needs to be done by those who are |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is transitioning from orgs to repos, for which we have other docs:
https://github.com/kubernetes/community/blob/master/governance.md#repository-guidelines
https://github.com/kubernetes/community/blob/master/governance.md#cla
https://github.com/kubernetes/community/blob/master/governance.md#code-of-conduct
https://github.com/kubernetes/community/blob/master/incubator.md#creation-of-the-incubator-project
https://github.com/kubernetes/kubernetes-template-project
Maybe just link to them from here? Or otherwise consolidate this content somehow?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@bgrant0607 Since the incubation process is not in use and repos, such as those under kubernetes-client, are not part of the incubator, I would suggest we move the requirements for orgs and repos out of there and reference back here. Going forward it appears we will have multiple types of things.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CLA is activated/configured per-org AFAIK, that should be in this doc about kubernetes orgs.
Code of Conduct, Software License are are repo-level specs. I don't think they belong in this doc.
I think it would be simpler to say all repos in a kubernetes org must adhere to the standards
set by https://github.com/kubernetes/kubernetes-template-project and make sure that's a living example (eg: I'm about go to PR out the wording about incubator)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like Aaron's proposal.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are two things that catch my attention here.
- We already have numerous existing projects not based on this template. Those managing those repos and the orgs they are on need clear guidance on what they MUST do apart from what's RECOMMENDED. Many of those org and repo owners don't have those details. This document was an attempt to serve existing as well as new. How do we concisely communicate to these folks?
- The template repo has a lot of implementation opinions. For example, all maintainers must LGTM a release and for dependencies you use godep. Where is the line between what one MUST do and what's RECOMMENDED? The template project doesn't seem to share that.
Shouldn't a template implement a set of guidance to be helpful rather than be the source of truth? At least for all those cases of communication that a template isn't well suited for (e.g., after day-0 project creation).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess if we're going to go to full blown RFC compliant wording, I'd still prefer to see that wording over in kubernetes/kubernetes-template-project. I am open to PR's that clearly demarcate opinions from requirements.
As far as reconciling the state of kubernetes repos today with the desired state is concerned, I see no difference between updating a living example after the fact and updating docs after the fact.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@spiffxp so I can update the wording here as a pointer. Repo maintainers need to:
- Watch for changes on the template repo
- Figure out the ones that apply to them
- Apply them to their own repos
What I don't know is what parts of the example apply to all repo and which don't. Some things are required, such as the code of conduct, which other things are optional, such as the use of godep (glide, dep, and godep are in use right now). How do repo maintainers distinguish the types of things? How do we communicate that as guidance?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mattfarina I think clear wording in https://github.com/kubernetes/kubernetes-template-project/blob/master/README.md would help distinguish what is required vs. recommended. For example, we don't say "use this CONTRIBUTING.md file that references godep", we say "use a CONTRIBUTING.md file" and provide an example.
Communicating this guidance would probably best take place on the kubernetes-dev mailing list as we come to a consensus on when and how best to enforce project-wide standards
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 on pointing to kubernetes-template-project
and communicating guidance on what repo maintainers need to do via the kubernetes-dev mailing list for now.
What do we think about having a Guide to Upgrading Your Kubernetes Repo
doc that you can link here with the directions Matt Farina mentioned and use that as the guidance we send to the kubernetes-dev
mailing list?
org-owners-guide.md
Outdated
|
||
## Transferring Outside Code Into A Kubernetes Organization | ||
|
||
Due to licensing and CLA issues, prior to transferring software into a Kubernetes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is fine for now.
org-owners-guide.md
Outdated
* kubernetes-graveyard | ||
* kubernetes-csi | ||
|
||
This list is likely incomplete. If you are aware of additions please contribute |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe the list is still being hashed out elsewhere.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We've since hashed this list out #1407 (comment)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
org-owners-guide.md
Outdated
@@ -0,0 +1,66 @@ | |||
# GitHub Organization Owners Guide |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we retitle this Kubernetes Github Organizations?
|
||
Note: The CNCF, as part of the Linux Foundation, holds the trademark on the | ||
Kubernetes name. All GitHub organizations with Kubernetes in the name should be | ||
managed by the Kubernetes project or use a different name. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
^ is that something we can actually enforce? I'm not pushing back here, just curious.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@michelleN if the CNCF doesn't enforce the trademark on the name than it can loose the ability to do this. It's a general thing that you need to enforce usage on a name or you loose the right to. It's legal and as I'm not a lawyer I don't really know the details. I'm sure the Linux Foundation and CNCF folks know what to do, though.
Because the CNCF owns the name there are channels through GitHub to deal with this if it were to come to that (which it usually doesn't).
09bd177
to
245fa5f
Compare
@spiffxp and others... the document has had a bunch of updates including:
|
/lgtm |
/lgtm |
## Current Organizations In Use | ||
|
||
The following organizations are currently known to be part of the Kubernetes | ||
project: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The steering committee will be pushing out a doc soon regarding organizational structure which will likely cause the structure below to be reformed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does that need to block this PR? Can we update the doc after those changes come out?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd put a clause and change the content saying "this is all subject to change", but here is the current state, then lgtm from me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added that clause
245fa5f
to
8f29c50
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: mattfarina, spiffxp, thockin, timothysc The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these OWNERS Files:
You can indicate your approval by writing |
/hold cancel |
cc @kubernetes/steering-committee @idvoretskyi
I think I have this right but I'm not sure. After some conversations in December I wanted to capture what I'd learned in writing.