in controllers/gerritprojectaccess/controller.go [135:163]
func (r *Reconcile) tryToReconcile(ctx context.Context, instance *gerritApi.GerritProjectAccess) error {
cl, err := helper.GetGerritClient(ctx, r.client, instance, instance.Spec.OwnerName, r.service)
if err != nil {
return errors.Wrap(err, "unable to init gerrit client")
}
if len(instance.Spec.References) > 0 && !instance.Status.Created {
if err := cl.AddAccessRights(instance.Spec.ProjectName, prepareAccessInfo(instance.Spec.References)); err != nil {
return errors.Wrap(err, "unable to add access rights")
}
} else if len(instance.Spec.References) > 0 {
if err := cl.UpdateAccessRights(instance.Spec.ProjectName, prepareAccessInfo(instance.Spec.References)); err != nil {
return errors.Wrap(err, "unable to update access rights")
}
}
if instance.Spec.Parent != "" {
if err := cl.SetProjectParent(instance.Spec.ProjectName, instance.Spec.Parent); err != nil {
return errors.Wrap(err, "unable to set project parent")
}
}
if err := helper.TryToDelete(ctx, r.client, instance, finalizerName,
r.makeDeletionFunc(cl, instance.Spec.ProjectName, instance.Spec.References)); err != nil {
return errors.Wrap(err, "error during TryToDelete")
}
return nil
}