CLA signing automation

140 views
Skip to first unread message

Oleksandr Porunov

unread,
Feb 8, 2019, 2:16:31 AM2/8/19
to JanusGraph developers
Hello,

I have a concern about current CLA signing workflow. Currently we need to print a CLA agreement then fill it, then scan it then send it via email and then wait for an unknown amount of time while it is checked then wait while the PR with your signing details is merged into https://github.com/JanusGraph/legal.
It causes very huge delays sometimes more than 1 month. I think it is a big disadvantage for accepting new contributions.

I think we would be able to use either Google form for CLA accepting like this one:

Or maybe use some tool for CLA automation like this one:

There are a lot of CLA automation tools. I think we could use some.

Can we automate this process to digitally sign CLAs or we need real scanned paper copy?

Florian Hockmann

unread,
Feb 8, 2019, 9:19:10 AM2/8/19
to JanusGraph developers
Thanks for bringing this up, Oleksandr. I agree that it's important to make this process easier for contributors as each additional loop they have to jump through could prevent them from contributing to JanusGraph in the first place.

Apparently, Kubernetes has automated its CLA workflow. They are hosted within the Cloud Native Computing Foundation (CNCF) but it seems to use only infrastructure from the Linux Foundation and since the CNCF is also a Linux Foundation project, we should be able to use the same system in general.
They also have docs on how to set up the automation for a new repo. At first glance, it looks like we only need a JanusGraph group for identity.linuxfoundation.org.

While we're at it we could also automate the DCO check with a DCO bot. We currently have to check this manually while reviewing a PR which we tend to forget sometimes.

Oleksandr Porunov

unread,
Feb 8, 2019, 12:49:52 PM2/8/19
to JanusGraph developers
Florian,

I like the automation method you suggested. I would go for it.
Do you know who should we contact to setup it? I assume either Jason Plurad or Misha Brukman should have necessary rights?

Jason Plurad

unread,
Feb 13, 2019, 2:37:33 PM2/13/19
to JanusGraph developers
+1 I agree that the CLA process needs to be improved.

Currently CLAs are submitted to the janusgraph-cla Google Group which is monitored by Misha and me. A representative from the Linux Foundation is also in the group to observe. The group archive provides the historical record of the signed CLA documents.

I have been a bit removed from the JanusGraph community over the past few months for personal issues, but as a community supported project, the absence of any particular members should not prevent the community from moving forward.

Some steps that I propose we take in the short term:
* All PMC members given access to the janusgraph-cla group so that any PMC member can handle incoming CLAs
* Update the Contributing documentation to help eliminate the common follow up questions around ICLA vs CCLA. This mostly consists of ensuring that an individual contributor has verified that their employer/university/organization is aware of the contributions and will not make any claims on the submitted contributions.

Long term, if we can take advantage of some of the Linux Foundation infrastructure to handle or automate this, that would be fantastic. JanusGraph was created as a "lightweight project", so the support the project has received from the LF has been minimal. My understanding is that the marquee projects (like Kubernetes, CNFC, ODPi) have more sponsor money involved, so they have access to nice things.

Thank you Oleksandr and Florian for starting up this thread. If anybody else is interested in helping to push this topic forward, please reply on this thread.


Thanks,
Jason

Oleksandr Porunov

unread,
Feb 13, 2019, 6:09:31 PM2/13/19
to JanusGraph developers
Hello Jason,

Thank you for the replay!
It definitely would be better if more people could handle incoming CLAs right now. 
I don't think that voting is appropriate in the current situation because too little JanusGraph members are involved right now. So, I believe you can give access to all PMC members without voting.

Also, I have some questions about automation.
Do you know where we should contact to ask to open a JanusGraph group for identity.linuxfoundation.org ?
I don't know the internal responsibility structure of JanusGraph. 
I have seen for some time that you were responsible for new releases of JanusGraph, so I assume that you owned nexus keys for deployment. So, my assumption that you have more rights in JanusGraph.

