Only create All-Projects ACL once
If refs/meta/config already exists do not overwrite or update it
with default configuration. This protects site administrators who
run `java -war gerrit.war init -d /some/existing/site --batch` and
corrupt ACLs of a live server with default settings.
To really set the default ACLs on an existing site the admin
should remove the refs/meta/config branch so it can be created.
Change-Id: I44a21b0c162812747ebcd50535709e8330dfbef8
diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/schema/AllProjectsCreator.java b/gerrit-server/src/main/java/com/google/gerrit/server/schema/AllProjectsCreator.java
index 1d8c126..df49a01 100644
--- a/gerrit-server/src/main/java/com/google/gerrit/server/schema/AllProjectsCreator.java
+++ b/gerrit-server/src/main/java/com/google/gerrit/server/schema/AllProjectsCreator.java
@@ -170,7 +170,7 @@
grant(config, meta, Permission.PUSH, admin, owners);
grant(config, meta, Permission.SUBMIT, admin, owners);
- config.commit(md);
+ config.commitToNewRef(md, RefNames.REFS_CONFIG);
}
private void grant(ProjectConfig config, AccessSection section,