Contributors, Committers & Maintainers
This content was approved by the EdgeX TSC (12/14) and update of the EdgeX Charter, Section 4.c.
The content in this shaded section was modified by the EdgeX TSC (10/7).
Project Team Roles
Projects are driven by the people - people contributing code, documentation, tests, etc. (some product artifact) as well as volunteers that serve to oversee and manage the incoming contributions.
There are three defined roles associated with artifact contributions. Note, these definitions are based on elements from https://www.linuxfoundation.org/resources/open-source-guides/participating-open-source-communities/ and https://opensource.guide/leadership-and-governance/.
Contributor: anyone who comments on an issue or pull request, people who add value to the project (whether it’s triaging issues, writing code, or organizing events), or anybody with a merged pull request (perhaps the narrowest definition of a contributor). Anyone, whether a member of EdgeX or not, can be a contributor; for example, anyone can make a pull request on one of the GitHub repositories and make a code contribution. Any contribution must have an appropriate DCO sign off and the author is required to follow the laws and policies with regard to copyright law, Apache 2 license agreements, and Linux Foundation policies. All contributions that follow these rules and policies are greatly appreciated, subject to project review and possible incorporation into the project.
Committer: the people with commit access to EdgeX repositories. It is a committer's prime responsibility to review, comment on, co-ordinate, accept and merge additions and patches from contributors and to maintain the design cohesion of the project components. Committers are members of the EdgeX community who feel responsibility over the direction of the project and are committed to improving it. Committers hold technical leadership within the EdgeX community and are typically people who have greatly contributed to the project and are considered reliable and responsible enough to be allowed to commit directly to all or some parts of the project.
Maintainer: Maintainers create the EdgeX repository and have access rights to perform administrative functions, archive or even delete them. Often, a member of the Linux Foundation, maintainers are also committers in EdgeX by default, but typically do not participate in reviews or contribute commits to the project except in performing administrative duties or to repair a repository issue.
Nomination and Approval of Maintainers and Committers
By default, project working group leads (aka – working group chairpersons) are automatically committers for repositories assigned to their working group. TSC members (to include working group leads) can nominate and approve additional committers to EdgeX repositories. No additional TSC member approval is required. As a courtesy, the TSC member that nominates and approves committer rights should inform the work group with responsibility over the affected repository.
Committer and maintainer changes must be submitted by a TSC member by change request to the LF release engineering via the LF Project Services web site (https://jira.linuxfoundation.org/plugins/servlet/theme/portal/2).
The TSC chair and vice chair are automatic committers for all repositories.
The TSC may appoint (with a simple majority vote) other committers and maintainers as it sees fit based on merit (such as architectural purview of the project, knowledge of the project, volume of contributions, etc.) or need.
The TSC can, by simple majority vote, revoke the committer or maintainer privilege.
As the Linux Foundation maintains the EdgeX repository collection, maintainers are typically appointed by the Linux Foundation and are generally employees of the LF. The TSC can approve additional maintainers by simple majority vote.
All changes to the maintainers and committers should be documented in TSC minutes and the change request submitted by the TSC chair, vice chair or appropriate working group chair to the LF releng at support.linuxfoundation.org.
Maintainers and Committers
The links below will take the reader to the list of committer/maintainer teams for each of the EdgeX repositories. The team members can be viewed under the Members tab of each team.
Committer teams: https://github.com/orgs/edgexfoundry/teams?query=committers
Maintainer teams: https://github.com/orgs/edgexfoundry/teams?query=maintainers