@@ -155,8 +155,7 @@ func (r *NUMAResourcesOperatorReconciler) Reconcile(ctx context.Context, req ctr
155155 }
156156
157157 if req .Name != objectnames .DefaultNUMAResourcesOperatorCrName {
158- err := fmt .Errorf ("incorrect NUMAResourcesOperator resource name: %s" , instance .Name )
159- return r .degradeStatus (ctx , initialInstance , instance , status .ConditionTypeIncorrectNUMAResourcesOperatorResourceName , err )
158+ return r .degradeStatusf (ctx , initialInstance , instance , status .ConditionTypeIncorrectNUMAResourcesOperatorResourceName , "incorrect NUMAResourcesOperator resource name: %s" , instance .Name )
160159 }
161160
162161 if annotations .IsPauseReconciliationEnabled (instance .Annotations ) {
@@ -198,19 +197,28 @@ func (r *NUMAResourcesOperatorReconciler) Reconcile(ctx context.Context, req ctr
198197 return step .Result , step .Error
199198}
200199
200+ func (r * NUMAResourcesOperatorReconciler ) degradeStatusf (ctx context.Context , initialInstance , instance * nropv1.NUMAResourcesOperator , reason string , format string , args ... any ) (ctrl.Result , error ) {
201+ return r .degradeStatusWithInfo (ctx , initialInstance , instance , conditioninfo.ConditionInfo {
202+ Type : status .ConditionDegraded ,
203+ Message : fmt .Sprintf (format , args ... ),
204+ Reason : reason ,
205+ })
206+ }
207+
201208func (r * NUMAResourcesOperatorReconciler ) degradeStatus (ctx context.Context , initialInstance , instance * nropv1.NUMAResourcesOperator , reason string , stErr error ) (ctrl.Result , error ) {
202- info := conditioninfo .DegradedFromError (stErr )
203- if reason != "" { // intentionally overwrite
204- info .Reason = reason
205- }
209+ return r .degradeStatusWithInfo (ctx , initialInstance , instance , conditioninfo.ConditionInfo {
210+ Type : status .ConditionDegraded ,
211+ Message : status .MessageFromError (stErr ),
212+ Reason : reason ,
213+ })
214+ }
206215
216+ func (r * NUMAResourcesOperatorReconciler ) degradeStatusWithInfo (ctx context.Context , initialInstance , instance * nropv1.NUMAResourcesOperator , info conditioninfo.ConditionInfo ) (ctrl.Result , error ) {
207217 instance .Status .Conditions , _ = status .ComputeConditions (instance .Status .Conditions , info .ToMetav1Condition (instance .Generation ), time .Now ())
208-
209218 err := r .Client .Status ().Patch (ctx , instance , client .MergeFrom (initialInstance ))
210219 if err != nil {
211220 klog .InfoS ("Failed to update numaresourcesoperator status" , "error" , err )
212221 }
213-
214222 return ctrl.Result {}, err
215223}
216224
0 commit comments