fix: the problem of conflicting controller output logs caused by duplicate initialization of roles and workspace roles when the controller is started (#2139)

Signed-off-by: peng wu <2030047311@qq.com>
Signed-off-by: hongming <coder.scala@gmail.com>
(cherry picked from commit 3d40b1905d)
This commit is contained in:
hongming
2024-12-26 15:45:34 +08:00
parent c998029cd6
commit 114f5a6e79
3 changed files with 16 additions and 21 deletions

View File

@@ -115,6 +115,12 @@ func (r *Reconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Resu
// The object is not being deleted, so if it does not have our finalizer,
// then lets add the finalizer and update the object.
if !controllerutil.ContainsFinalizer(workspaceTemplate, constants.CascadingDeletionFinalizer) {
if err := r.initWorkspaceRoles(ctx, workspaceTemplate); err != nil {
return ctrl.Result{}, err
}
if err := r.initManagerRoleBinding(ctx, workspaceTemplate); err != nil {
return ctrl.Result{}, err
}
updated := workspaceTemplate.DeepCopy()
// Remove legacy finalizer
controllerutil.RemoveFinalizer(updated, "finalizers.workspacetemplate.kubesphere.io")
@@ -140,12 +146,6 @@ func (r *Reconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Resu
return ctrl.Result{}, nil
}
if err := r.initWorkspaceRoles(ctx, workspaceTemplate); err != nil {
return ctrl.Result{}, err
}
if err := r.initManagerRoleBinding(ctx, workspaceTemplate); err != nil {
return ctrl.Result{}, err
}
if err := r.multiClusterSync(ctx, workspaceTemplate); err != nil {
return ctrl.Result{}, err
}