OneBusAway / onebusaway

Parent module for all OneBusAway projects with common configuration information.
https://github.com/OneBusAway/onebusaway/wiki
Other
336 stars 72 forks source link

Setup automatic CLA verifier #9

Closed barbeau closed 7 years ago

barbeau commented 8 years ago

There are some projects, for example Google's transit repo for GTFS-rt changes, that have an automatic CLA verifier script that labels cla:yes when the user has signed the CLA, and cla:no when the user has not yet signed the CLA. For example, see: https://github.com/google/transit/pull/14

From https://github.com/CUTR-at-USF/gtfs-realtime-validator/issues/6:

Google seems to be using a script Application script to check if the contributors email is in a spreadsheet. (The emails gets added to the spreadsheet when you accept the contributors agreement) The instructions on how to implement this is given in the comments of the CLA-verifier(https://github.com/angular/google-cla-verifier-for-github/blob/master/cla-verifier.gs). While this is for Angular I'm thinking they are using the same thing for transit as well. I've tried setting this up on a personal repo to see if it would work. But, it seems that without access to the spreadsheet with those who have signed the CLA we can't use the exact script. Someone with access to that spreadsheet would have to write and run the app script.

We already have our ICLA in a Google Spreadsheet: https://docs.google.com/forms/d/12jV-ByyN186MuPotMvxJtNKtSaGGTnEHm8rXomM2bm4/viewform

...so in theory all we need to do is set up the above script for all the OBA repos that scans the Google Spreadsheet and verifies that the user submitting the PR is listed in the "Github username" column.

barbeau commented 7 years ago

Some possible open-source solutions:

barbeau commented 7 years ago

This looks promising for DIY, I'm hosting OBA Alexa on Lambda: https://aws.amazon.com/blogs/compute/dynamic-github-actions-with-aws-lambda/

barbeau commented 7 years ago

I've set up CLA Assistant for the OBA Github organization, so I'm closing this.

More details at https://groups.google.com/forum/#!topic/onebusaway-developers/pStybDjnPJQ