My favorites | Sign in
Project Home Downloads Wiki Issues Source
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 813: Don't try to replicate "permissions-only" project
4 people starred this issue and may be notified of changes. Back to list
Status:  Submitted
Owner:  ----
Closed:  Jun 2011


Sign in to add a comment
 
Reported by surove...@gmail.com, Jan 3, 2011
Affected Version: 2.1.6

What steps will reproduce the problem?
1. Create "permission-only" project
2. Notice replication errors in error_log, e.g.

[2011-01-02 04:17:29,096] ERROR com.google.gerrit.server.git.PushReplication : Cannot replicate test-p; repository not found: Cannot open repository test-p
May 19, 2011
Project Member #1 nas...@grainawi.org
Permissions-only projects will be required to have backing git storage as of this change: https://review.source.android.com/#change,19442

If you don't want them replicated you'll need to use an authGroup (documented in the Gerrit docs).
Status: WontFix
Jun 26, 2011
#2 jhans...@myyearbook.com
nasser:  I understand the need for git storage of permissions-only projects as of 2.2.x, but there's now a catch-22 in the permissions paradigm...  Our projects are structured roughly like:

$ gerrit-shell ls-projects --tree
|-- All-Projects
|-- Development
|   |-- Development/ProjectA
|   `-- Development/ProjectB
|-- Mobile
|   |-- Mobile/Android
and so on..

I want to ensure that all child projects under "Development/*" and "Mobile/*" have replication enabled, and the way I did that in 2.1.7 was by granting the authGroup READ access on the parent permissions-only project, such that all child projects automatically inherit the permission.

But as you point out, the permissions-only projects now require git backing, and therefore the READ access is incorrectly causing it to attempt replication ("incorrectly" in the sense that it is not my intention, was not the behavior in prior versions, and does not ordinarily make sense for a project that is for "permissions only").

However, if I fix that by applying a -1 READ ACL to deny replication, that means all child projects that don't explicitly define the permission with +1 will now stop replicating as well.  Now I have to manually configure that permission on *every* project (-1 for parents, +1 for children), just to get the same behavior that existed in 2.1.7.  Not very useful for a "permissions-only" project, is it?
Jun 27, 2011
#3 sop@google.com
https://review.source.android.com/24172 adds a new replication.config setting called replicatePermissions. When set to false, permissions-only projects and the per-project refs/meta/config branches are not replicated.
Status: Started
Jun 27, 2011
#4 jhans...@myyearbook.com
Looks great, thanks!

FWIW, the reason we have the described project name hierarchy is because replication goes to a github:fi instance, which only allows for "<user_or_organization>/<project_name>" repositories.  Because of that, and since replication.config doesn't allow mangling names in any way (to strip the "/" or something like that) we can only replicate projects named "*/*".  We're already doing full replication to a backup mirror, but the github:fi issue was causing headaches in 2.2, so this change will be helpful for that.
Jun 28, 2011
#5 sop@google.com
(No comment was entered for this change.)
Status: Submitted
Labels: FixedIn-2.2.2
Sign in to add a comment

Powered by Google Project Hosting