Issue 2377: upgrade script does not fully upgrade the contributor agreement.
Status:  Invalid
Owner: ----
Closed:  Jan 2014
Project Member Reported by zaro0508, Jan 2, 2014
Affected Version: 2.8

What steps will reproduce the problem?
We upgraded from gerrit 2.4 (using mysql 5.5) to gerrit 2.8 and noticed that users can no longer accept contributor agreements.  

What is the expected output? What do you see instead?
I expect to be able to signup and accept the contributor agreement without error.  When attempting to accept a contributor agreement I get a message that says.. "The page you requested was not found, or you do not have permission to view this page."  No errors were reported to the gerrit logs.

It looks like the configurations for contributor agreement was stored in the db in gerrit 2.4 but has since moved to All-Projects project.config in gerrit 2.8.  I believe the problem is that the upgrade script is not re-configuring this change completely.  It looks during the upgrade, creation of previously unneeded group for ICLA signers was incomplete.   A new "CLA Accepted - ICLA" group is added to project.config and listed in the groups file with an accompanying UUID, but no corresponding row was inserted into the account_groups db table.  

New 'contributor-agreement' entries in project.config:

[contributor-agreement "ICLA"]
        description = OpenStack Individual Contributor License Agreement
        requireContactInformation = true
        agreementUrl = static/cla.html
        autoVerify = group CLA Accepted - ICLA
        accepted = group CLA Accepted - ICLA
[contributor-agreement "System CLA"]
        description = DON'T SIGN THIS: System CLA (externally managed)
        agreementUrl = static/system-cla.html
        accepted = group System CLA
[contributor-agreement "USG CLA"]
        description = OpenStack U.S. Government Contributor License Agreement
        agreementUrl = https://wiki.openstack.org/wiki/GovernmentCLA
        accepted = group USG CLA


groups in All-Project groups file:
# UUID                                          Group Name
#
b7abed8b01593d6bd08ea3df84d72cd346ff8ceb        System CLA
a221da27a2bc5a2fe71660f29a43ad3e71fd5ea0        CLA Accepted - ICLA
cafbbabddd27a4da2c23e24ea5ac7c892ab81e49        USG CLA
a21dfa51cc6a9a1e5bf6f056ef17e4ef57a96685        Administrators
global:Anonymous-Users                          Anonymous Users
global:Project-Owners                           Project Owners
global:Registered-Users                         Registered Users

After the upgrade all of the above groups were added to the database except for "CLA Accepted - ICLA"
Jan 2, 2014
Project Member #1 zaro0508
I was able to accept the contributor agreements without error after I manually added the 'CLA Accepted - ICLA' group to the account_groups table in the mysql database.  
Jan 10, 2014
Project Member #2 David.Os...@gmail.com
Please provide exact steps how to reproduce it.

This change that unreduced it: [1]. It was released in Gerrit 2.5.
If you try to upgrade from 2.4.2 to 2.5 does it work correct?

[1] https://gerrit-review.googlesource.com/34730
Status: AwaitingInformation
Jan 10, 2014
Project Member #3 zaro0508
Sorry but I think I prematurely entered this bug.  It's probably not a bug against upstream at all.  I forgot that I was upgrading from a forked version of openstack gerrit 2.4.2 build (http://git.openstack.org/cgit/openstack-infra/gerrit/log/?h=openstack/2.4.2).  We backported the change you referenced above and probably a few more so we could get managed CLA to work in 2.4.    We also made entries to the DB to get it working (http://git.openstack.org/cgit/openstack-infra/config/tree/modules/openstack_project/manifests/gerrit.pp#n349). 
Jan 10, 2014
Project Member #4 David.Os...@gmail.com
n. p.
Status: Invalid