@@ -35,9 +35,13 @@ import (
3535 "k8s.io/klog/v2"
3636 clusterv1 "sigs.k8s.io/cluster-api/api/v1beta1"
3737 ctrl "sigs.k8s.io/controller-runtime"
38- "sigs.k8s.io/controller-runtime/pkg/client"
38+ cache "sigs.k8s.io/controller-runtime/pkg/cache"
39+ client "sigs.k8s.io/controller-runtime/pkg/client"
3940 "sigs.k8s.io/controller-runtime/pkg/client/config"
4041 "sigs.k8s.io/controller-runtime/pkg/controller"
42+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
43+ "sigs.k8s.io/controller-runtime/pkg/webhook"
44+ webhookserver "sigs.k8s.io/controller-runtime/pkg/webhook"
4145
4246 infrav1alpha5 "sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha5"
4347 infrav1alpha6 "sigs.k8s.io/cluster-api-provider-openstack/api/v1alpha6"
@@ -181,21 +185,31 @@ func main() {
181185 }
182186
183187 mgr , err := ctrl .NewManager (cfg , ctrl.Options {
184- Scheme : scheme ,
185- MetricsBindAddress : metricsBindAddr ,
186- LeaderElection : enableLeaderElection ,
187- LeaderElectionID : "controller-leader-election-capo" ,
188- LeaseDuration : & leaderElectionLeaseDuration ,
189- RenewDeadline : & leaderElectionRenewDeadline ,
190- RetryPeriod : & leaderElectionRetryPeriod ,
191- Namespace : watchNamespace ,
192- SyncPeriod : & syncPeriod ,
193- ClientDisableCacheFor : []client.Object {
194- & corev1.ConfigMap {},
195- & corev1.Secret {},
188+ Scheme : scheme ,
189+ Metrics : metricsserver.Options {BindAddress : metricsBindAddr },
190+ LeaderElection : enableLeaderElection ,
191+ LeaderElectionID : "controller-leader-election-capo" ,
192+ LeaseDuration : & leaderElectionLeaseDuration ,
193+ RenewDeadline : & leaderElectionRenewDeadline ,
194+ RetryPeriod : & leaderElectionRetryPeriod ,
195+ Cache : cache.Options {
196+ DefaultNamespaces : map [string ]cache.Config {watchNamespace : {}},
197+ SyncPeriod : & syncPeriod ,
196198 },
197- Port : webhookPort ,
198- CertDir : webhookCertDir ,
199+ Client : client.Options {
200+ Cache : & client.CacheOptions {
201+ DisableFor : []client.Object {
202+ & corev1.ConfigMap {},
203+ & corev1.Secret {},
204+ },
205+ },
206+ },
207+ WebhookServer : webhook .NewServer (
208+ webhookserver.Options {
209+ Port : webhookPort ,
210+ CertDir : webhookCertDir ,
211+ },
212+ ),
199213 HealthProbeBindAddress : healthAddr ,
200214 })
201215 if err != nil {
0 commit comments