# Functions
AnyConfigFileAndDefaultsToInternal reads either a InitConfiguration or JoinConfiguration and unmarshals it.
BytesToInternalConfig converts a byte slice to an internal, defaulted and validated configuration object.
ConfigFileAndDefaultsToInternalConfig takes a path to a config file and a versioned configuration that can serve as the default config If cfgPath is specified, defaultversionedcfg will always get overridden.
DetectUnsupportedVersion reads YAML bytes, extracts the TypeMeta information and errors out with an user-friendly message if the API spec is too old for this kubeadm version.
FetchConfigFromFileOrCluster fetches configuration required for upgrading your cluster from a file (which has precedence) or a ConfigMap in the cluster.
LowercaseSANs can be used to force all SANs to be lowercase so it passes IsDNS1123Subdomain.
MarshalInitConfigurationToBytes marshals the internal InitConfiguration object to bytes.
MarshalKubeadmConfigObject marshals an Object registered in the kubeadm scheme.
NodeConfigFileAndDefaultsToInternalConfig.
NormalizeKubernetesVersion resolves version labels, sets alternative image registry if requested for CI builds, and validates minimal version that kubeadm SetInitDynamicDefaultssupports.
SetInitDynamicDefaults checks and sets configuration values for the InitConfiguration object.
SetJoinDynamicDefaults checks and sets configuration values for the JoinConfiguration object.