Skip to content

Commit b9b8ae9

Browse files
committed
fixup
Signed-off-by: wenting <wentingwu@microsoft.com>
1 parent bc73bcf commit b9b8ae9

File tree

1 file changed

+17
-5
lines changed

1 file changed

+17
-5
lines changed

operator/src/internal/controller/backup_controller.go

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,13 @@ func (r *BackupReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctr
5555
return ctrl.Result{}, nil
5656
}
5757

58-
// No further action needed for completed backups
59-
if backup.Status.IsDone() {
60-
return ctrl.Result{}, nil
58+
// If the backup is already done and not expired, requeue to check expiration
59+
if backup.Status.IsDone() && backup.Status.ExpiredAt != nil {
60+
requeueAfter := time.Until(backup.Status.ExpiredAt.Time)
61+
if requeueAfter < 0 {
62+
requeueAfter = time.Minute
63+
}
64+
return ctrl.Result{RequeueAfter: requeueAfter}, nil
6165
}
6266

6367
// Fetch the associated DocumentDB cluster
@@ -231,7 +235,11 @@ func (r *BackupReconciler) SetBackupPhaseFailed(ctx context.Context, backup *dbp
231235
}
232236

233237
r.Recorder.Event(backup, "Warning", "BackupFailed", errMessage)
234-
return ctrl.Result{}, nil
238+
requeueAfter := time.Until(backup.Status.ExpiredAt.Time)
239+
if requeueAfter < 0 {
240+
requeueAfter = time.Minute
241+
}
242+
return ctrl.Result{RequeueAfter: requeueAfter}, nil
235243
}
236244

237245
func (r *BackupReconciler) SetBackupPhaseSkipped(ctx context.Context, backup *dbpreview.Backup, errMessage string, backupConfiguration *dbpreview.BackupConfiguration) (ctrl.Result, error) {
@@ -248,7 +256,11 @@ func (r *BackupReconciler) SetBackupPhaseSkipped(ctx context.Context, backup *db
248256
}
249257

250258
r.Recorder.Event(backup, "Warning", "BackupSkipped", errMessage)
251-
return ctrl.Result{}, nil
259+
requeueAfter := time.Until(backup.Status.ExpiredAt.Time)
260+
if requeueAfter < 0 {
261+
requeueAfter = time.Minute
262+
}
263+
return ctrl.Result{RequeueAfter: requeueAfter}, nil
252264
}
253265

254266
// SetupWithManager sets up the controller with the Manager.

0 commit comments

Comments
 (0)