Skip to content

Latest commit

 

History

History
86 lines (55 loc) · 2.94 KB

File metadata and controls

86 lines (55 loc) · 2.94 KB

Testcontainers Project Governance

This document outlines the governance structure of the Testcontainers Open Source Project, its roles, responsibilities, and the decision-making processes that guide the project.

Principles

The Testcontainers project is guided by the principles of openness, autonomy, collaboration, and trust.
We aim to build an inclusive and productive community of contributors and users.


Governance Structure

1. Project Steering Committee

Also referred to as the “Testcontainers Steering Committee” (TSC)

Members

  • @cristianrgreco
  • @eddumelendez
  • @HofmeisterAn
  • @kiview
  • @mdelapenya

Responsibilities

  • Oversee the overall direction and health of the Testcontainers project across all languages
  • Define and evolve the governance model
  • Approve onboarding of new subprojects and maintainers
  • Manage financial matters (sponsorships, stipends, funding allocation)
  • Arbitrate escalated disputes within the community

Decision-making

  • Consensus-based with fallback to majority vote when necessary
  • Closed matters (e.g., funding) may be handled privately, but outcomes must be transparently shared with the community

2. Language Leads

Each supported programming language within the Testcontainers ecosystem is led by at least one Language Lead,
a trusted and experienced maintainer with broad authority over that language's implementation and community. Each individual language project may opt to having multiple Language Leads if they choose to do so.

Responsibilities

  • Lead the development, vision, and roadmap of the language-specific implementation
  • Review and approve significant changes, releases, and architectural decisions
  • Coordinate and onboard with Community Maintainers
  • Foster a healthy and inclusive sub-community

Scope of Autonomy

  • Full technical autonomy over the language module
  • Expected to operate within the broader values and technical direction of the overall project

3. Community Maintainers

Community Maintainers are regular contributors who have earned commit access to specific language repositories.

Responsibilities

  • Review and merge pull requests
  • Engage with the community via issues, discussions, and forums
  • Help triage bugs and manage releases (where applicable)
  • Act as role models and mentors for new contributors

Permissions

  • Write and merge access to their specific language repositories
  • Release rights may be granted at the discretion of the Language Lead

Nomination & Onboarding

  • Nominated by the Language Lead
  • Confirmed by the Project Steering Committee

Amendments to Governance

Changes to this governance model must be proposed via a pull request to this document
and approved by the Testcontainers Steering Committee.

Acknowledgements

This governance model was inspired by and aligns with best practices from other open source projects,
including the CNCF, Rust, and Python communities.