xref: /openbmc/docs/maintainer-workflow.md (revision b38b0a4c)
1# OpenBMC Maintainer/CLA Workflow
2OpenBMC contributors are required to execute an OpenBMC CLA (Contributor
3License Agreement) before their contributions can be accepted.  This page is a
4checklist for sub-project maintainers to follow before approving patches.
5
6* Manually verify the contributor has signed the ICLA (individual) or is
7listed on an existing CCLA (corporate).
8  * Executed CLAs can be found [in the CLA repository][1].
9  * If you were not added to the appropriate CLA repository ACL send an
10email to openbmc@lists.ozlabs.org with a request to be added.
11  * If a CLA for the contributor is found, accept the patch(1).
12* If a CLA is not found, request that the contributor execute one and send it
13to manager@lfprojects.org.
14  * Do not accept the patch(1) until a signed CLA (individual _or_
15corporate) has been uploaded to the CLA repository.
16  * The CCLA form can be found [here][2].
17  * The ICLA form can be found [here][3].
18
19An executed OpenBMC CLA is _not_ required to accept contributions to
20OpenBMC forks of upstream projects, like the Linux kernel or U-Boot.
21
22Review the maintainers' responsibilities in the [contributing
23guidelines](./CONTRIBUTING.md).  Maintainers are ultimately
24responsible for sorting out open source license issues, issues with
25using code copied from the web, and maintaining the quality of the
26code.
27
28Repository maintainers ought to have the following traits as
29recognized by a consensus of their peers:
30 - responsible: have a continuing desire to ensure only high-quality
31   code goes into the repo
32 - leadership: foster open-source aware practices such as [FOSS][4]
33 - expertise: typically demonstrated by significant contributions to
34   the code or code reviews
35
36(1) The semantics of accepting a patch depend on the sub-project contribution
37process.
38
39* GitHub pull requests - Merging the pull request.
40* Gerrit - +2.
41* email - Merging the patch.
42
43Ensure that accepted changes actually merge into OpenBMC repositories.
44
45[1]: https://drive.google.com/drive/folders/1Ooi0RdTcaOWF1DWFJUAJDdN7tRKde7Nl
46[2]: https://github.com/openbmc/openbmc/files/1860741/OpenBMC.CCLA.pdf
47[3]: https://github.com/openbmc/openbmc/files/1860742/OpenBMC.ICLA.pdf
48[4]: https://en.wikipedia.org/wiki/Free_and_open-source_software
49