xref: /openbmc/docs/maintainer-workflow.md (revision 2b66c9e2405b85f6b7f70809c4a5ea8848defabd)
1ac95da4aSBrad Bishop# OpenBMC Maintainer/CLA Workflow
2ac95da4aSBrad BishopOpenBMC contributors are required to execute an OpenBMC CLA (Contributor
3ac95da4aSBrad BishopLicense Agreement) before their contributions can be accepted.  This page is a
4ac95da4aSBrad Bishopchecklist for sub-project maintainers to follow before approving patches.
5ac95da4aSBrad Bishop
6ac95da4aSBrad Bishop* Manually verify the contributor has signed the ICLA (individual) or is
7ac95da4aSBrad Bishoplisted on an existing CCLA (corporate).
8ac95da4aSBrad Bishop	* Executed CLAs can be found [in the CLA repository]
9ac95da4aSBrad Bishop	(https://drive.google.com/drive/folders/1Ooi0RdTcaOWF1DWFJUAJDdN7tRKde7Nl).
10ac95da4aSBrad Bishop	* If you were not added to the appropriate CLA repository ACL send an
11ac95da4aSBrad Bishopemail to openbmc@lists.ozlabs.org with a request to be added.
12ac95da4aSBrad Bishop	* If a CLA for the contributor is found, accept the patch(1).
13ac95da4aSBrad Bishop* If a CLA is not found, request that the contributor execute one and send it
14ac95da4aSBrad Bishopto openbmc@lists.ozlabs.org.
15ac95da4aSBrad Bishop	* Do not accept the patch(1) until a signed CLA (individual _or_
16ac95da4aSBrad Bishopcorporate) has been uploaded to the CLA repository.
17ac95da4aSBrad Bishop	* The CCLA form can be found [here]
18ac95da4aSBrad Bishop	(https://github.com/openbmc/openbmc/files/1860741/OpenBMC.CCLA.pdf).
19ac95da4aSBrad Bishop	* The ICLA form can be found [here]
20ac95da4aSBrad Bishop	(https://github.com/openbmc/openbmc/files/1860742/OpenBMC.ICLA.pdf).
21ac95da4aSBrad Bishop
2294b94e50SJoseph ReynoldsAn executed OpenBMC CLA is _not_ required to accept contributions to
2394b94e50SJoseph ReynoldsOpenBMC forks of upstream projects, like the Linux kernel or U-Boot.
2494b94e50SJoseph Reynolds
2594b94e50SJoseph ReynoldsReview the maintainers' responsibilities in the [contributing
2694b94e50SJoseph Reynoldsguidelines](./CONTRIBUTING.md).  Maintainers are ultimately
2794b94e50SJoseph Reynoldsresponsible for sorting out open source license issues, issues with
2894b94e50SJoseph Reynoldsusing code copied from the web, and maintaining the quality of the
2994b94e50SJoseph Reynoldscode.
3094b94e50SJoseph Reynolds
3194b94e50SJoseph ReynoldsRepository maintainers ought to have the following traits as
3294b94e50SJoseph Reynoldsrecognized by a consensus of their peers:
3394b94e50SJoseph Reynolds - responsible: have a continuing desire to ensure only high-quality
3494b94e50SJoseph Reynolds   code goes into the repo
3594b94e50SJoseph Reynolds - leadership: foster open-source aware practices such as [FOSS](https://en.wikipedia.org/wiki/Free_and_open-source_software)
3694b94e50SJoseph Reynolds - expertise: typically demonstrated by significant contributions to
3794b94e50SJoseph Reynolds   the code or code reviews
3894b94e50SJoseph Reynolds
39ac95da4aSBrad Bishop(1) The semantics of accepting a patch depend on the sub-project contribution
40ac95da4aSBrad Bishopprocess.
41ac95da4aSBrad Bishop
42*2b66c9e2SGunnar Mills* GitHub pull requests - Merging the pull request.
43ac95da4aSBrad Bishop* Gerrit - +2.
44ac95da4aSBrad Bishop* email - Merging the patch.
45ac95da4aSBrad Bishop
4694b94e50SJoseph ReynoldsEnsure that accepted changes actually merge into OpenBMC repositories.
47