From 877d9f701af228c8c457fbb546206148a5356b89 Mon Sep 17 00:00:00 2001 From: babugeet Date: Thu, 20 Jun 2024 16:41:18 +0530 Subject: [PATCH] =?UTF-8?q?Added=20Error=20message=20when=20reconciling=20?= =?UTF-8?q?loop=20is=20triggered=20more=20than=20once=20Signed-off-by:=20?= =?UTF-8?q?=E2=80=9Cbabugeet=20=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../metal3.io/baremetalhost_controller.go | 13 +++++---- .../bmceventsubscription_controller.go | 28 +++++++++++-------- 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/controllers/metal3.io/baremetalhost_controller.go b/controllers/metal3.io/baremetalhost_controller.go index 47ac08cfaf..66c0f3153d 100644 --- a/controllers/metal3.io/baremetalhost_controller.go +++ b/controllers/metal3.io/baremetalhost_controller.go @@ -212,12 +212,15 @@ func (r *BareMetalHostReconciler) Reconcile(ctx context.Context, request ctrl.Re } ready, err := prov.TryInit() - if err != nil { - return ctrl.Result{}, errors.Wrap(err, "failed to check services availability") - } - if !ready { + if err != nil || !ready { + var msg string + if err == nil { + msg = "Not ready" + } else { + msg = err.Error() + } provisionerNotReady.Inc() - reqLogger.Info("provisioner is not ready", "RequeueAfter:", provisionerNotReadyRetryDelay) + reqLogger.Info("provisioner is not ready", "Error", msg, "RequeueAfter:", provisionerNotReadyRetryDelay) return ctrl.Result{Requeue: true, RequeueAfter: provisionerNotReadyRetryDelay}, nil } diff --git a/controllers/metal3.io/bmceventsubscription_controller.go b/controllers/metal3.io/bmceventsubscription_controller.go index 994cc56ddd..d19fe0f2d2 100644 --- a/controllers/metal3.io/bmceventsubscription_controller.go +++ b/controllers/metal3.io/bmceventsubscription_controller.go @@ -100,12 +100,14 @@ func (r *BMCEventSubscriptionReconciler) Reconcile(ctx context.Context, request prov, ready, err := r.getProvisioner(ctx, request, host) - if err != nil { - return ctrl.Result{}, errors.Wrap(err, "failed to create provisioner") - } - - if !ready { - reqLogger.Info("provisioner is not ready", "RequeueAfter:", provisionerNotReadyRetryDelay) + if err != nil || !ready { + var msg string + if err == nil { + msg = "Not ready" + } else { + msg = err.Error() + } + reqLogger.Info("provisioner is not ready", "Error", msg, "RequeueAfter:", provisionerNotReadyRetryDelay) return ctrl.Result{RequeueAfter: provisionerNotReadyRetryDelay}, nil } @@ -220,12 +222,14 @@ func (r *BMCEventSubscriptionReconciler) getProvisioner(ctx context.Context, req } ready, err = prov.TryInit() - if err != nil { - return prov, ready, errors.Wrap(err, "failed to check services availability") - } - - if !ready { - reqLogger.Info("provisioner is not ready", "RequeueAfter:", provisionerNotReadyRetryDelay) + if err != nil || !ready { + var msg string + if err == nil { + msg = "Not ready" + } else { + msg = err.Error() + } + reqLogger.Info("provisioner is not ready", "Error", msg, "RequeueAfter:", provisionerNotReadyRetryDelay) return prov, ready, nil }