Skip to content
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

Kubernetes Bylaws #351

Closed
sebgoa opened this issue Feb 9, 2017 · 3 comments
Closed

Kubernetes Bylaws #351

sebgoa opened this issue Feb 9, 2017 · 3 comments

Comments

@sebgoa
Copy link
Contributor

sebgoa commented Feb 9, 2017

I have been meaning to write some comments related to:

#28 #295 and #286

Specifically, I think that the Kubernetes projects needs "Bylaws". The Bylaws can encompass most of what is in the Governance being worked on, the Elders proposal and the Three branches.

As a member of the ASF and member of the Kubernetes project, I think that a middle ground can be found between clear Bylaws that show how the project is organized and governed and simple ways to take decisions without too much bureaucracy.

Couple general comments:


The Kubernetes Way in the Governance document is very close to the Apache Way. One item that is not there is the concept of "non affiliation". This means that people talk on behalf of themselves and do not represent corporate interest. Non-affiliation is useful to avoid perception that a project is not governed by companies. This helps build a true sense of community, where people's involvement is measured on merit.


Right now the community is fragmented between the mailing lists, the SIG, SLACK, stack overflow etc. Apache puts the emphasis on mailing lists. What happens on the mailing list is what happens in the community, it is where the community lives. It is where decisions are taken. Any meeting reports to the mailing lists for archiving, and further discussion from members who could not attend meetings. The emphasis is put on consensus.

A purely consensus driven project is arguably difficult to operate. I believe that we can find a good balance of consensus and benevolent dictator model.

As an Apache guy, I find kubernetes-dev surprisingly very low volume. And often decision or important discussions are happening out of band. It does not promote inclusion.

Github is not a great way to promote inclusion or bring attention to important proposals. If you are not tagged in an issue/PR you don't know what is happening. DISCUSS threads should be created on the proper mailing lists of each project/sub-project/incubator. If consensus is not reached then our technical leaders will break the ties.


Taking an approach that mimics the Apache structure we could organize the project with:

  • A Board (The Kubernetes board, similar to what is described in the Elders proposal)

  • The Members ( Could be the current set of Github Members)

  • The Committers ( Folks with write access to some repos in the kubernetes and kubernetes-incubator orgs)

  • The Contributors (Anyone involved in the project but without commit access yet).

  • The Incubator ( Set of projects in the kubernetes-incubator)


Basic working mechanisms would be:

  • The Board is elected once a year by the members (could be initialized by the current root OWNERS in kubernetes/kubernetes )
  • The members nominate new members once a year. new members get in via vote.
  • Create "Project committees" per repo (e.g Helm Project committee). With a "Vice President" which report status to the Board. The PC of a repo is made of committers to that repo (could be mapped to Github sub team for initialization).
  • The set of committers is made of the committers of all project committees. (not all would be members).
  • "Promotion" is based on merit and committers get voted in after nomination from exiting PC members.
  • The Incubator needs to be properly created with its own PC and Chair. Graduation needs to be a vote in the Incubator main mailing lists.
  • Each project has a project-dev@ mailing list (we currently kind of have that, just needs to be cleaned up).

Once we have these basic mechanisms in place ( in the form of short/succint bylaws), agreed on by VOTE on kubernetes-dev, we can move towards implementing a clear leadership structure as highlighted in the "three branches" (which BTW would start differentiating with Apache).

@bgrant0607
Copy link
Member

@sebgoa:

Please suggest items to add to the Steering Committee backlog, here or via a PR:
https://github.com/kubernetes/community/blob/master/committee-steering/backlog.md

And then we'll close this issue.

@sebgoa
Copy link
Contributor Author

sebgoa commented Aug 11, 2017

ok done. Submitted a PR. Difficult to do anything meaningful without knowing what the bootstrap committee has settled on. I tried to organize a bit the list and explain why in the PR comments.

@bgrant0607
Copy link
Member

danehans pushed a commit to danehans/community that referenced this issue Jul 18, 2023
* add fengxiangli as a member

* delete useless file
liubin pushed a commit to liubin/community that referenced this issue Oct 16, 2023
I would like to rerun for a seat on the Architecture Committee in the
October 2023 election.

Fixes: kubernetes#351

Signed-off-by: Fabiano Fidêncio <fabiano.fidencio@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants