Skip to content

Commit b129115

Browse files
authored
Re-arrange deletion of storage encryption key (#479)
* Only remove finalizer and move up the order * Continue with reconciliation even when removal fails * Clarify logging
1 parent 47f7748 commit b129115

File tree

1 file changed

+8
-11
lines changed

1 file changed

+8
-11
lines changed

controllers/postgres_controller.go

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,13 @@ func (r *PostgresReconciler) Reconcile(ctx context.Context, req ctrl.Request) (c
153153
log.Info("corresponding NetworkPolicy deleted")
154154
}
155155

156+
if err := r.removeStorageEncryptionSecretFinalizer(ctx, instance); err != nil {
157+
log.Error(err, "error while remnoving finalizer from storage encryption secret")
158+
} else {
159+
160+
log.Info("finalizer from storage encryption secret removed")
161+
}
162+
156163
deletable, err := r.IsOperatorDeletable(ctx, namespace)
157164
if err != nil {
158165
r.recorder.Eventf(instance, "Warning", "Error", "failed to check if the operator is idle: %v", err)
@@ -174,11 +181,6 @@ func (r *PostgresReconciler) Reconcile(ctx context.Context, req ctrl.Request) (c
174181
}
175182
log.Info("corresponding passwords secret deleted")
176183

177-
if err := r.deleteStorageEncryptionSecret(ctx, instance); err != nil {
178-
return ctrl.Result{}, fmt.Errorf("error while deleting storage encryption secret: %w", err)
179-
}
180-
log.Info("storage encryption secret removed")
181-
182184
instance.RemoveFinalizer(pg.PostgresFinalizerName)
183185
if err := r.CtrlClient.Update(ctx, instance); err != nil {
184186
r.recorder.Eventf(instance, "Warning", "Self-Reconcilation", "failed to remove finalizer: %v", err)
@@ -1342,7 +1344,7 @@ func (r *PostgresReconciler) generateRandomString() (string, error) {
13421344
return string(b), nil
13431345
}
13441346

1345-
func (r *PostgresReconciler) deleteStorageEncryptionSecret(ctx context.Context, instance *pg.Postgres) error {
1347+
func (r *PostgresReconciler) removeStorageEncryptionSecretFinalizer(ctx context.Context, instance *pg.Postgres) error {
13461348

13471349
// Fetch secret
13481350
n := storageEncryptionKeyName
@@ -1361,11 +1363,6 @@ func (r *PostgresReconciler) deleteStorageEncryptionSecret(ctx context.Context,
13611363
return fmt.Errorf("error while removing finalizer from storage secret in service cluster: %w", err)
13621364
}
13631365

1364-
// Delete secret
1365-
if err := r.SvcClient.Delete(ctx, s); err != nil {
1366-
return fmt.Errorf("error while deleting storage secret in service cluster: %w", err)
1367-
}
1368-
13691366
return nil
13701367
}
13711368

0 commit comments

Comments
 (0)