@@ -25,7 +25,6 @@ import (
2525 "k8s.io/apimachinery/pkg/runtime/schema"
2626 ctrl "sigs.k8s.io/controller-runtime"
2727 "sigs.k8s.io/controller-runtime/pkg/client"
28- "sigs.k8s.io/controller-runtime/pkg/controller"
2928 "sigs.k8s.io/controller-runtime/pkg/event"
3029 "sigs.k8s.io/controller-runtime/pkg/handler"
3130 "sigs.k8s.io/controller-runtime/pkg/predicate"
@@ -119,25 +118,18 @@ func (r *DevWorkspacePrunerReconciler) SetupWithManager(mgr ctrl.Manager) error
119118 GenericFunc : func (e event.GenericEvent ) bool { return false },
120119 }
121120
122- maxConcurrentReconciles , err := config .GetMaxConcurrentReconciles ()
123- if err != nil {
124- return err
125- }
126-
127121 // Initialize cron scheduler
128122 r .cron = cron .New ()
129123
130124 return ctrl .NewControllerManagedBy (mgr ).
131- WithOptions (controller.Options {MaxConcurrentReconciles : maxConcurrentReconciles }).
132125 Named ("DevWorkspacePruner" ).
133126 Watches (& source.Kind {Type : & controllerv1alpha1.DevWorkspaceOperatorConfig {}},
134127 handler .EnqueueRequestsFromMapFunc (func (object client.Object ) []ctrl.Request {
135- objectNamespace := object .GetNamespace ()
136128 operatorNamespace , err := infrastructure .GetNamespace ()
137129
138130 // Ignore events from other namespaces
139- if err != nil || objectNamespace != operatorNamespace {
140- log .Info ("Received event from different namespace, ignoring" , "namespace" , objectNamespace )
131+ if err != nil || object . GetNamespace () != operatorNamespace || object . GetName () != config . OperatorConfigName {
132+ log .Info ("Received event from different namespace, ignoring" , "namespace" , object . GetNamespace () )
141133 return []ctrl.Request {}
142134 }
143135
@@ -328,9 +320,6 @@ func filterByInactivityTime(objs []client.Object, retainTime time.Duration, log
328320
329321 if canPrune (* devWorkspace , retainTime , log ) {
330322 filteredObjs = append (filteredObjs , devWorkspace )
331- log .Info (fmt .Sprintf ("Adding DevWorkspace '%s/%s' to prune list" , devWorkspace .Namespace , devWorkspace .Name ))
332- } else {
333- log .Info (fmt .Sprintf ("Skipping DevWorkspace '%s/%s': not eligible for pruning" , devWorkspace .Namespace , devWorkspace .Name ))
334323 }
335324 }
336325 return filteredObjs
@@ -354,8 +343,10 @@ func canPrune(dw dwv2.DevWorkspace, retainTime time.Duration, log logr.Logger) b
354343 return false
355344 }
356345 if time .Since (startTime .Time ) <= retainTime {
357- log .Info (fmt .Sprintf ("Skipping DevWorkspace '%s/%s': not eligible for pruning " , dw .Namespace , dw .Name ))
346+ log .Info (fmt .Sprintf ("Skipping DevWorkspace '%s/%s': last transition time is within retain time " , dw .Namespace , dw .Name ))
358347 return false
359348 }
349+
350+ log .Info (fmt .Sprintf ("DevWorkspace '%s/%s' is eligible for pruning" , dw .Namespace , dw .Name ))
360351 return true
361352}
0 commit comments