Ticket #2481 (closed task: fixed)
Fedora switching from the CLA to FPCA
|Reported by:||toshio||Owned by:||toshio, ricky|
|Cc:||spot, smooge, skvidal, lmacken, mmcgrath||Blocked By:|
We're switching from the present CLA to a new text, the FPCA:
We want to achieve this switchover by F15 which means that we need to do a bit of coding work and a whole lot of record keeping and nag mails.
All the contributors who have signed the CLA will need to sign the new FPCA. The desire is to give people about a month's window to log into FAS and click to sign the FPCA before we would have to show that they are no longer in cla_done and therefore no longer able to be in most other groups (packager, sysadmin, etc.)
Decisions to make
- How easy are we going to make it for people to recover their groups/files/etc if they don't sign cla_fpca in time? Once we know this, we need a plan for how to enable that.
- Look for all files owned by any user on any of our actual systems so that we can chase those people down to get them signed EARLY so there is no risk of files suddenly lacking an owner if they lapse on cla_done.
- test file paths on fedorapeople.org so there's no risk there of people's files (or repos.fp.o paths) evaporating in odd ways
- check cron jobs for the above, too
- grep through puppet for occurrences of cla_fedora. These will need to be replaced with cla_fpca when we upgrade fas
- grep through puppet for occurrences of cla_done. These will need to be checked for potential problems when we start moving people out of cla_done.
- Change FAS code to register people for cla_fpca (the naming isn't great but I bet we have places where the wildcard cla_* is assumed) instead of cla_fedora
- Change fas to display the text of the fpca instead of the cla
- Roll this changed fas out to staging and test that:
- New signups get the fpca text and get added to both cla_fpca and cla_done
- Existing users with cla_fedora get prompted to sign the fpca when they login
- Existing users with cla_fedora are able to sign the fpca and get added to cla_fpca
- Make sure that changes to enable this make it into puppet
- write an sql query to remove people from cla_done if they are in cla_fedora and nothing else.
Chances are if there's other scripts that use cla_fedora they should either be ported to cla_fpca or cla_done and it should be pretty easy to tell which.
Pulling the trigger
- Send email to everyone in cla_fedora to sign the fpca and when their cla_done membership will end.
- Send a special email to everyone that we've determined will lose some sort of rights should they not be in cla_done (people with files on fedorapeople, people in groups requiring cla_done, etc). All told, this is several thousand messages.
- After two week, send reminder mail to people left. After this, send weekly reminders.
- After a month, rename the cla_fedora group (in case people are wildcarding it as noted above) and remove from cla_done anyone that isn't in other cla_* groups
Note that removal from cla_done will trigger some cascading effects -- removing people from packager, for instance. So this final step will likely cause a certain amount of chaos. I'm certain that it will leave koji, pkgdb, fedorapeople.org, etc with contributors who are no longer eligible to be there and we'll need to go through and fix those.
We'll need to decide how much information from these we want to keep (backed up or otherwise made easy to restore) and how much we just want to get rid of. Backing up things that are in the databases won't be easy but may be necessary.