Skip to content

Commit e79d93c

Browse files
authored
chore: update GOVERNANCE.md from global .github repo (#35)
Signed-off-by: microcks-bot <[email protected]>
1 parent 471f932 commit e79d93c

File tree

1 file changed

+57
-14
lines changed

1 file changed

+57
-14
lines changed

GOVERNANCE.md

Lines changed: 57 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,29 +2,69 @@
22

33
This document defines governance policies for the Microcks project.
44

5-
- [Principles](#principles)
6-
- [Code of Conduct](#code-of-conduct)
7-
- [Conflict Resolutions](#conflict-resolutions)
8-
- [Meetings](#meetings)
9-
- [Changes](#changes)
10-
- [Credits](#credits)
11-
125
## Principles
136
The Microcks project community adheres to the following principles:
147

158
- **Open**: The Microcks community strives to be open, accessible and welcoming to everyone. Anyone may contribute, and contributions are available to all users according to open source values and licenses.
169
- **Transparent** and **accessible**: Any changes to the Microcks source code and collaborations on the project are publicly accessible (GitHub code, issues, PRs, and discussions).
1710
- **Merit**: Ideas and contributions are accepted according to their technical merit and alignment with project objectives, scope, and design principles.
11+
- **Vendor-neutral**: Microcks is designed and maintained to be fully aligned with the [principles](https://contribute.cncf.io/maintainers/community/vendor-neutrality/) of the Cloud Native Computing Foundation (CNCF).
1812

1913
Join us 👉 https://microcks.io/community/
2014

21-
## Code of Conduct
22-
Microcks follow the [Code of Conduct](CODE_OF_CONDUCT.md), which is aligned with the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md).
15+
## Maintainers, Code Owners, Contributors and Adopters
16+
The Microcks project has four roles. All project members operate in one (or more) of these roles:
17+
18+
| Level | Role | Responsibilities |
19+
| :--- | :--- | :--- |
20+
| 1 | **Maintainer** | Vote, Develop roadmap, contribution guidelines; Review, Approve/Reject, Merge, Manage repos. Maintainers are elected or removed by the current maintainers. A Maintainer has authority over the entire Microcks project: the organization and every project, sub-project and repo within the organization.|
21+
| 2 | **Code Owner**| Have special expertise in a particular domain within the Microcks project. The domain may be a sub-project, repo or other responsibility as defined by the Maintainers. The maintainers grant a code owner (alias Domain Maintainers) a set of authorities and responsibilities for the domain. Code owners are expected to join maintainer and community meetings when required. A code owner has no responsibilities for the entire project, organization or projects outside their domain. Code owners role, refer to [GitHub CODEOWNERS](https://docs.github.com/fr/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners) capabilities.|
22+
| 3 | **Contributor** | Contribute code, test, document the project. A contributor’s authority applies to one or more sub projects. Microcks is a very welcoming community and is eager to onboard and help anyone from the open source community to contribute to the project. |
23+
| 4 | **Adopter** | Use the Microcks project, with or without contributing to the project. Adopters are encouraged to raise issues, provide feedback, participate in discussions on sub projects within a public forum and community. |
24+
25+
- Maintainer and Code Owners list: https://github.com/microcks/.github/blob/main/MAINTAINERS.md
26+
- Contributors list: (DevStats) [new contributors over the last 6 months](https://microcks.devstats.cncf.io/d/52/new-contributors-table?orgId=1&from=now-6M&to=now) / (GitHub) [contributors on Microcks main repo](https://github.com/microcks/microcks/graphs/contributors).
27+
- Adopters (public) list: https://github.com/microcks/.github/blob/main/ADOPTERS.md
28+
> 📢 If you're using Microcks in your organization, please add your company name to this [list](https://github.com/microcks/.github/blob/main/ADOPTERS.md) 🙏 It really helps the project to gain momentum and credibility. It's a small contribution back to the project with a significant impact.
29+
30+
## Contributor ladder
31+
For becoming a maintainer, you need to get involved with the Microcks project on GitHub, and demonstrate commitment and qualities:
32+
33+
* Participation: For three months or more. For example: participation in discussions, contributions, code or documentation reviews.
34+
* Collaboration: Demonstrate the ability to work with others, to take on new ideas and help others succeed.
35+
* Availability (ideally full time): Be available on Slack, Discord, GitHub, email so you’re helping move the project forward in a timely way.
36+
* Respect: Alignment with Microcks and CNCF code of conduct and guiding principles.
37+
38+
### Voting-in and voting-out maintainers
39+
40+
1. Maintainers make a public announcement during community meeting,
41+
2. During this meeting, a maintainer nominates to add a new maintainer or remove an existing maintainer,
42+
3. The nominator will open a PR to the [centralized](https://github.com/microcks/.github/blob/main/MAINTAINERS.md) Maintainer and Code Owners list,
43+
4. Maintainers vote via GitHub PR comments, with a 2 week deadline. Anyone in the community is welcome to comment. Community comments will be considered, but not counted towards the vote,
44+
5. After two weeks, any maintainer who abstains from voting will not be counted towards the vote,
45+
6. Decision is approved with a super-majority: 66% 2/3) or more of maintainers who have voted within two weeks,
46+
7. If 66% (2/3) of all maintainers have approved within two weeks, the voting is closed early.
47+
48+
For maintainers voted-in, permissions are immediately added. For maintainers voted-out permissions are immediately removed.
49+
50+
### Remaining a Maintainer
51+
52+
If a maintainer can no longer meet their commitments, they are expected to consult with the other maintainers and either take a sabbatical from maintainership, or resign as a maintainer. It is the responsibility of all maintainers to ensure the maintainer group operates with the same level of commitment. If a maintainer is not meeting their commitments, they may be voted-out by the maintainers and moved to the emeritus status list.
53+
54+
### Becoming a Code Owner
55+
A Code Owner (alias Domain Maintainers) is appointed by the maintainers to recognize a contributor with expertise and authority in a specific domain. Code Owners are appointed to have elevated privilege, authority and specific responsibilities. The code owner role is part of the Microcks contributor ladder, and is the primary path from contributor to maintainer. Code owners are assigned or removed (moved to the emeritus status list) by the maintainers, by vote with 66% (2/3) approval, and their role and responsibilities are scoped. A person can have one or more code owner responsibilities.
56+
57+
Code onwers are enabled to act independently. They do not have responsibilities or voting rights over the entire project or organization. They are expected to participate with the community, They are not expected to participate in maintainer meetings, unless requested.
58+
59+
## Adding or Removing Sub Projects
60+
Microcks maintainers have the authority to add or remove sub-projects or repositories as needed. We follow a careful approach when making these changes: any new sub-project must serve a long-term purpose that is clearly distinct from existing ones, while sub-projects slated for removal must be shown to have either outlived their usefulness, become deprecated or unmaintainable.
61+
62+
When a sub-project is removed, it will be archived as-is within the Microcks-archive organization, along with its associated repositories, ensuring transparency and historical reference.
2363

2464
## Conflict Resolutions
2565
Typically, it is assumed that disputes will be resolved amicably by those involved. However, if the situation becomes more serious, conflicts will be resolved through a voting process. A supermajority of votes from project maintainers is required to make a decision, and the project lead has the final say in the ruling.
2666

27-
## Meetings
67+
## Community Meetings
2868
[Microcks](https://microcks.io/) hosts two monthly community meetings tailored for different time zones:
2969

3070
- **APAC-friendly Meeting:** Second Thursday of each month
@@ -36,13 +76,16 @@ Here’s how to join and participate: https://github.com/microcks/community/blob
3676

3777
The maintainers will also have closed meetings to discuss security reports or Code of Conduct violations. Any maintainer in charge should schedule such meetings upon receiving a security issue or CoC report. All current Maintainers must be invited to such closed meetings, except for any maintainer accused of a CoC violation.
3878

39-
## Changes
40-
This Project Governance is a living document. All key project changes, including changes in project governance, can be proposed by a GitHub PR and then reviewed and voted on by project maintainers.
79+
## Governance Changes
80+
Changes to governance policy and any supporting documents must be agreed and approved by 66% (2/3) of the Maintainers either by vote, or by review and approval of a PR on the document.
81+
82+
This Project Governance is a living document. As the Microcks community and project continue to evolve, maintainers are **committed** to improving and openly sharing our governance model, ensuring transparency and collaboration every step of the way.
4183

42-
As the Microcks community and project **grow**, we are **committed** to _progressing_ by _describing_ and _sharing_ our **governance model** along the way, **the open way**.
84+
## Code of Conduct
85+
Microcks follow the [Code of Conduct](CODE_OF_CONDUCT.md), which is aligned with the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md).
4386

4487
## Credits
4588
Thanks to [Dawn Foster](https://github.com/geekygirldawn) for the inspiring talk and valuable insights at KubeCon Europe 2022: "Good Governance Practices for CNCF Projects":
4689
[Info](https://contribute.cncf.io/resources/videos/2022/good-governance-practices/), [Recording](https://youtu.be/x0tgEpIER1M?si=0EMgdfA1j5kxpXlW) and [slide deck](https://static.sched.com/hosted_files/kccnceu2022/7c/Good_Governance_CNCF_Projects.pdf) 👀
4790

48-
Sections of this document have been borrowed and inspired from the [CoreDNS](https://github.com/coredns/coredns/blob/master/GOVERNANCE.md), [Kyverno](https://github.com/kyverno/kyverno/blob/main/GOVERNANCE.md) and [fluxcd](https://github.com/fluxcd/community/blob/main/GOVERNANCE.md) projects.
91+
Sections of this document have been borrowed and inspired from the [CoreDNS](https://github.com/coredns/coredns/blob/master/GOVERNANCE.md), [Kyverno](https://github.com/kyverno/kyverno/blob/main/GOVERNANCE.md), [OpenEBS](https://github.com/openebs/community/blob/72506ee3b885bd06324b82a650fcd3a61e93eef0/GOVERNANCE.md) and [fluxcd](https://github.com/fluxcd/community/blob/main/GOVERNANCE.md) projects.

0 commit comments

Comments
 (0)