Skip to content

Instantly share code, notes, and snippets.

@vmbrasseur
Created December 28, 2018 23:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vmbrasseur/9167c65ffda7af6a36057fcd7ff50a70 to your computer and use it in GitHub Desktop.
Save vmbrasseur/9167c65ffda7af6a36057fcd7ff50a70 to your computer and use it in GitHub Desktop.
LFN Project CLA Processes

LFN Project CLA Processes

To help Tungsten Fabric settle on the CLA administration process it should use, I've reviewed the CLA processes of the other LFN member projects. I was specifically looking for documentation about how each administers their CLAs (if they use them at all; several do not), but I found no such docs. Instead, below find the summary each project's requirements for contribution as well as my own notes from this research process.

Overall, this is an area where all projects (including TF) can do a better job, both in setting up expectations for the contributors and in documenting the various processes involved. Some projects did not even have contributor guides, for instance, and for others I had to dig into their technical charters to find any mention at all of contribution requirements with regard to intellectual property.

FD.io

Searched for contributor docs or mention of CLA. Didn't find anything.

Having a look at the FD.io Technical Charter. Section 7 is the intellectual property policy. In summary:

  • Contributors retain copyright
  • Inbound code is Apache v2
  • Inbound code requires DCO
  • Outbound == inbound for license
  • Docs are CC BY

So they don't appear to use CLAs at all.

Asked in #fdio IRC channel. Awaiting response… And now that I found the charter I've let the channel know that I don't require an answer from them anymore.

ONAP

Searched docs. Found no mention of CLA at all.

Checking the ONAP Technical Charter, expecting to find IP Policy around section 7. Yup, there it is. Summary:

  • Contributors retain copyright.
  • All new inbound code requires a CCLA, unless self-employed
  • Inbound code is Apache v2
  • DCO required for all inbound code
  • Outbound == inbound for license
  • Docs are CC BY

It says that the CLA is available at onap.org/cla. That redirects to a CCLA PDF. The PDF instructions say:

If you have not already done so, please complete and sign, then scan and email a PDF file of this Agreement to the address indicated in the README file within the CLA folder of the ONAP code repository.

It's proving surprisingly difficult to find the code repository. The Community page has a link with anchor text of "download the code" but it points to a getting started page on ReadTheDocs that itself does not appear to link to the code anywhere.

I was finally able to find a link to the code repository by drilling down through the Advanced Installation doc.

The CLA folder of the ONAP code repository contains no files at all, so there's no way to tell to where the signed CCLA should be sent.

There's also no documentation for how to handle CCLAs once they're received.

OpenDaylight

All ODL contributions require a DCO.

ODL has an inbound code review policy. Really it just seems to be a copy of the DCO. However, it does include this potentially interesting nugget:

To contact ODL regarding matters addressed by this Inbound Code Review Policy, please send email to inbound@linuxfoundation.org.

OPNFV

The OPNFV Developer Getting Started Guide includes this:

If you are not from an LF Networking Fund ("LFN") member company, you will have to agree to be subject to and bound by the OPNFV IP Policy prior to your project contribution. If you're not from an LFN member company, please visit this page for the authorization from non-member developers.

There is, unfortunately, no link there to the OPNFV IP Policy.

That non-LFN member link is more helpful here:

If you're not employed by an LF Networking Fund ("LFN") member organization, you must have the following form completed by an authorized person at your organization. This is so that your company agrees to be bound by the OPNFV IP Policy as outlined in section 7 of the OPNFV TSC Technical Charter that is available at https://www.opnfv.org/about/governance/tsc. The LFN members accept the IP Policy as part of their membership application process.

It then provides links to a CCLA and an ICLA in Docusign. There's no word of what happens with the documents (or any approval notification or other processes) after they're signed.

That LFN IP Policy thing is interesting, though. Here's a direct link to the TSC Technical Charter.

The summary of that IP policy:

  • Contributors retain copyright
  • All inbound code is Apache v2
  • DCO required
  • Outbound == inbound for license
  • Docs are CC BY

Does the TF Technical Charter contain similar verbiage? I just converted this to rst for addition to the docs repo, so let's have a look at that pull request…

Yes, there's verbiage in there, though it's different. I'll cover this in the TF section below. This makes me think I should go check the Technical Charters for all the projects after I finish doing the basic review of their CLA policies.

SNAS

SNAS has no contributor guide at all beyond a mention on this page that contributions are handled via PRs in GitHub. The SNAS GitHub organisation only contains repos for the website and an archived repo for a UI. That page also has a link the text of which is for the OpenBMP project GitHub but the URL points at the SNAS GitHub. I suspect this is an error, since the OpenBMP GitHub exists.

The OpenBMP repo also does not seem to have any sort of contributor guide.

PNDA

PNDA doesn't appear to have any sort of contributor documentation at all.

Tungsten Fabric

Section 7 of the Technical Charter is the TF IP Policy. In summary, it says:

  • Contributors retain copyright
  • All inbound code is Apache v2
  • All inbound code requires a CCLA/ICLA as well as a DCO
  • Outbound == inbound for license
  • Docs are CC BY
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment