This document defines project governance for Linkerd.
The Linkerd maintainers are 100% committed to open governance and to being hosted by a neutral foundation. We believe that a diverse and active set of maintainers is fundamental to the long-term health of an open source project. And we want YOU to join us.
Linkerd is for everyone. Anyone can become a Linkerd contributor simply by contributing to the project, whether through code, documentation, blog posts, community management, or other means. As with all Linkerd community members, contributors are expected to follow the Linkerd Code of Conduct.
All contributions to Linkerd code, documentation, or other components in the Linkerd GitHub org must follow the guidelines in CONTRIBUTING.md. Whether these contributions are merged into the project is the prerogative of the maintainers.
Maintainers have the ability to merge code into the project. Anyone can become a Linkerd maintainer (see "Becoming a maintainer" below.)
As such, there are certain expectations for maintainers. Linkerd maintainers are expected to:
- Review pull requests, triage issues, and fix bugs in their areas of expertise, ensuring that all changes go through the project's code review and integration processes.
- Monitor cncf-linkerd-* emails and the Linkerd Slack, and help out when possible.
- Rapidly respond to any time-sensitive security release processes.
- Attend meetings with the Linkerd Steering Committee.
If a maintainer is no longer interested in or cannot perform the duties listed above, they should move themselves to emeritus status. If necessary, this can also occur through the decision-making process outlined below.
Ideally, all project decisions are resolved by maintainer consensus. If this is not possible, maintainers may call a vote. The voting process is a simple majority in which each maintainer receives one vote.
Becoming a maintainer
Anyone can become a Linkerd maintainer. Maintainers should be extremely proficient in Go and/or Rust; have relevant domain expertise; have the time and ability to meet the maintainer expectations above; and demonstrate the ability to work with the existing maintainers and project processes.
To become a maintainer, start by expressing interest to existing maintainers. Existing maintainers will then ask you to demonstrate the qualifications above by contributing PRs, doing code reviews, and other such tasks under their guidance. After several months of working together, maintainers will decide whether to grant maintainer status.