in controllers/scale.go [49:62]
func (r *EtcdadmClusterReconciler) removeEtcdMachine(ctx context.Context, ec *etcdv1.EtcdadmCluster, cluster *clusterv1.Cluster, machineToDelete *clusterv1.Machine, machineAddress string) error {
peerURL := fmt.Sprintf("https://%s:2380", machineAddress)
etcdClient, err := r.GetEtcdClient(ctx, cluster, ec.Status.Endpoints)
if err != nil {
return fmt.Errorf("error creating etcd client, err: %v", err)
}
if etcdClient == nil {
return fmt.Errorf("could not create etcd client")
}
defer etcdClient.Close()
return r.removeEtcdMemberAndDeleteMachine(ctx, etcdClient, peerURL, machineToDelete)
}