Donations of preexisting code fall into two broad categories:
- Small donations: Some donations only amount to a single PR and should usually just be contributed as such
- Large or complex donations: Other donations are much larger, require ongoing maintenance of their own, and/or introduce nuanced licensing issues
Large donations – or small donations that turn up complex issues during PR
review – should be referred to the Technical Committee (TC) by filing an issue
in this community
repository and tagging
@open-telemetry/technical-committee
. The TC will respond to donation
proposals within two weeks (that is, after having time to meet and discuss
live). If the TC has not responded to the donation request within that
interval, the donating party can and should point to this document and request
guidance at the TC's earliest convenience.
All donated code requires a license compatible with the Apache Software License 2.0, and donated code will require a change of copyright to reflect the OpenTelemetry Authors. The Governance Committee (GC) will also ask to review any trademarks (like the names of components) the donation can carry and make a decision to either remove those trademarks or transfer them to the CNCF.
Broadly, these are the steps the OpenTelemetry Governance and Technical Committees follow to handle a prospective donation.
- Per the above, the donating organization creates a GitHub issue using
the "Donation Proposal" form in the
community
repository. - The GC will evaluate the proposal to ensure that the donation is aligned with the overall OpenTelemetry project vision and roadmap and has a balanced set of interested contributors and maintainers. The GC is also responsible for driving awareness in the community about the contribution and making sure all interested parties have a chance to object and/or contribute. The GC should work with any appropriate Special Interest Groups or Working Groups to evaluate the donation proposal, consider alternatives, and ensure OpenTelemetry has the resources required to support the donation. When considering alternatives, the GC should consider at least the CNCF ecosystem, and may also consider other well-known open source projects or alternatives proposed by the community.
- If a donation proposal passes the initial GC screening, the TC will conduct due diligence to determine if the proposed donation can be effectively integrated into the OpenTelemetry project in a way that meets the quality, security, and privacy standards of the project without violating stable specification or OpenTelemetry Enhancement Proposals (OTEPs). The TC will summarize their findings, and make a recommendation to either accept or reject the proposal, conditionally or unconditionally, in a report which will be attached to the donation proposal issue. Writing the report may require meeting and discussing alternative technologies with different vendors in the community and can be a lengthy process. The TC member driving the report will post updates and time estimates to the issue.
- The GC will consider the report and make a final decision about the donation, and document that decision on the donation proposal issue.
- If accepted, the contributing organization – particularly if it's a commercial entity – must formally acknowledge via the GitHub issue that its respective sales and marketing departments have received, understood, and accepted the terms of the OpenTelemetry marketing guidelines.
- Given all of the above, the GitHub issue is closed and the donation moves forward as agreed to by the TC and GC.