|
| 1 | +# Agones Project Governance |
| 2 | + |
| 3 | +The Agones project is dedicated to creating an open source, batteries-included, dedicated game server hosting platform built on Kubernetes. |
| 4 | +This governance explains how the project is run. |
| 5 | + |
| 6 | +- [Values](#values) |
| 7 | +- [Approvers](#approvers) |
| 8 | +- [Becoming an Approver](#becoming-an-approver) |
| 9 | +- [Meetings](#meetings) |
| 10 | +- [CNCF Resources](#cncf-resources) |
| 11 | +- [Code of Conduct Enforcement](#code-of-conduct) |
| 12 | +- [Security Response Team](#security-response-team) |
| 13 | +- [Voting](#voting) |
| 14 | +- [Modifications](#modifying-this-charter) |
| 15 | + |
| 16 | +## Values |
| 17 | + |
| 18 | +The Agones project and its leadership embrace the following values: |
| 19 | + |
| 20 | +* Openness: Communication and decision-making happens in the open and is discoverable for future |
| 21 | + reference. As much as possible, all discussions and work take place in public |
| 22 | + forums and open repositories. |
| 23 | + |
| 24 | +* Fairness: All stakeholders have the opportunity to provide feedback and submit |
| 25 | + contributions, which will be considered on their merits. |
| 26 | + |
| 27 | +* Community over Product or Company: Sustaining and growing our community takes |
| 28 | + priority over shipping code or sponsors' organizational goals. Each |
| 29 | + contributor participates in the project as an individual. |
| 30 | + |
| 31 | +* Inclusivity: We innovate through different perspectives and skill sets, which |
| 32 | + can only be accomplished in a welcoming and respectful environment. |
| 33 | + |
| 34 | +* Participation: Responsibilities within the project are earned through |
| 35 | + participation, and there is a clear path up the contributor ladder into leadership |
| 36 | + positions. |
| 37 | + |
| 38 | +## Approvers |
| 39 | + |
| 40 | +Agones Approvers have write access to the [project GitHub repository](https://github.com/agones-dev/agones). |
| 41 | +They can merge their own patches or patches from others. The current approvers |
| 42 | +can be found in [community_membership.md](./docs/governance/community_membership.md). Approvers collectively manage the project's |
| 43 | +resources and contributors. |
| 44 | + |
| 45 | +This privilege is granted with some expectation of responsibility: approvers |
| 46 | +are people who care about the Agones project and want to help it grow and |
| 47 | +improve. An approver is not just someone who can make changes, but someone who |
| 48 | +has demonstrated their ability to collaborate with the team, get the most |
| 49 | +knowledgeable people to review code and docs, contribute high-quality code, and |
| 50 | +follow through to fix issues (in code or tests). |
| 51 | + |
| 52 | +An approver is a contributor to the project's success and a citizen helping |
| 53 | +the project succeed. |
| 54 | + |
| 55 | +The collective team of all Approvers is known as the Approver Council, which |
| 56 | +is the governing body for the project. |
| 57 | + |
| 58 | +### Becoming an Approver |
| 59 | + |
| 60 | +Requirements and the nomination process for becoming an Approver are defined in |
| 61 | +[community_membership.md](./docs/governance/community_membership.md#approver). |
| 62 | + |
| 63 | +Approvers who are selected will be granted the necessary GitHub rights, |
| 64 | +invited to the [private approver mailing list](mailto:agones-admin@googlegroups.com), and provided access to all appropriate |
| 65 | +resources. |
| 66 | + |
| 67 | +### Removing an Approver |
| 68 | + |
| 69 | +Resignation, removal criteria, and Emeritus status are defined in |
| 70 | +[community_membership.md](./docs/governance/community_membership.md#resignation-and-removal). |
| 71 | + |
| 72 | +## Meetings |
| 73 | + |
| 74 | +Time zones permitting, Approvers are expected to participate in the public |
| 75 | +community meeting as often as they are able, which occurs monthly. |
| 76 | +Meeting details and calendar invites are available via the [mailing list](https://groups.google.com/forum/#!forum/agones-discuss) |
| 77 | +and the [community calendar](https://calendar.google.com/calendar/embed?src=google.com_828n8f18hfbtrs4vu4h1sks218%40group.calendar.google.com&ctz=America%2FLos_Angeles). |
| 78 | +Past meeting recordings are available on the [community YouTube playlist](https://www.youtube.com/playlist?list=PLhkWKwFGACw2dFpdmwxOyUCzlGP2-n7uF). |
| 79 | + |
| 80 | +Approvers will also have closed meetings in order to discuss security reports |
| 81 | +or Code of Conduct violations. Such meetings should be scheduled by any |
| 82 | +Approver on receipt of a security issue or CoC report. All current Approvers |
| 83 | +must be invited to such closed meetings, except for any Approver who is |
| 84 | +accused of a CoC violation. |
| 85 | + |
| 86 | +## CNCF Resources |
| 87 | + |
| 88 | +Any Approver may suggest a request for CNCF resources, either in the |
| 89 | +[mailing list](https://groups.google.com/forum/#!forum/agones-discuss), the #development Slack channel, or during a |
| 90 | +meeting. A simple majority of Approvers approves the request. The Approvers |
| 91 | +may also choose to delegate working with the CNCF to non-Approver community |
| 92 | +members, who will then be added to the [CNCF's Maintainer List](https://github.com/cncf/foundation/blob/main/project-maintainers.csv) |
| 93 | +for that purpose. |
| 94 | + |
| 95 | +## Code of Conduct |
| 96 | + |
| 97 | +[Code of Conduct](./code-of-conduct.md) |
| 98 | +violations by community members will be discussed and resolved |
| 99 | +on the [private Approver mailing list](mailto:agones-admin@googlegroups.com) or on a private Slack channel. |
| 100 | +If an Approver is directly involved in the report, the Approvers will instead designate two Approvers to work |
| 101 | +with the CNCF Code of Conduct Committee in resolving it. |
| 102 | + |
| 103 | +## Security Response Team |
| 104 | + |
| 105 | +The Approvers will appoint a Security Response Team to handle security reports. |
| 106 | +This committee may simply consist of the Approver Council themselves. If this |
| 107 | +responsibility is delegated, the Approvers will appoint a team of at least two |
| 108 | +contributors to handle it. The Approvers will review who is assigned to this |
| 109 | +at least once a year. |
| 110 | + |
| 111 | +The Security Response Team is responsible for handling all reports of security |
| 112 | +holes and breaches according to the [security policy](.github/SECURITY.md). |
| 113 | + |
| 114 | +## Voting |
| 115 | + |
| 116 | +While most business in Agones is conducted by "[lazy consensus](https://community.apache.org/committers/lazyConsensus.html)", |
| 117 | +periodically the Approvers may need to vote on specific actions or changes. |
| 118 | +A vote can be taken on [the developer mailing list](https://groups.google.com/forum/#!forum/agones-discuss), private Slack channels, |
| 119 | +[the private Approver mailing list](mailto:agones-admin@googlegroups.com) for security or conduct matters, or via a GitHub issue for public matters. |
| 120 | +Votes may also be taken at [the community meeting](https://calendar.google.com/calendar/embed?src=google.com_828n8f18hfbtrs4vu4h1sks218%40group.calendar.google.com&ctz=America%2FLos_Angeles). Any Approver may |
| 121 | +demand a vote be taken. |
| 122 | + |
| 123 | +Most votes require a simple majority of all Approvers to succeed, except where |
| 124 | +otherwise noted. Two-thirds majority votes mean at least two-thirds of all |
| 125 | +existing approvers. |
| 126 | + |
| 127 | +## Modifying this Charter |
| 128 | + |
| 129 | +Changes to this Governance and its supporting documents may be approved by |
| 130 | +a 2/3 vote of the Approvers. Proposed changes should be submitted as a GitHub Pull Request or Issue, |
| 131 | +with the vote conducted on the PR or issue itself. |
0 commit comments