in controllers/etcdadmconfig_controller.go [83:106]
func (r *EtcdadmConfigReconciler) SetupWithManager(ctx context.Context, mgr ctrl.Manager) error {
if r.EtcdadmInitLock == nil {
r.EtcdadmInitLock = locking.NewEtcdadmInitMutex(ctrl.LoggerFrom(ctx).WithName("etcd-init-locker"), mgr.GetClient())
}
err := ctrl.NewControllerManagedBy(mgr).
For(&etcdbootstrapv1.EtcdadmConfig{}).
WithEventFilter(predicates.ResourceNotPaused(r.Log)).
Watches(
&clusterv1.Machine{},
handler.EnqueueRequestsFromMapFunc(r.MachineToBootstrapMapFunc),
).
Watches(
&clusterv1.Cluster{},
handler.EnqueueRequestsFromMapFunc(r.ClusterToEtcdadmConfigs),
builder.WithPredicates(predicates.ClusterUnpausedAndInfrastructureReady(r.Log)),
).Complete(r)
if err != nil {
return errors.Wrap(err, "failed setting up with a controller manager")
}
return nil
}