@@ -13,6 +13,7 @@ import (
13
13
"k8s.io/client-go/rest"
14
14
"k8s.io/client-go/tools/record"
15
15
ctrl "sigs.k8s.io/controller-runtime"
16
+ "sigs.k8s.io/controller-runtime/pkg/builder"
16
17
"sigs.k8s.io/controller-runtime/pkg/client"
17
18
"sigs.k8s.io/controller-runtime/pkg/handler"
18
19
"sigs.k8s.io/controller-runtime/pkg/log"
@@ -69,12 +70,8 @@ func (r *Reconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Resu
69
70
r .Log .Error (err , "unexpected Get error" )
70
71
return ctrl.Result {RequeueAfter : DefaultRequeueDelay }, err
71
72
}
72
- result , err := r .Sync (ctx , resource )
73
- if err != nil {
74
- r .Log .Error (err , "unexpected Sync error" )
75
- }
76
73
77
- return result , err
74
+ return r . Sync ( ctx , resource )
78
75
}
79
76
80
77
// Create FieldIndexer to usage for List requests in Reconcile
@@ -152,23 +149,31 @@ func (r *Reconciler) SetupWithManager(mgr ctrl.Manager) error {
152
149
}
153
150
154
151
return controller .
155
- For (& v1alpha1.Database {}).
156
- Owns (& v1alpha1.RemoteDatabaseNodeSet {}).
157
- Owns (& v1alpha1.DatabaseNodeSet {}).
158
- Owns (& appsv1.StatefulSet {}).
159
- Owns (& corev1.ConfigMap {}).
160
- Owns (& corev1.Service {}).
152
+ For (& v1alpha1.Database {},
153
+ builder .WithPredicates (predicate.GenerationChangedPredicate {}),
154
+ ).
155
+ Owns (& v1alpha1.RemoteDatabaseNodeSet {},
156
+ builder .WithPredicates (resources .LastAppliedAnnotationPredicate ()), // TODO: YDBOPS-9194
157
+ ).
158
+ Owns (& v1alpha1.DatabaseNodeSet {},
159
+ builder .WithPredicates (resources .LastAppliedAnnotationPredicate ()), // TODO: YDBOPS-9194
160
+ ).
161
+ Owns (& appsv1.StatefulSet {},
162
+ builder .WithPredicates (predicate.GenerationChangedPredicate {}),
163
+ ).
164
+ Owns (& corev1.ConfigMap {},
165
+ builder .WithPredicates (predicate.ResourceVersionChangedPredicate {}),
166
+ ).
167
+ Owns (& corev1.Service {},
168
+ builder .WithPredicates (predicate.ResourceVersionChangedPredicate {}),
169
+ ).
161
170
Watches (
162
171
& source.Kind {Type : & corev1.Secret {}},
163
172
handler .EnqueueRequestsFromMapFunc (r .findDatabasesForSecret ),
173
+ builder .WithPredicates (predicate.ResourceVersionChangedPredicate {}),
164
174
).
165
- WithEventFilter (predicate .Or (
166
- predicate.GenerationChangedPredicate {},
167
- resources .LastAppliedAnnotationPredicate (),
168
- resources .IsServicePredicate (),
169
- resources .IsSecretPredicate (),
170
- )).
171
- WithEventFilter (resources .IgnoreDeletetionPredicate ()).
175
+ WithEventFilter (resources .IsDatabaseCreatePredicate ()).
176
+ WithEventFilter (resources .IgnoreDeleteStateUnknownPredicate ()).
172
177
Complete (r )
173
178
}
174
179
0 commit comments