If so, my thoughts are that JanusGraph is under The Linux Foundation. It means that at least some support is provided. Right now we need to automate CLA signing (which isn't hard I think). I don't think that we will be rejected of using a little bit of The Linux Foundation functionality, but I think that someone responsible need to ask for this functionality from The Linux Foundation responsible party. Can you contact that responsible party? If no then can you share any contact where I can ask for?

Best regards,
Oleksandr

Florian Hockmann

unread,
Feb 14, 2019, 11:10:08 AM2/14/19
to JanusGraph developers
I searched some more about the infrastructure Kubernetes is using for the CLA automation and found this issue on GitHub which discusses open sourcing of the CLA bot used by Kubernetes to make it accessible to others.

That issue also refers to an email address at the Linux Foundation (LF) for specific questions about this CLA bot. So, I just sent an email to that address to ask the following questions:
  • Is it possible for JanusGraph to use the existing (closed source) CLA bot that Kubernetes is already using?
  • If not, will the open sourced CLA bot be available for us?
  • And if we cannot use either of those, would another CLA automation not based on LF infrastructure (like the CLA assistant from SAP from Oleksandr's first post) be acceptable from the site of the LF?
I will of course post anything I'll get back here to keep you posted.

@Jason: I hope it's OK that I reached out to the LF in this matter as I only asked for information.

Misha Brukman

unread,
Feb 14, 2019, 11:54:02 AM2/14/19
to JanusGraph developer list
I've reached out to The Linux Foundation folks I've previously spoken to about CLA automation (which wasn't implemented yet, as you can tell, and I haven't heard back from for a while). I believe they already have a GitHub bot we can reuse. I'll let you know what I find out.

--
You received this message because you are subscribed to the Google Groups "JanusGraph developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to janusgraph-de...@googlegroups.com.
To post to this group, send email to janusgr...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/janusgraph-dev/d40dbef3-8d4f-474b-9125-e301b37e563b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Oleksandr Porunov

unread,
Feb 27, 2019, 6:31:28 PM2/27/19
to JanusGraph developers
I've noticed that it is already about 1 month has gone when `mad` from github send a CLA. Is there any news about including him into janusgraph/legal? Next PRs are stuck because of this:
#1406

Also, is there any news from The Linux Foundation?

Florian Hockmann

unread,
Feb 28, 2019, 3:15:28 AM2/28/19
to JanusGraph developers
Also, is there any news from The Linux Foundation?

From my side, no. The Linux Foundation directed me to two members of the Kubernetes community who I contacted, but haven't heard back from them.

@Misha: Were you more successful?

If we don't hear anything from the LF any time soon, then I suggest that we just go ahead with a 3rd party CLA bot like you (Oleksandr) originally suggested in the first post here.

Oleksandr Porunov

unread,
Feb 28, 2019, 4:05:36 AM2/28/19
to JanusGraph developers
I agree. If there is no response, we should go with 3rd party CLA bot.

Jason Plurad

unread,
Mar 1, 2019, 12:50:45 AM3/1/19
to JanusGraph developers
I've submitted a PR for the ICLA.

Regarding adding other committers to the CLA Google Group, it doesn't appear that I have authority to do that, only Misha.

I've noticed that I can't see the CLA archive via the Google Group. I do have a record of every email I've received since being added to the group (April 2018), so I have access to only a partial archive.

Oleksandr Porunov

unread,
Mar 1, 2019, 4:13:01 AM3/1/19
to JanusGraph developers
Jason, thank you for submitting the PR. 
Also reporting that wangzheng90 from github sent a CLA. Related PR-1456.

Misha, could you please add necessary permissions to Jason?

Oleksandr Porunov

unread,
Mar 5, 2019, 4:43:30 AM3/5/19
to JanusGraph developers
Florian, I believe we can move with 3rd party CLA bot now because there is no any news from LF. 

There are contributors who would like to contribute, but CLA verification is taking too much time to accept new contributors. It really slows down the process because most of the time new contributors either don't want to go through the process where they need to print then sign then scan then send CLA or even when they do it they are losing interest after 1+ months of verification.

As for me, I think we should move to automate CLA signing ASAP. I think we can discuss a CLA bot for JanusGraph.

Some possible solutions could be either CLA automation tool like these tools:

Or signing with Google form like this one:

It would be nice to move to automate CLA signing on this or the next week.

Florian Hockmann

unread,
Mar 5, 2019, 5:56:53 AM3/5/19
to JanusGraph developers
I agree with you that the CLA process takes too long right now and scares away some possible contributors which is really problematic.

The only problem I see with these tools is that they all only seem to handle individual CLAs (ICLA), but not corporate CLAs (CCLA). Since most of our contributors use a CCLA, we also need to find a solution for that.

Out of the 3 tools you listed, I found two that had issues for CCLAs:
For cla-assistant, closed without a fix: https://github.com/cla-assistant/cla-assistant/issues/15

Oleksandr Porunov

unread,
Mar 5, 2019, 6:57:00 AM3/5/19
to JanusGraph developers
Thanks for pointing to this problem. I didn't think about CCLAs before. We need to investigate it.

Oleksandr Porunov

unread,
Mar 5, 2019, 8:12:21 AM3/5/19
to JanusGraph developers
Asking to check CLAs for the next contributors:

- VladimirBogomolov
- wangzheng90

Florian Hockmann

unread,
Mar 17, 2019, 10:18:28 AM3/17/19
to JanusGraph developers
I just asked in the issue I linked above whether it will be possible for us to use the CLA bot of the Linux Foundation and got a very promising response from Dan Kohn:

Yes, JanusGraph will be very welcome to use it with the LF managing the CLAbot. We're just a little backed up with the 2 week private beta of CommunityBridge and then we can hopefully move forward with the gRPC CLAbot rollout. https://www.linuxfoundation.org/press-release/2019/03/the-linux-foundation-launches-new-communitybridge-platform-to-help-sustain-open-source-communities/

The gRPC project will beta test the bot and then they want to make it accessible to other projects afterwards.

So, it sounds like we can use this automation in a few weeks / months :-)

Oleksandr Porunov

unread,
Mar 17, 2019, 10:30:43 AM3/17/19
to JanusGraph developers
Florian, 

It is great news! I really happy to hear that!
Waiting for the bot :)

