Blog-Icon_2_100x385

Changes to the Contributor License Agreement Process

With the soft-opening of Supermarket, we updated the process for signing a Contributor License Agreement, CLA. Supermarket has already started tracking CLAs. Unfortunately, because of the way this data has been stored in the past, we were not able to migrate the data. As a result, if you are a contributor, you will need to do one of the following:

Do I need to sign a CLA?

The answer for many users of the Supermarket and Community site is, no.

  • You do not need a CLA to open an issue
  • You do need a CLA to have a patch merged

A CLA is only needed if you are contributing to CHEF maintained projects. This means you do not need a CLA if you are just opening an issue, but it does mean you need a signed CLA on file to have code from a pull request merged in. The article at https://github.com/opscode/chef/blob/master/CONTRIBUTING.md#contributor-license-agreement-cla does a good job of explaining why a CLA is needed. Our hope is that the new process is easier to understand and we as a community can iterate on it over time.

ICLA vs CCLA

You should complete an ICLA when you are contributing work you have done for yourself, and you should be associated with a CCLA when you are contributing work you did for a company (who retains copyright for that work). You can be a member of more than one CCLA since you can be working for more than one company at a time because of situations like contract work.

Managing Corporate Contributors

One of our goals for the Supermarket project was to improve the way CCLAs are managed. Going forward, the user that signs the CCLA initially, will be the first administrator on the CCLA. From there, that user can invite others to join the CCLA and grant admin privileges to other users so that they can invite others as well.

Shipping and Learning

Shortly after soft-opening Supermarket, we ended up with an interesting problem, 13 companies had signed the CCLA and 12 of them were CHEF. As you look at the list of corporate contributors you will still see lots of CHEFs listed. Over the next few weeks we will be working to address this issue, make the workflow more concrete and give our admins the ability to work with companies when this issue arises on occasion.

The take away from this is how important it is to ship product and have the ability to iterate quickly. For starters, we would have never seen this issue had we not shipped Supermarket to our users. And now, not only can we work toward correcting these issue, we have the ability to quickly move code through the pipeline, into production so our users can have the more delightful experience they deserve.

UPDATE

The reason for this change is to link your GitHub Account and your CHEF account so that CLA verification can be automated. This will mean that:

  • New contributors will be notified right away if they have not already signed a CLA.
  • A pull request will automatically be checked that a CLA or CLAs are on file.
  • Pull requests that have been tagged as “Signed CLA” can be merged more quickly.

Christopher Webber