in controllers/helpers.go [134:157]
func (r *EtcdadmClusterReconciler) generateMachine(ctx context.Context, ec *etcdv1.EtcdadmCluster, cluster *clusterv1.Cluster, infraRef, bootstrapRef *corev1.ObjectReference, failureDomain *string) error {
machine := &clusterv1.Machine{
ObjectMeta: metav1.ObjectMeta{
Name: names.SimpleNameGenerator.GenerateName(ec.Name + "-"),
Namespace: ec.Namespace,
Labels: EtcdLabelsForCluster(cluster.Name, ec.Name),
OwnerReferences: []metav1.OwnerReference{
*metav1.NewControllerRef(ec, etcdv1.GroupVersion.WithKind("EtcdadmCluster")),
},
},
Spec: clusterv1.MachineSpec{
ClusterName: cluster.Name,
InfrastructureRef: *infraRef,
Bootstrap: clusterv1.Bootstrap{
ConfigRef: bootstrapRef,
},
FailureDomain: failureDomain,
},
}
if err := r.Client.Create(ctx, machine); err != nil {
return errors.Wrap(err, "failed to create machine")
}
return nil
}