@@ -258,18 +258,22 @@ func (c *serviceController) BindControllerManager(mgr ctrlrt.Manager, cfg ackcfg
258
258
}
259
259
}
260
260
261
- exporterInstalled , err := c . GetFieldExportInstalled ( mgr )
261
+ exporterInstalled := false
262
262
exporterLogger := c .log .WithName ("exporter" )
263
- if err != nil {
264
- exporterLogger .Error (err , "unable to determine if the FieldExport CRD is installed in the cluster" )
265
- } else if ! exporterInstalled {
266
- exporterLogger .Info ("FieldExport CRD not installed. The field export reconciler will not be started" )
267
- } else {
268
- rec := NewFieldExportReconcilerForFieldExport (c , exporterLogger , cfg , c .metrics , cache )
269
- if err := rec .BindControllerManager (mgr ); err != nil {
270
- return err
263
+
264
+ if cfg .EnableFieldExportReconciler {
265
+ exporterInstalled , err := c .GetFieldExportInstalled (mgr )
266
+ if err != nil {
267
+ exporterLogger .Error (err , "unable to determine if the FieldExport CRD is installed in the cluster" )
268
+ } else if ! exporterInstalled {
269
+ exporterLogger .Info ("FieldExport CRD not installed. The field export reconciler will not be started" )
270
+ } else {
271
+ rec := NewFieldExportReconcilerForFieldExport (c , exporterLogger , cfg , c .metrics , cache )
272
+ if err := rec .BindControllerManager (mgr ); err != nil {
273
+ return err
274
+ }
275
+ c .fieldExportReconciler = rec
271
276
}
272
- c .fieldExportReconciler = rec
273
277
}
274
278
275
279
// Get the list of resources to reconcile from the config
@@ -305,7 +309,7 @@ func (c *serviceController) BindControllerManager(mgr ctrlrt.Manager, cfg ackcfg
305
309
}
306
310
c .reconcilers = append (c .reconcilers , rec )
307
311
308
- if exporterInstalled {
312
+ if cfg . EnableFieldExportReconciler && exporterInstalled {
309
313
rd := rmf .ResourceDescriptor ()
310
314
feRec := NewFieldExportReconcilerForAWSResource (c , exporterLogger , cfg , c .metrics , cache , rd )
311
315
if err := feRec .BindControllerManager (mgr ); err != nil {
0 commit comments