in api/v1beta1/etcdadmcluster_webhook.go [90:129]
func (r *EtcdadmCluster) validateCommon() (allErrs field.ErrorList) {
if r.Spec.Replicas == nil {
allErrs = append(
allErrs,
field.Required(
field.NewPath("spec", "replicas"),
"is required",
),
)
} else if *r.Spec.Replicas <= 0 {
allErrs = append(
allErrs,
field.Forbidden(
field.NewPath("spec", "replicas"),
"cannot be less than or equal to 0",
),
)
} else if r.Spec.Replicas != nil && *r.Spec.Replicas%2 == 0 {
allErrs = append(
allErrs,
field.Forbidden(
field.NewPath("spec", "replicas"),
"etcd cluster cannot have an even number of nodes",
),
)
}
if r.Spec.InfrastructureTemplate.Namespace != r.Namespace {
allErrs = append(
allErrs,
field.Invalid(
field.NewPath("spec", "infrastructureTemplate", "namespace"),
r.Spec.InfrastructureTemplate.Namespace,
"must match metadata.namespace",
),
)
}
return allErrs
}