From 0d7c125ec1e0714827e57bc2653585005b3e4a5f Mon Sep 17 00:00:00 2001 From: bfabricio Date: Tue, 17 Dec 2024 10:05:24 -0300 Subject: [PATCH] PTEUDO-2177: verify active db before secret creation --- pkg/databaseclaim/secrets.go | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/pkg/databaseclaim/secrets.go b/pkg/databaseclaim/secrets.go index f8fa706..4e0b8aa 100644 --- a/pkg/databaseclaim/secrets.go +++ b/pkg/databaseclaim/secrets.go @@ -45,6 +45,10 @@ func (r *DatabaseClaimReconciler) createOrUpdateSecret(ctx context.Context, dbCl Name: secretName, }, gs) + if dbClaim.Status.ActiveDB.ConnectionInfo == nil && err == nil { + return fmt.Errorf("secret %s already exists in namespace %s, but no active database connection info is available", secretName, dbClaim.Namespace) + } + if err != nil && errors.IsNotFound(err) { if err := r.createSecret(ctx, dbClaim, dsn, dsnURI, replicaDsnURI, connInfo); err != nil { return err @@ -59,14 +63,6 @@ func (r *DatabaseClaimReconciler) createSecret(ctx context.Context, dbClaim *v1. logr := log.FromContext(ctx) secretName := dbClaim.Spec.SecretName - if dbClaim.Status.ActiveDB.ConnectionInfo == nil { - existingSecret := &corev1.Secret{} - err := r.Client.Get(ctx, client.ObjectKey{Namespace: dbClaim.Namespace, Name: secretName}, existingSecret) - if err == nil { - return fmt.Errorf("secret %s already exists in namespace %s, but no active database connection info is available", secretName, dbClaim.Namespace) - } - } - secret := &corev1.Secret{ ObjectMeta: metav1.ObjectMeta{ Namespace: dbClaim.Namespace,