Browse Source

fix: do not swallow errors when create or update fails (#2693)

Signed-off-by: Moritz Johner <beller.moritz@googlemail.com>
Moritz Johner 2 years ago
parent
commit
b78ce75218
1 changed files with 5 additions and 4 deletions
  1. 5 4
      pkg/controllers/externalsecret/externalsecret_controller.go

+ 5 - 4
pkg/controllers/externalsecret/externalsecret_controller.go

@@ -296,7 +296,8 @@ func (r *Reconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Resu
 		log.V(1).Info("secret creation skipped due to creationPolicy=None")
 		log.V(1).Info("secret creation skipped due to creationPolicy=None")
 		err = nil
 		err = nil
 	default:
 	default:
-		created, err := createOrUpdate(ctx, r.Client, secret, mutationFunc, externalSecret.Name)
+		var created bool
+		created, err = createOrUpdate(ctx, r.Client, secret, mutationFunc, externalSecret.Name)
 		if err == nil {
 		if err == nil {
 			externalSecret.Status.Binding = v1.LocalObjectReference{Name: secret.Name}
 			externalSecret.Status.Binding = v1.LocalObjectReference{Name: secret.Name}
 		}
 		}
@@ -305,12 +306,12 @@ func (r *Reconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Resu
 			delErr := deleteOrphanedSecrets(ctx, r.Client, &externalSecret)
 			delErr := deleteOrphanedSecrets(ctx, r.Client, &externalSecret)
 			if delErr != nil {
 			if delErr != nil {
 				msg := fmt.Sprintf("failed to clean up orphaned secrets: %v", delErr)
 				msg := fmt.Sprintf("failed to clean up orphaned secrets: %v", delErr)
-				log.Error(err, msg)
-				r.recorder.Event(&externalSecret, v1.EventTypeWarning, esv1beta1.ReasonUpdateFailed, err.Error())
+				log.Error(delErr, msg)
+				r.recorder.Event(&externalSecret, v1.EventTypeWarning, esv1beta1.ReasonUpdateFailed, delErr.Error())
 				conditionSynced := NewExternalSecretCondition(esv1beta1.ExternalSecretReady, v1.ConditionFalse, esv1beta1.ConditionReasonSecretSyncedError, msg)
 				conditionSynced := NewExternalSecretCondition(esv1beta1.ExternalSecretReady, v1.ConditionFalse, esv1beta1.ConditionReasonSecretSyncedError, msg)
 				SetExternalSecretCondition(&externalSecret, *conditionSynced)
 				SetExternalSecretCondition(&externalSecret, *conditionSynced)
 				syncCallsError.With(resourceLabels).Inc()
 				syncCallsError.With(resourceLabels).Inc()
-				return ctrl.Result{}, err
+				return ctrl.Result{}, delErr
 			}
 			}
 		}
 		}
 	}
 	}