From 7e6ca5e84fe802bca380a6d85886ed2f13ea503f Mon Sep 17 00:00:00 2001 From: David Pursehouse Date: Wed, 17 Feb 2016 18:09:17 +0900 Subject: [PATCH] CreateProject: Explicitly set parent to All-Projects when not specified When the parent is not specified, and the project's other settings are all default, no project.config file is created on refs/meta/config. This prevents metadata updates from working as expected when they result in a file being removed. Explicitly set the parent to All-Projects when not specified, so that a project.config file gets created on refs/meta/config. Bug: Issue 3919 Change-Id: I4c0a11253413ff0b6a75e87429949be90a15aa95 --- .../gerrit/server/project/CreateProject.java | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/project/CreateProject.java b/gerrit-server/src/main/java/com/google/gerrit/server/project/CreateProject.java index b0ac201b98..964235dbf4 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/project/CreateProject.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/project/CreateProject.java @@ -35,6 +35,7 @@ import com.google.gerrit.extensions.restapi.UnprocessableEntityException; import com.google.gerrit.reviewdb.client.AccountGroup; import com.google.gerrit.reviewdb.client.Project; import com.google.gerrit.server.CurrentUser; +import com.google.gerrit.server.config.AllProjectsName; import com.google.gerrit.server.git.ProjectConfig; import com.google.gerrit.server.group.GroupsCollection; import com.google.gerrit.server.validators.ProjectCreationValidationListener; @@ -62,15 +63,19 @@ public class CreateProject implements RestModifyView currentUser; private final Provider putConfig; + private final AllProjectsName allProjects; private final String name; @Inject CreateProject(PerformCreateProject.Factory performCreateProjectFactory, Provider projectsCollection, - Provider groupsCollection, ProjectJson json, + Provider groupsCollection, + ProjectJson json, DynamicSet projectCreationValidationListeners, ProjectControl.GenericFactory projectControlFactory, - Provider currentUser, Provider putConfig, + Provider currentUser, + Provider putConfig, + AllProjectsName allProjects, @Assisted String name) { this.createProjectFactory = performCreateProjectFactory; this.projectsCollection = projectsCollection; @@ -80,6 +85,7 @@ public class CreateProject implements RestModifyView