in controllers/gerritproject/syncer.go [119:146]
func (r *Reconcile) createGerritProject(ctx context.Context, gr *gerritApi.Gerrit,
backendProject *gerritClient.Project,
) (*gerritApi.GerritProject, error) {
prj := gerritApi.GerritProject{
ObjectMeta: metaV1.ObjectMeta{
Name: strings.ToLower(fmt.Sprintf("%s-%s", gr.Name, backendProject.SlugifyName())),
Namespace: gr.Namespace,
},
Spec: gerritApi.GerritProjectSpec{
Name: backendProject.Name,
Parent: backendProject.Parent,
Description: backendProject.Description,
SubmitType: backendProject.SubmitType,
Owners: backendProject.Owners,
RejectEmptyCommit: backendProject.RejectEmptyCommit,
PermissionsOnly: backendProject.PermissionsOnly,
CreateEmptyCommit: backendProject.CreateEmptyCommit,
Branches: backendProject.Branches,
OwnerName: gr.Name,
},
}
if err := r.client.Create(ctx, &prj); err != nil {
return nil, errors.Wrap(err, "unable to create gerrit project")
}
return &prj, nil
}