Misha Brukman

unread,
Mar 20, 2019, 6:34:43 PM3/20/19
to JanusGraph developer list
In emailing help...@rt.linuxfoundation.org to open a ticket (which I believe was the process in the past?), I've learned that (a) Linux Foundation no longer supports that email address, and (b) they are now using Jira for their ticket system. I logged in and created an account and found this really old ticket: https://jira.linuxfoundation.org/browse/CL-92 (subject: "get JanusGraph CLA template") which I pinged to get some update on the status.

I've also followed-up on our thread from February (!!) with some folks from The Linux Foundation to set up a meeting to discuss the onboarding to the new CLA process, and we now have a meeting scheduled on Mon, Mar 25 at 11am PDT / 2pm EDT. If any JanusGraph TSC member or committer is interested in joining the call (phone or video call, both are supported), please let me know, and I'll be happy to add you.

Looking forward to getting the CLA process fully automated soon!

Oleksandr Porunov

unread,
Mar 21, 2019, 3:31:27 AM3/21/19
to JanusGraph developers
Misha,

I really love to hear that! I am happy that there are progress in the CLA automation direction.
Hope it will be implemented soon.

Chris Hupman

unread,
Mar 21, 2019, 3:15:23 PM3/21/19
to JanusGraph developers
Hey Misha,

If it's not too much trouble I'd be interested in joining the call. 

Regards,

Chris

Misha Brukman

unread,
Mar 21, 2019, 5:20:31 PM3/21/19
to Chris Hupman
[ bcc: janusgraph-dev ]

No trouble at all, Chris! You're on the invite.

Oleksandr Porunov

unread,
Mar 24, 2019, 11:08:34 AM3/24/19
to JanusGraph developers
Misha, Jason,

Could you please check if VladimirBogomolov signed a CLA? Looks like he signed it 19 days ago but the CLA PR wasn't been submitted to janusgraph-legal repository still.

Regards,
Oleksandr

Oleksandr Porunov

unread,
Mar 30, 2019, 12:11:38 PM3/30/19
to JanusGraph developers
Misha, Jason,

Could you please check if "fufler" signed a CLA? If so, could you create a PR to include him into janusgraph-legal repository?

Regards,
Oleksandr

Chris Hupman

unread,
May 14, 2019, 10:49:35 PM5/14/19
to JanusGraph developers
I reached out to John Mertic from the linux foundation about the CLA automation tool and was told it is now ready for Prime time. He also said he could help get us onboarded. Would it be easiest if I just add you on the email thread Misha?

Misha Brukman

unread,
May 15, 2019, 9:14:15 PM5/15/19
to Chris Hupman, JanusGraph developer list
Hi Chris,

Yes, please add me to the thread and I'll take it from there.

Thanks,
Misha

Reply all
Reply to author
Forward
0 new messages