@@ -303,7 +303,7 @@ func (r *AppWrapperReconciler) Reconcile(ctx context.Context, req ctrl.Request)
303303 now := time .Now ()
304304 deadline := whenDetected .Add (gracePeriod )
305305 if now .Before (deadline ) {
306- return ctrl. Result { RequeueAfter : deadline .Sub (now )} , r .Status ().Update (ctx , aw )
306+ return requeueAfter ( deadline .Sub (now ), r .Status ().Update (ctx , aw ) )
307307 } else {
308308 r .Recorder .Eventf (aw , v1 .EventTypeNormal , string (workloadv1beta2 .Unhealthy ), "FoundFailedPods: %v failed pods" , podStatus .failed )
309309 return r .resetOrFail (ctx , aw , podStatus .terminalFailure , 1 )
@@ -332,7 +332,7 @@ func (r *AppWrapperReconciler) Reconcile(ctx context.Context, req ctrl.Request)
332332 Reason : "SufficientPodsReady" ,
333333 Message : fmt .Sprintf ("%v pods running; %v pods succeeded" , podStatus .running , podStatus .succeeded ),
334334 })
335- return ctrl. Result { RequeueAfter : time .Minute } , r .Status ().Update (ctx , aw )
335+ return requeueAfter ( time .Minute , r .Status ().Update (ctx , aw ) )
336336 }
337337
338338 // Not ready yet; either continue to wait or giveup if the warmup period has expired
@@ -346,7 +346,7 @@ func (r *AppWrapperReconciler) Reconcile(ctx context.Context, req ctrl.Request)
346346 graceDuration = r .admissionGraceDuration (ctx , aw )
347347 }
348348 if time .Now ().Before (whenDeployed .Add (graceDuration )) {
349- return ctrl. Result { RequeueAfter : 5 * time .Second } , r .Status ().Update (ctx , aw )
349+ return requeueAfter ( 5 * time .Second , r .Status ().Update (ctx , aw ) )
350350 } else {
351351 meta .SetStatusCondition (& aw .Status .Conditions , metav1.Condition {
352352 Type : string (workloadv1beta2 .Unhealthy ),
@@ -405,7 +405,7 @@ func (r *AppWrapperReconciler) Reconcile(ctx context.Context, req ctrl.Request)
405405 now := time .Now ()
406406 deadline := whenReset .Add (pauseDuration )
407407 if now .Before (deadline ) {
408- return ctrl. Result { RequeueAfter : deadline .Sub (now )} , r .Status ().Update (ctx , aw )
408+ return requeueAfter ( deadline .Sub (now ), r .Status ().Update (ctx , aw ) )
409409 }
410410
411411 meta .SetStatusCondition (& aw .Status .Conditions , metav1.Condition {
@@ -435,7 +435,7 @@ func (r *AppWrapperReconciler) Reconcile(ctx context.Context, req ctrl.Request)
435435 now := time .Now ()
436436 deadline := whenDelayed .Add (deletionDelay )
437437 if now .Before (deadline ) {
438- return ctrl. Result { RequeueAfter : deadline .Sub (now )} , r .Status ().Update (ctx , aw )
438+ return requeueAfter ( deadline .Sub (now ), r .Status ().Update (ctx , aw ) )
439439 }
440440 }
441441
@@ -469,7 +469,7 @@ func (r *AppWrapperReconciler) Reconcile(ctx context.Context, req ctrl.Request)
469469 now := time .Now ()
470470 deadline := whenSucceeded .Add (deletionDelay )
471471 if now .Before (deadline ) {
472- return ctrl. Result { RequeueAfter : deadline .Sub (now )} , r .Status ().Update (ctx , aw )
472+ return requeueAfter ( deadline .Sub (now ), r .Status ().Update (ctx , aw ) )
473473 }
474474
475475 if ! r .deleteComponents (ctx , aw ) {
@@ -896,3 +896,12 @@ func (r *AppWrapperReconciler) SetupWithManager(mgr ctrl.Manager) error {
896896 Named ("AppWrapper" ).
897897 Complete (r )
898898}
899+
900+ // requeueAfter requeues the request after the specified duration
901+ func requeueAfter (duration time.Duration , err error ) (ctrl.Result , error ) {
902+ if err != nil {
903+ // eliminate "Warning: Reconciler returned both a non-zero result and a non-nil error."
904+ return ctrl.Result {}, err
905+ }
906+ return ctrl.Result {RequeueAfter : duration }, nil
907+ }
0 commit comments