Documentation

Overview

    +k8s:conversion-gen=sigs.k8s.io/cluster-api/api/v1alpha3

    Package v1alpha2 contains API Schema definitions for the cluster v1alpha2 API group +kubebuilder:object:generate=true +groupName=cluster.x-k8s.io

    Index

    Constants

    View Source
    const (
    	// ClusterPhasePending is the first state a Cluster is assigned by
    	// Cluster API Cluster controller after being created.
    	ClusterPhasePending = ClusterPhase("pending")
    
    	// ClusterPhaseProvisioning is the state when the Cluster has a provider infrastructure
    	// object associated and can start provisioning.
    	ClusterPhaseProvisioning = ClusterPhase("provisioning")
    
    	// ClusterPhaseProvisioned is the state when its
    	// infrastructure has been created and configured.
    	ClusterPhaseProvisioned = ClusterPhase("provisioned")
    
    	// ClusterPhaseDeleting is the Cluster state when a delete
    	// request has been sent to the API Server,
    	// but its infrastructure has not yet been fully deleted.
    	ClusterPhaseDeleting = ClusterPhase("deleting")
    
    	// ClusterPhaseFailed is the Cluster state when the system
    	// might require user intervention.
    	ClusterPhaseFailed = ClusterPhase("failed")
    
    	// ClusterPhaseUnknown is returned if the Cluster state cannot be determined.
    	ClusterPhaseUnknown = ClusterPhase("")
    )
    View Source
    const (
    	// MachinePhasePending is the first state a Machine is assigned by
    	// Cluster API Machine controller after being created.
    	MachinePhasePending = MachinePhase("pending")
    
    	// MachinePhaseProvisioning is the state when the
    	// Machine infrastructure is being created.
    	MachinePhaseProvisioning = MachinePhase("provisioning")
    
    	// MachinePhaseProvisioned is the state when its
    	// infrastructure has been created and configured.
    	MachinePhaseProvisioned = MachinePhase("provisioned")
    
    	// MachinePhaseRunning is the Machine state when it has
    	// become a Kubernetes Node in a Ready state.
    	MachinePhaseRunning = MachinePhase("running")
    
    	// MachinePhaseDeleting is the Machine state when a delete
    	// request has been sent to the API Server,
    	// but its infrastructure has not yet been fully deleted.
    	MachinePhaseDeleting = MachinePhase("deleting")
    
    	// MachinePhaseDeleted is the Machine state when the object
    	// and the related infrastructure is deleted and
    	// ready to be garbage collected by the API Server.
    	MachinePhaseDeleted = MachinePhase("deleted")
    
    	// MachinePhaseFailed is the Machine state when the system
    	// might require user intervention.
    	MachinePhaseFailed = MachinePhase("failed")
    
    	// MachinePhaseUnknown is returned if the Machine state cannot be determined.
    	MachinePhaseUnknown = MachinePhase("")
    )
    View Source
    const (
    	// MachineFinalizer is set on PrepareForCreate callback.
    	MachineFinalizer = "machine.cluster.x-k8s.io"
    
    	// MachineClusterLabelName is the label set on machines linked to a cluster.
    	MachineClusterLabelName = "cluster.x-k8s.io/cluster-name"
    
    	// MachineControlPlaneLabelName is the label set on machines part of a control plane.
    	MachineControlPlaneLabelName = "cluster.x-k8s.io/control-plane"
    
    	// ExcludeNodeDrainingAnnotation annotation explicitly skips node draining if set
    	ExcludeNodeDrainingAnnotation = "machine.cluster.x-k8s.io.io/exclude-node-draining"
    )
    View Source
    const (
    	// Replace the old MachineSet by new one using rolling update
    	// i.e. gradually scale down the old MachineSet and scale up the new one.
    	RollingUpdateMachineDeploymentStrategyType MachineDeploymentStrategyType = "RollingUpdate"
    
    	// RevisionAnnotation is the revision annotation of a machine deployment's machine sets which records its rollout sequence
    	RevisionAnnotation = "machinedeployment.clusters.k8s.io/revision"
    	// RevisionHistoryAnnotation maintains the history of all old revisions that a machine set has served for a machine deployment.
    	RevisionHistoryAnnotation = "machinedeployment.clusters.k8s.io/revision-history"
    	// DesiredReplicasAnnotation is the desired replicas for a machine deployment recorded as an annotation
    	// in its machine sets. Helps in separating scaling events from the rollout process and for
    	// determining if the new machine set for a deployment is really saturated.
    	DesiredReplicasAnnotation = "machinedeployment.clusters.k8s.io/desired-replicas"
    	// MaxReplicasAnnotation is the maximum replicas a deployment can have at a given point, which
    	// is machinedeployment.spec.replicas + maxSurge. Used by the underlying machine sets to estimate their
    	// proportions in case the deployment has surge replicas.
    	MaxReplicasAnnotation = "machinedeployment.clusters.k8s.io/max-replicas"
    )
    View Source
    const (
    	ClusterFinalizer = "cluster.cluster.x-k8s.io"
    )

    Variables

    View Source
    var (
    	// GroupVersion is group version used to register these objects
    	GroupVersion = schema.GroupVersion{Group: "cluster.x-k8s.io", Version: "v1alpha2"}
    
    	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
    	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}
    
    	// AddToScheme adds the types in this group-version to the given scheme.
    	AddToScheme = SchemeBuilder.AddToScheme
    )

    Functions

    func Convert_v1alpha2_APIEndpoint_To_v1alpha3_APIEndpoint

    func Convert_v1alpha2_APIEndpoint_To_v1alpha3_APIEndpoint(in *APIEndpoint, out *v1alpha3.APIEndpoint, s conversion.Scope) error

      Convert_v1alpha2_APIEndpoint_To_v1alpha3_APIEndpoint is an autogenerated conversion function.

      func Convert_v1alpha2_Bootstrap_To_v1alpha3_Bootstrap

      func Convert_v1alpha2_Bootstrap_To_v1alpha3_Bootstrap(in *Bootstrap, out *v1alpha3.Bootstrap, s conversion.Scope) error

        Convert_v1alpha2_Bootstrap_To_v1alpha3_Bootstrap is an autogenerated conversion function.

        func Convert_v1alpha2_ClusterList_To_v1alpha3_ClusterList

        func Convert_v1alpha2_ClusterList_To_v1alpha3_ClusterList(in *ClusterList, out *v1alpha3.ClusterList, s conversion.Scope) error

          Convert_v1alpha2_ClusterList_To_v1alpha3_ClusterList is an autogenerated conversion function.

          func Convert_v1alpha2_ClusterNetwork_To_v1alpha3_ClusterNetwork

          func Convert_v1alpha2_ClusterNetwork_To_v1alpha3_ClusterNetwork(in *ClusterNetwork, out *v1alpha3.ClusterNetwork, s conversion.Scope) error

            Convert_v1alpha2_ClusterNetwork_To_v1alpha3_ClusterNetwork is an autogenerated conversion function.

            func Convert_v1alpha2_ClusterSpec_To_v1alpha3_ClusterSpec

            func Convert_v1alpha2_ClusterSpec_To_v1alpha3_ClusterSpec(in *ClusterSpec, out *v1alpha3.ClusterSpec, s apiconversion.Scope) error

            func Convert_v1alpha2_ClusterStatus_To_v1alpha3_ClusterStatus

            func Convert_v1alpha2_ClusterStatus_To_v1alpha3_ClusterStatus(in *ClusterStatus, out *v1alpha3.ClusterStatus, s apiconversion.Scope) error

            func Convert_v1alpha2_Cluster_To_v1alpha3_Cluster

            func Convert_v1alpha2_Cluster_To_v1alpha3_Cluster(in *Cluster, out *v1alpha3.Cluster, s conversion.Scope) error

              Convert_v1alpha2_Cluster_To_v1alpha3_Cluster is an autogenerated conversion function.

              func Convert_v1alpha2_MachineAddress_To_v1alpha3_MachineAddress

              func Convert_v1alpha2_MachineAddress_To_v1alpha3_MachineAddress(in *MachineAddress, out *v1alpha3.MachineAddress, s conversion.Scope) error

                Convert_v1alpha2_MachineAddress_To_v1alpha3_MachineAddress is an autogenerated conversion function.

                func Convert_v1alpha2_MachineDeploymentList_To_v1alpha3_MachineDeploymentList

                func Convert_v1alpha2_MachineDeploymentList_To_v1alpha3_MachineDeploymentList(in *MachineDeploymentList, out *v1alpha3.MachineDeploymentList, s conversion.Scope) error

                  Convert_v1alpha2_MachineDeploymentList_To_v1alpha3_MachineDeploymentList is an autogenerated conversion function.

                  func Convert_v1alpha2_MachineDeploymentSpec_To_v1alpha3_MachineDeploymentSpec

                  func Convert_v1alpha2_MachineDeploymentSpec_To_v1alpha3_MachineDeploymentSpec(in *MachineDeploymentSpec, out *v1alpha3.MachineDeploymentSpec, s conversion.Scope) error

                    Convert_v1alpha2_MachineDeploymentSpec_To_v1alpha3_MachineDeploymentSpec is an autogenerated conversion function.

                    func Convert_v1alpha2_MachineDeploymentStatus_To_v1alpha3_MachineDeploymentStatus

                    func Convert_v1alpha2_MachineDeploymentStatus_To_v1alpha3_MachineDeploymentStatus(in *MachineDeploymentStatus, out *v1alpha3.MachineDeploymentStatus, s conversion.Scope) error

                      Convert_v1alpha2_MachineDeploymentStatus_To_v1alpha3_MachineDeploymentStatus is an autogenerated conversion function.

                      func Convert_v1alpha2_MachineDeploymentStrategy_To_v1alpha3_MachineDeploymentStrategy

                      func Convert_v1alpha2_MachineDeploymentStrategy_To_v1alpha3_MachineDeploymentStrategy(in *MachineDeploymentStrategy, out *v1alpha3.MachineDeploymentStrategy, s conversion.Scope) error

                        Convert_v1alpha2_MachineDeploymentStrategy_To_v1alpha3_MachineDeploymentStrategy is an autogenerated conversion function.

                        func Convert_v1alpha2_MachineDeployment_To_v1alpha3_MachineDeployment

                        func Convert_v1alpha2_MachineDeployment_To_v1alpha3_MachineDeployment(in *MachineDeployment, out *v1alpha3.MachineDeployment, s conversion.Scope) error

                          Convert_v1alpha2_MachineDeployment_To_v1alpha3_MachineDeployment is an autogenerated conversion function.

                          func Convert_v1alpha2_MachineList_To_v1alpha3_MachineList

                          func Convert_v1alpha2_MachineList_To_v1alpha3_MachineList(in *MachineList, out *v1alpha3.MachineList, s conversion.Scope) error

                            Convert_v1alpha2_MachineList_To_v1alpha3_MachineList is an autogenerated conversion function.

                            func Convert_v1alpha2_MachineRollingUpdateDeployment_To_v1alpha3_MachineRollingUpdateDeployment

                            func Convert_v1alpha2_MachineRollingUpdateDeployment_To_v1alpha3_MachineRollingUpdateDeployment(in *MachineRollingUpdateDeployment, out *v1alpha3.MachineRollingUpdateDeployment, s conversion.Scope) error

                              Convert_v1alpha2_MachineRollingUpdateDeployment_To_v1alpha3_MachineRollingUpdateDeployment is an autogenerated conversion function.

                              func Convert_v1alpha2_MachineSetList_To_v1alpha3_MachineSetList

                              func Convert_v1alpha2_MachineSetList_To_v1alpha3_MachineSetList(in *MachineSetList, out *v1alpha3.MachineSetList, s conversion.Scope) error

                                Convert_v1alpha2_MachineSetList_To_v1alpha3_MachineSetList is an autogenerated conversion function.

                                func Convert_v1alpha2_MachineSetSpec_To_v1alpha3_MachineSetSpec

                                func Convert_v1alpha2_MachineSetSpec_To_v1alpha3_MachineSetSpec(in *MachineSetSpec, out *v1alpha3.MachineSetSpec, s conversion.Scope) error

                                  Convert_v1alpha2_MachineSetSpec_To_v1alpha3_MachineSetSpec is an autogenerated conversion function.

                                  func Convert_v1alpha2_MachineSetStatus_To_v1alpha3_MachineSetStatus

                                  func Convert_v1alpha2_MachineSetStatus_To_v1alpha3_MachineSetStatus(in *MachineSetStatus, out *v1alpha3.MachineSetStatus, s apiconversion.Scope) error

                                  func Convert_v1alpha2_MachineSet_To_v1alpha3_MachineSet

                                  func Convert_v1alpha2_MachineSet_To_v1alpha3_MachineSet(in *MachineSet, out *v1alpha3.MachineSet, s conversion.Scope) error

                                    Convert_v1alpha2_MachineSet_To_v1alpha3_MachineSet is an autogenerated conversion function.

                                    func Convert_v1alpha2_MachineSpec_To_v1alpha3_MachineSpec

                                    func Convert_v1alpha2_MachineSpec_To_v1alpha3_MachineSpec(in *MachineSpec, out *v1alpha3.MachineSpec, s apiconversion.Scope) error

                                    func Convert_v1alpha2_MachineStatus_To_v1alpha3_MachineStatus

                                    func Convert_v1alpha2_MachineStatus_To_v1alpha3_MachineStatus(in *MachineStatus, out *v1alpha3.MachineStatus, s apiconversion.Scope) error

                                    func Convert_v1alpha2_MachineTemplateSpec_To_v1alpha3_MachineTemplateSpec

                                    func Convert_v1alpha2_MachineTemplateSpec_To_v1alpha3_MachineTemplateSpec(in *MachineTemplateSpec, out *v1alpha3.MachineTemplateSpec, s conversion.Scope) error

                                      Convert_v1alpha2_MachineTemplateSpec_To_v1alpha3_MachineTemplateSpec is an autogenerated conversion function.

                                      func Convert_v1alpha2_Machine_To_v1alpha3_Machine

                                      func Convert_v1alpha2_Machine_To_v1alpha3_Machine(in *Machine, out *v1alpha3.Machine, s conversion.Scope) error

                                        Convert_v1alpha2_Machine_To_v1alpha3_Machine is an autogenerated conversion function.

                                        func Convert_v1alpha2_NetworkRanges_To_v1alpha3_NetworkRanges

                                        func Convert_v1alpha2_NetworkRanges_To_v1alpha3_NetworkRanges(in *NetworkRanges, out *v1alpha3.NetworkRanges, s conversion.Scope) error

                                          Convert_v1alpha2_NetworkRanges_To_v1alpha3_NetworkRanges is an autogenerated conversion function.

                                          func Convert_v1alpha2_ObjectMeta_To_v1alpha3_ObjectMeta

                                          func Convert_v1alpha2_ObjectMeta_To_v1alpha3_ObjectMeta(in *ObjectMeta, out *v1alpha3.ObjectMeta, s conversion.Scope) error

                                            Convert_v1alpha2_ObjectMeta_To_v1alpha3_ObjectMeta is an autogenerated conversion function.

                                            func Convert_v1alpha3_APIEndpoint_To_v1alpha2_APIEndpoint

                                            func Convert_v1alpha3_APIEndpoint_To_v1alpha2_APIEndpoint(in *v1alpha3.APIEndpoint, out *APIEndpoint, s conversion.Scope) error

                                              Convert_v1alpha3_APIEndpoint_To_v1alpha2_APIEndpoint is an autogenerated conversion function.

                                              func Convert_v1alpha3_Bootstrap_To_v1alpha2_Bootstrap

                                              func Convert_v1alpha3_Bootstrap_To_v1alpha2_Bootstrap(in *v1alpha3.Bootstrap, out *Bootstrap, s apiconversion.Scope) error

                                              func Convert_v1alpha3_ClusterList_To_v1alpha2_ClusterList

                                              func Convert_v1alpha3_ClusterList_To_v1alpha2_ClusterList(in *v1alpha3.ClusterList, out *ClusterList, s conversion.Scope) error

                                                Convert_v1alpha3_ClusterList_To_v1alpha2_ClusterList is an autogenerated conversion function.

                                                func Convert_v1alpha3_ClusterNetwork_To_v1alpha2_ClusterNetwork

                                                func Convert_v1alpha3_ClusterNetwork_To_v1alpha2_ClusterNetwork(in *v1alpha3.ClusterNetwork, out *ClusterNetwork, s conversion.Scope) error

                                                  Convert_v1alpha3_ClusterNetwork_To_v1alpha2_ClusterNetwork is an autogenerated conversion function.

                                                  func Convert_v1alpha3_ClusterSpec_To_v1alpha2_ClusterSpec

                                                  func Convert_v1alpha3_ClusterSpec_To_v1alpha2_ClusterSpec(in *v1alpha3.ClusterSpec, out *ClusterSpec, s apiconversion.Scope) error

                                                  func Convert_v1alpha3_ClusterStatus_To_v1alpha2_ClusterStatus

                                                  func Convert_v1alpha3_ClusterStatus_To_v1alpha2_ClusterStatus(in *v1alpha3.ClusterStatus, out *ClusterStatus, s apiconversion.Scope) error

                                                  func Convert_v1alpha3_Cluster_To_v1alpha2_Cluster

                                                  func Convert_v1alpha3_Cluster_To_v1alpha2_Cluster(in *v1alpha3.Cluster, out *Cluster, s conversion.Scope) error

                                                    Convert_v1alpha3_Cluster_To_v1alpha2_Cluster is an autogenerated conversion function.

                                                    func Convert_v1alpha3_MachineAddress_To_v1alpha2_MachineAddress

                                                    func Convert_v1alpha3_MachineAddress_To_v1alpha2_MachineAddress(in *v1alpha3.MachineAddress, out *MachineAddress, s conversion.Scope) error

                                                      Convert_v1alpha3_MachineAddress_To_v1alpha2_MachineAddress is an autogenerated conversion function.

                                                      func Convert_v1alpha3_MachineDeploymentList_To_v1alpha2_MachineDeploymentList

                                                      func Convert_v1alpha3_MachineDeploymentList_To_v1alpha2_MachineDeploymentList(in *v1alpha3.MachineDeploymentList, out *MachineDeploymentList, s conversion.Scope) error

                                                        Convert_v1alpha3_MachineDeploymentList_To_v1alpha2_MachineDeploymentList is an autogenerated conversion function.

                                                        func Convert_v1alpha3_MachineDeploymentSpec_To_v1alpha2_MachineDeploymentSpec

                                                        func Convert_v1alpha3_MachineDeploymentSpec_To_v1alpha2_MachineDeploymentSpec(in *v1alpha3.MachineDeploymentSpec, out *MachineDeploymentSpec, s apiconversion.Scope) error

                                                        func Convert_v1alpha3_MachineDeploymentStatus_To_v1alpha2_MachineDeploymentStatus

                                                        func Convert_v1alpha3_MachineDeploymentStatus_To_v1alpha2_MachineDeploymentStatus(in *v1alpha3.MachineDeploymentStatus, out *MachineDeploymentStatus, s apiconversion.Scope) error

                                                        func Convert_v1alpha3_MachineDeploymentStrategy_To_v1alpha2_MachineDeploymentStrategy

                                                        func Convert_v1alpha3_MachineDeploymentStrategy_To_v1alpha2_MachineDeploymentStrategy(in *v1alpha3.MachineDeploymentStrategy, out *MachineDeploymentStrategy, s conversion.Scope) error

                                                          Convert_v1alpha3_MachineDeploymentStrategy_To_v1alpha2_MachineDeploymentStrategy is an autogenerated conversion function.

                                                          func Convert_v1alpha3_MachineDeployment_To_v1alpha2_MachineDeployment

                                                          func Convert_v1alpha3_MachineDeployment_To_v1alpha2_MachineDeployment(in *v1alpha3.MachineDeployment, out *MachineDeployment, s conversion.Scope) error

                                                            Convert_v1alpha3_MachineDeployment_To_v1alpha2_MachineDeployment is an autogenerated conversion function.

                                                            func Convert_v1alpha3_MachineList_To_v1alpha2_MachineList

                                                            func Convert_v1alpha3_MachineList_To_v1alpha2_MachineList(in *v1alpha3.MachineList, out *MachineList, s conversion.Scope) error

                                                              Convert_v1alpha3_MachineList_To_v1alpha2_MachineList is an autogenerated conversion function.

                                                              func Convert_v1alpha3_MachineRollingUpdateDeployment_To_v1alpha2_MachineRollingUpdateDeployment

                                                              func Convert_v1alpha3_MachineRollingUpdateDeployment_To_v1alpha2_MachineRollingUpdateDeployment(in *v1alpha3.MachineRollingUpdateDeployment, out *MachineRollingUpdateDeployment, s conversion.Scope) error

                                                                Convert_v1alpha3_MachineRollingUpdateDeployment_To_v1alpha2_MachineRollingUpdateDeployment is an autogenerated conversion function.

                                                                func Convert_v1alpha3_MachineSetList_To_v1alpha2_MachineSetList

                                                                func Convert_v1alpha3_MachineSetList_To_v1alpha2_MachineSetList(in *v1alpha3.MachineSetList, out *MachineSetList, s conversion.Scope) error

                                                                  Convert_v1alpha3_MachineSetList_To_v1alpha2_MachineSetList is an autogenerated conversion function.

                                                                  func Convert_v1alpha3_MachineSetSpec_To_v1alpha2_MachineSetSpec

                                                                  func Convert_v1alpha3_MachineSetSpec_To_v1alpha2_MachineSetSpec(in *v1alpha3.MachineSetSpec, out *MachineSetSpec, s apiconversion.Scope) error

                                                                  func Convert_v1alpha3_MachineSetStatus_To_v1alpha2_MachineSetStatus

                                                                  func Convert_v1alpha3_MachineSetStatus_To_v1alpha2_MachineSetStatus(in *v1alpha3.MachineSetStatus, out *MachineSetStatus, s apiconversion.Scope) error

                                                                  func Convert_v1alpha3_MachineSet_To_v1alpha2_MachineSet

                                                                  func Convert_v1alpha3_MachineSet_To_v1alpha2_MachineSet(in *v1alpha3.MachineSet, out *MachineSet, s conversion.Scope) error

                                                                    Convert_v1alpha3_MachineSet_To_v1alpha2_MachineSet is an autogenerated conversion function.

                                                                    func Convert_v1alpha3_MachineSpec_To_v1alpha2_MachineSpec

                                                                    func Convert_v1alpha3_MachineSpec_To_v1alpha2_MachineSpec(in *v1alpha3.MachineSpec, out *MachineSpec, s apiconversion.Scope) error

                                                                    func Convert_v1alpha3_MachineStatus_To_v1alpha2_MachineStatus

                                                                    func Convert_v1alpha3_MachineStatus_To_v1alpha2_MachineStatus(in *v1alpha3.MachineStatus, out *MachineStatus, s apiconversion.Scope) error

                                                                    func Convert_v1alpha3_MachineTemplateSpec_To_v1alpha2_MachineTemplateSpec

                                                                    func Convert_v1alpha3_MachineTemplateSpec_To_v1alpha2_MachineTemplateSpec(in *v1alpha3.MachineTemplateSpec, out *MachineTemplateSpec, s conversion.Scope) error

                                                                      Convert_v1alpha3_MachineTemplateSpec_To_v1alpha2_MachineTemplateSpec is an autogenerated conversion function.

                                                                      func Convert_v1alpha3_Machine_To_v1alpha2_Machine

                                                                      func Convert_v1alpha3_Machine_To_v1alpha2_Machine(in *v1alpha3.Machine, out *Machine, s conversion.Scope) error

                                                                        Convert_v1alpha3_Machine_To_v1alpha2_Machine is an autogenerated conversion function.

                                                                        func Convert_v1alpha3_NetworkRanges_To_v1alpha2_NetworkRanges

                                                                        func Convert_v1alpha3_NetworkRanges_To_v1alpha2_NetworkRanges(in *v1alpha3.NetworkRanges, out *NetworkRanges, s conversion.Scope) error

                                                                          Convert_v1alpha3_NetworkRanges_To_v1alpha2_NetworkRanges is an autogenerated conversion function.

                                                                          func Convert_v1alpha3_ObjectMeta_To_v1alpha2_ObjectMeta

                                                                          func Convert_v1alpha3_ObjectMeta_To_v1alpha2_ObjectMeta(in *v1alpha3.ObjectMeta, out *ObjectMeta, s conversion.Scope) error

                                                                            Convert_v1alpha3_ObjectMeta_To_v1alpha2_ObjectMeta is an autogenerated conversion function.

                                                                            func PopulateDefaultsMachineDeployment

                                                                            func PopulateDefaultsMachineDeployment(d *MachineDeployment)

                                                                              PopulateDefaultsMachineDeployment fills in default field values Currently it is called after reading objects, but it could be called in an admission webhook also

                                                                              func RegisterConversions

                                                                              func RegisterConversions(s *runtime.Scheme) error

                                                                                RegisterConversions adds conversion functions to the given scheme. Public to allow building arbitrary schemes.

                                                                                Types

                                                                                type APIEndpoint

                                                                                type APIEndpoint struct {
                                                                                	// The hostname on which the API server is serving.
                                                                                	Host string `json:"host"`
                                                                                
                                                                                	// The port on which the API server is serving.
                                                                                	Port int `json:"port"`
                                                                                }

                                                                                  APIEndpoint represents a reachable Kubernetes API endpoint.

                                                                                  func (*APIEndpoint) DeepCopy

                                                                                  func (in *APIEndpoint) DeepCopy() *APIEndpoint

                                                                                    DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIEndpoint.

                                                                                    func (*APIEndpoint) DeepCopyInto

                                                                                    func (in *APIEndpoint) DeepCopyInto(out *APIEndpoint)

                                                                                      DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                      type Bootstrap

                                                                                      type Bootstrap struct {
                                                                                      	// ConfigRef is a reference to a bootstrap provider-specific resource
                                                                                      	// that holds configuration details. The reference is optional to
                                                                                      	// allow users/operators to specify Bootstrap.Data without
                                                                                      	// the need of a controller.
                                                                                      	// +optional
                                                                                      	ConfigRef *corev1.ObjectReference `json:"configRef,omitempty"`
                                                                                      
                                                                                      	// Data contains the bootstrap data, such as cloud-init details scripts.
                                                                                      	// If nil, the Machine should remain in the Pending state.
                                                                                      	// +optional
                                                                                      	Data *string `json:"data,omitempty"`
                                                                                      }

                                                                                        Bootstrap capsulates fields to configure the Machine’s bootstrapping mechanism.

                                                                                        func (*Bootstrap) DeepCopy

                                                                                        func (in *Bootstrap) DeepCopy() *Bootstrap

                                                                                          DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Bootstrap.

                                                                                          func (*Bootstrap) DeepCopyInto

                                                                                          func (in *Bootstrap) DeepCopyInto(out *Bootstrap)

                                                                                            DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                            type Cluster

                                                                                            type Cluster struct {
                                                                                            	metav1.TypeMeta   `json:",inline"`
                                                                                            	metav1.ObjectMeta `json:"metadata,omitempty"`
                                                                                            
                                                                                            	Spec   ClusterSpec   `json:"spec,omitempty"`
                                                                                            	Status ClusterStatus `json:"status,omitempty"`
                                                                                            }

                                                                                              Cluster is the Schema for the clusters API

                                                                                              func (*Cluster) ConvertFrom

                                                                                              func (dst *Cluster) ConvertFrom(srcRaw conversion.Hub) error

                                                                                              func (*Cluster) ConvertTo

                                                                                              func (src *Cluster) ConvertTo(dstRaw conversion.Hub) error

                                                                                              func (*Cluster) DeepCopy

                                                                                              func (in *Cluster) DeepCopy() *Cluster

                                                                                                DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.

                                                                                                func (*Cluster) DeepCopyInto

                                                                                                func (in *Cluster) DeepCopyInto(out *Cluster)

                                                                                                  DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                  func (*Cluster) DeepCopyObject

                                                                                                  func (in *Cluster) DeepCopyObject() runtime.Object

                                                                                                    DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

                                                                                                    func (*Cluster) SetupWebhookWithManager

                                                                                                    func (r *Cluster) SetupWebhookWithManager(mgr ctrl.Manager) error

                                                                                                    type ClusterList

                                                                                                    type ClusterList struct {
                                                                                                    	metav1.TypeMeta `json:",inline"`
                                                                                                    	metav1.ListMeta `json:"metadata,omitempty"`
                                                                                                    	Items           []Cluster `json:"items"`
                                                                                                    }

                                                                                                      ClusterList contains a list of Cluster

                                                                                                      func (*ClusterList) ConvertFrom

                                                                                                      func (dst *ClusterList) ConvertFrom(srcRaw conversion.Hub) error

                                                                                                      func (*ClusterList) ConvertTo

                                                                                                      func (src *ClusterList) ConvertTo(dstRaw conversion.Hub) error

                                                                                                      func (*ClusterList) DeepCopy

                                                                                                      func (in *ClusterList) DeepCopy() *ClusterList

                                                                                                        DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.

                                                                                                        func (*ClusterList) DeepCopyInto

                                                                                                        func (in *ClusterList) DeepCopyInto(out *ClusterList)

                                                                                                          DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                          func (*ClusterList) DeepCopyObject

                                                                                                          func (in *ClusterList) DeepCopyObject() runtime.Object

                                                                                                            DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

                                                                                                            func (*ClusterList) SetupWebhookWithManager

                                                                                                            func (r *ClusterList) SetupWebhookWithManager(mgr ctrl.Manager) error

                                                                                                            type ClusterNetwork

                                                                                                            type ClusterNetwork struct {
                                                                                                            	// APIServerPort specifies the port the API Server should bind to.
                                                                                                            	// Defaults to 6443.
                                                                                                            	// +optional
                                                                                                            	APIServerPort *int32 `json:"apiServerPort,omitempty"`
                                                                                                            
                                                                                                            	// The network ranges from which service VIPs are allocated.
                                                                                                            	// +optional
                                                                                                            	Services *NetworkRanges `json:"services,omitempty"`
                                                                                                            
                                                                                                            	// The network ranges from which Pod networks are allocated.
                                                                                                            	// +optional
                                                                                                            	Pods *NetworkRanges `json:"pods,omitempty"`
                                                                                                            
                                                                                                            	// Domain name for services.
                                                                                                            	// +optional
                                                                                                            	ServiceDomain string `json:"serviceDomain,omitempty"`
                                                                                                            }

                                                                                                              ClusterNetwork specifies the different networking parameters for a cluster.

                                                                                                              func (*ClusterNetwork) DeepCopy

                                                                                                              func (in *ClusterNetwork) DeepCopy() *ClusterNetwork

                                                                                                                DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterNetwork.

                                                                                                                func (*ClusterNetwork) DeepCopyInto

                                                                                                                func (in *ClusterNetwork) DeepCopyInto(out *ClusterNetwork)

                                                                                                                  DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                  type ClusterPhase

                                                                                                                  type ClusterPhase string

                                                                                                                    ClusterPhase is a string representation of a Cluster Phase.

                                                                                                                    This type is a high-level indicator of the status of the Cluster as it is provisioned, from the API user’s perspective.

                                                                                                                    The value should not be interpreted by any software components as a reliable indication of the actual state of the Cluster, and controllers should not use the Cluster Phase field value when making decisions about what action to take.

                                                                                                                    Controllers should always look at the actual state of the Cluster’s fields to make those decisions.

                                                                                                                    type ClusterSpec

                                                                                                                    type ClusterSpec struct {
                                                                                                                    	// Cluster network configuration
                                                                                                                    	// +optional
                                                                                                                    	ClusterNetwork *ClusterNetwork `json:"clusterNetwork,omitempty"`
                                                                                                                    
                                                                                                                    	// InfrastructureRef is a reference to a provider-specific resource that holds the details
                                                                                                                    	// for provisioning infrastructure for a cluster in said provider.
                                                                                                                    	// +optional
                                                                                                                    	InfrastructureRef *corev1.ObjectReference `json:"infrastructureRef,omitempty"`
                                                                                                                    }

                                                                                                                      ClusterSpec defines the desired state of Cluster

                                                                                                                      func (*ClusterSpec) DeepCopy

                                                                                                                      func (in *ClusterSpec) DeepCopy() *ClusterSpec

                                                                                                                        DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.

                                                                                                                        func (*ClusterSpec) DeepCopyInto

                                                                                                                        func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

                                                                                                                          DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                          type ClusterStatus

                                                                                                                          type ClusterStatus struct {
                                                                                                                          	// APIEndpoints represents the endpoints to communicate with the control plane.
                                                                                                                          	// +optional
                                                                                                                          	APIEndpoints []APIEndpoint `json:"apiEndpoints,omitempty"`
                                                                                                                          
                                                                                                                          	// ErrorReason indicates that there is a problem reconciling the
                                                                                                                          	// state, and will be set to a token value suitable for
                                                                                                                          	// programmatic interpretation.
                                                                                                                          	// +optional
                                                                                                                          	ErrorReason *capierrors.ClusterStatusError `json:"errorReason,omitempty"`
                                                                                                                          
                                                                                                                          	// ErrorMessage indicates that there is a problem reconciling the
                                                                                                                          	// state, and will be set to a descriptive error message.
                                                                                                                          	// +optional
                                                                                                                          	ErrorMessage *string `json:"errorMessage,omitempty"`
                                                                                                                          
                                                                                                                          	// Phase represents the current phase of cluster actuation.
                                                                                                                          	// E.g. Pending, Running, Terminating, Failed etc.
                                                                                                                          	// +optional
                                                                                                                          	Phase string `json:"phase,omitempty"`
                                                                                                                          
                                                                                                                          	// InfrastructureReady is the state of the infrastructure provider.
                                                                                                                          	// +optional
                                                                                                                          	InfrastructureReady bool `json:"infrastructureReady"`
                                                                                                                          
                                                                                                                          	// ControlPlaneInitialized defines if the control plane has been initialized.
                                                                                                                          	// +optional
                                                                                                                          	ControlPlaneInitialized bool `json:"controlPlaneInitialized"`
                                                                                                                          }

                                                                                                                            ClusterStatus defines the observed state of Cluster

                                                                                                                            func (*ClusterStatus) DeepCopy

                                                                                                                            func (in *ClusterStatus) DeepCopy() *ClusterStatus

                                                                                                                              DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.

                                                                                                                              func (*ClusterStatus) DeepCopyInto

                                                                                                                              func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)

                                                                                                                                DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                func (*ClusterStatus) GetTypedPhase

                                                                                                                                func (c *ClusterStatus) GetTypedPhase() ClusterPhase

                                                                                                                                  GetTypedPhase attempts to parse the Phase field and return the typed ClusterPhase representation as described in `machine_phase_types.go`.

                                                                                                                                  func (*ClusterStatus) SetTypedPhase

                                                                                                                                  func (c *ClusterStatus) SetTypedPhase(p ClusterPhase)

                                                                                                                                    SetTypedPhase sets the Phase field to the string representation of ClusterPhase.

                                                                                                                                    type Machine

                                                                                                                                    type Machine struct {
                                                                                                                                    	metav1.TypeMeta   `json:",inline"`
                                                                                                                                    	metav1.ObjectMeta `json:"metadata,omitempty"`
                                                                                                                                    
                                                                                                                                    	Spec   MachineSpec   `json:"spec,omitempty"`
                                                                                                                                    	Status MachineStatus `json:"status,omitempty"`
                                                                                                                                    }

                                                                                                                                      Machine is the Schema for the machines API

                                                                                                                                      func (*Machine) ConvertFrom

                                                                                                                                      func (dst *Machine) ConvertFrom(srcRaw conversion.Hub) error

                                                                                                                                      func (*Machine) ConvertTo

                                                                                                                                      func (src *Machine) ConvertTo(dstRaw conversion.Hub) error

                                                                                                                                      func (*Machine) DeepCopy

                                                                                                                                      func (in *Machine) DeepCopy() *Machine

                                                                                                                                        DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Machine.

                                                                                                                                        func (*Machine) DeepCopyInto

                                                                                                                                        func (in *Machine) DeepCopyInto(out *Machine)

                                                                                                                                          DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                          func (*Machine) DeepCopyObject

                                                                                                                                          func (in *Machine) DeepCopyObject() runtime.Object

                                                                                                                                            DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

                                                                                                                                            func (*Machine) SetupWebhookWithManager

                                                                                                                                            func (r *Machine) SetupWebhookWithManager(mgr ctrl.Manager) error

                                                                                                                                            type MachineAddress

                                                                                                                                            type MachineAddress struct {
                                                                                                                                            	// Machine address type, one of Hostname, ExternalIP or InternalIP.
                                                                                                                                            	Type MachineAddressType `json:"type"`
                                                                                                                                            
                                                                                                                                            	// The machine address.
                                                                                                                                            	Address string `json:"address"`
                                                                                                                                            }

                                                                                                                                              MachineAddress contains information for the node's address.

                                                                                                                                              func (*MachineAddress) DeepCopy

                                                                                                                                              func (in *MachineAddress) DeepCopy() *MachineAddress

                                                                                                                                                DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineAddress.

                                                                                                                                                func (*MachineAddress) DeepCopyInto

                                                                                                                                                func (in *MachineAddress) DeepCopyInto(out *MachineAddress)

                                                                                                                                                  DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                  type MachineAddressType

                                                                                                                                                  type MachineAddressType string

                                                                                                                                                    MachineAddressType describes a valid MachineAddress type.

                                                                                                                                                    const (
                                                                                                                                                    	MachineHostName    MachineAddressType = "Hostname"
                                                                                                                                                    	MachineExternalIP  MachineAddressType = "ExternalIP"
                                                                                                                                                    	MachineInternalIP  MachineAddressType = "InternalIP"
                                                                                                                                                    	MachineExternalDNS MachineAddressType = "ExternalDNS"
                                                                                                                                                    	MachineInternalDNS MachineAddressType = "InternalDNS"
                                                                                                                                                    )

                                                                                                                                                    type MachineAddresses

                                                                                                                                                    type MachineAddresses []MachineAddress

                                                                                                                                                      MachineAddresses is a slice of MachineAddress items to be used by infrastructure providers.

                                                                                                                                                      func (MachineAddresses) DeepCopy

                                                                                                                                                      func (in MachineAddresses) DeepCopy() MachineAddresses

                                                                                                                                                        DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineAddresses.

                                                                                                                                                        func (MachineAddresses) DeepCopyInto

                                                                                                                                                        func (in MachineAddresses) DeepCopyInto(out *MachineAddresses)

                                                                                                                                                          DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                          type MachineDeployment

                                                                                                                                                          type MachineDeployment struct {
                                                                                                                                                          	metav1.TypeMeta   `json:",inline"`
                                                                                                                                                          	metav1.ObjectMeta `json:"metadata,omitempty"`
                                                                                                                                                          
                                                                                                                                                          	Spec   MachineDeploymentSpec   `json:"spec,omitempty"`
                                                                                                                                                          	Status MachineDeploymentStatus `json:"status,omitempty"`
                                                                                                                                                          }

                                                                                                                                                            MachineDeployment is the Schema for the machinedeployments API

                                                                                                                                                            func (*MachineDeployment) ConvertFrom

                                                                                                                                                            func (dst *MachineDeployment) ConvertFrom(srcRaw conversion.Hub) error

                                                                                                                                                            func (*MachineDeployment) ConvertTo

                                                                                                                                                            func (src *MachineDeployment) ConvertTo(dstRaw conversion.Hub) error

                                                                                                                                                            func (*MachineDeployment) DeepCopy

                                                                                                                                                            func (in *MachineDeployment) DeepCopy() *MachineDeployment

                                                                                                                                                              DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineDeployment.

                                                                                                                                                              func (*MachineDeployment) DeepCopyInto

                                                                                                                                                              func (in *MachineDeployment) DeepCopyInto(out *MachineDeployment)

                                                                                                                                                                DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                func (*MachineDeployment) DeepCopyObject

                                                                                                                                                                func (in *MachineDeployment) DeepCopyObject() runtime.Object

                                                                                                                                                                  DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

                                                                                                                                                                  func (*MachineDeployment) SetupWebhookWithManager

                                                                                                                                                                  func (r *MachineDeployment) SetupWebhookWithManager(mgr ctrl.Manager) error

                                                                                                                                                                  type MachineDeploymentList

                                                                                                                                                                  type MachineDeploymentList struct {
                                                                                                                                                                  	metav1.TypeMeta `json:",inline"`
                                                                                                                                                                  	metav1.ListMeta `json:"metadata,omitempty"`
                                                                                                                                                                  	Items           []MachineDeployment `json:"items"`
                                                                                                                                                                  }

                                                                                                                                                                    MachineDeploymentList contains a list of MachineDeployment

                                                                                                                                                                    func (*MachineDeploymentList) ConvertFrom

                                                                                                                                                                    func (dst *MachineDeploymentList) ConvertFrom(srcRaw conversion.Hub) error

                                                                                                                                                                    func (*MachineDeploymentList) ConvertTo

                                                                                                                                                                    func (src *MachineDeploymentList) ConvertTo(dstRaw conversion.Hub) error

                                                                                                                                                                    func (*MachineDeploymentList) DeepCopy

                                                                                                                                                                      DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineDeploymentList.

                                                                                                                                                                      func (*MachineDeploymentList) DeepCopyInto

                                                                                                                                                                      func (in *MachineDeploymentList) DeepCopyInto(out *MachineDeploymentList)

                                                                                                                                                                        DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                        func (*MachineDeploymentList) DeepCopyObject

                                                                                                                                                                        func (in *MachineDeploymentList) DeepCopyObject() runtime.Object

                                                                                                                                                                          DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

                                                                                                                                                                          func (*MachineDeploymentList) SetupWebhookWithManager

                                                                                                                                                                          func (r *MachineDeploymentList) SetupWebhookWithManager(mgr ctrl.Manager) error

                                                                                                                                                                          type MachineDeploymentSpec

                                                                                                                                                                          type MachineDeploymentSpec struct {
                                                                                                                                                                          	// Number of desired machines. Defaults to 1.
                                                                                                                                                                          	// This is a pointer to distinguish between explicit zero and not specified.
                                                                                                                                                                          	Replicas *int32 `json:"replicas,omitempty"`
                                                                                                                                                                          
                                                                                                                                                                          	// Label selector for machines. Existing MachineSets whose machines are
                                                                                                                                                                          	// selected by this will be the ones affected by this deployment.
                                                                                                                                                                          	// It must match the machine template's labels.
                                                                                                                                                                          	Selector metav1.LabelSelector `json:"selector"`
                                                                                                                                                                          
                                                                                                                                                                          	// Template describes the machines that will be created.
                                                                                                                                                                          	Template MachineTemplateSpec `json:"template"`
                                                                                                                                                                          
                                                                                                                                                                          	// The deployment strategy to use to replace existing machines with
                                                                                                                                                                          	// new ones.
                                                                                                                                                                          	// +optional
                                                                                                                                                                          	Strategy *MachineDeploymentStrategy `json:"strategy,omitempty"`
                                                                                                                                                                          
                                                                                                                                                                          	// Minimum number of seconds for which a newly created machine should
                                                                                                                                                                          	// be ready.
                                                                                                                                                                          	// Defaults to 0 (machine will be considered available as soon as it
                                                                                                                                                                          	// is ready)
                                                                                                                                                                          	// +optional
                                                                                                                                                                          	MinReadySeconds *int32 `json:"minReadySeconds,omitempty"`
                                                                                                                                                                          
                                                                                                                                                                          	// The number of old MachineSets to retain to allow rollback.
                                                                                                                                                                          	// This is a pointer to distinguish between explicit zero and not specified.
                                                                                                                                                                          	// Defaults to 1.
                                                                                                                                                                          	// +optional
                                                                                                                                                                          	RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty"`
                                                                                                                                                                          
                                                                                                                                                                          	// Indicates that the deployment is paused.
                                                                                                                                                                          	// +optional
                                                                                                                                                                          	Paused bool `json:"paused,omitempty"`
                                                                                                                                                                          
                                                                                                                                                                          	// The maximum time in seconds for a deployment to make progress before it
                                                                                                                                                                          	// is considered to be failed. The deployment controller will continue to
                                                                                                                                                                          	// process failed deployments and a condition with a ProgressDeadlineExceeded
                                                                                                                                                                          	// reason will be surfaced in the deployment status. Note that progress will
                                                                                                                                                                          	// not be estimated during the time a deployment is paused. Defaults to 600s.
                                                                                                                                                                          	ProgressDeadlineSeconds *int32 `json:"progressDeadlineSeconds,omitempty"`
                                                                                                                                                                          }

                                                                                                                                                                            MachineDeploymentSpec defines the desired state of MachineDeployment

                                                                                                                                                                            func (*MachineDeploymentSpec) DeepCopy

                                                                                                                                                                              DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineDeploymentSpec.

                                                                                                                                                                              func (*MachineDeploymentSpec) DeepCopyInto

                                                                                                                                                                              func (in *MachineDeploymentSpec) DeepCopyInto(out *MachineDeploymentSpec)

                                                                                                                                                                                DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                type MachineDeploymentStatus

                                                                                                                                                                                type MachineDeploymentStatus struct {
                                                                                                                                                                                	// The generation observed by the deployment controller.
                                                                                                                                                                                	// +optional
                                                                                                                                                                                	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
                                                                                                                                                                                
                                                                                                                                                                                	// Selector is the same as the label selector but in the string format to avoid introspection
                                                                                                                                                                                	// by clients. The string will be in the same format as the query-param syntax.
                                                                                                                                                                                	// More info about label selectors: http://kubernetes.io/docs/user-guide/labels#label-selectors
                                                                                                                                                                                	// +optional
                                                                                                                                                                                	Selector string `json:"selector,omitempty"`
                                                                                                                                                                                
                                                                                                                                                                                	// Total number of non-terminated machines targeted by this deployment
                                                                                                                                                                                	// (their labels match the selector).
                                                                                                                                                                                	// +optional
                                                                                                                                                                                	Replicas int32 `json:"replicas,omitempty"`
                                                                                                                                                                                
                                                                                                                                                                                	// Total number of non-terminated machines targeted by this deployment
                                                                                                                                                                                	// that have the desired template spec.
                                                                                                                                                                                	// +optional
                                                                                                                                                                                	UpdatedReplicas int32 `json:"updatedReplicas,omitempty"`
                                                                                                                                                                                
                                                                                                                                                                                	// Total number of ready machines targeted by this deployment.
                                                                                                                                                                                	// +optional
                                                                                                                                                                                	ReadyReplicas int32 `json:"readyReplicas,omitempty"`
                                                                                                                                                                                
                                                                                                                                                                                	// Total number of available machines (ready for at least minReadySeconds)
                                                                                                                                                                                	// targeted by this deployment.
                                                                                                                                                                                	// +optional
                                                                                                                                                                                	AvailableReplicas int32 `json:"availableReplicas,omitempty"`
                                                                                                                                                                                
                                                                                                                                                                                	// Total number of unavailable machines targeted by this deployment.
                                                                                                                                                                                	// This is the total number of machines that are still required for
                                                                                                                                                                                	// the deployment to have 100% available capacity. They may either
                                                                                                                                                                                	// be machines that are running but not yet available or machines
                                                                                                                                                                                	// that still have not been created.
                                                                                                                                                                                	// +optional
                                                                                                                                                                                	UnavailableReplicas int32 `json:"unavailableReplicas,omitempty"`
                                                                                                                                                                                }

                                                                                                                                                                                  MachineDeploymentStatus defines the observed state of MachineDeployment

                                                                                                                                                                                  func (*MachineDeploymentStatus) DeepCopy

                                                                                                                                                                                    DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineDeploymentStatus.

                                                                                                                                                                                    func (*MachineDeploymentStatus) DeepCopyInto

                                                                                                                                                                                    func (in *MachineDeploymentStatus) DeepCopyInto(out *MachineDeploymentStatus)

                                                                                                                                                                                      DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                      type MachineDeploymentStrategy

                                                                                                                                                                                      type MachineDeploymentStrategy struct {
                                                                                                                                                                                      	// Type of deployment. Currently the only supported strategy is
                                                                                                                                                                                      	// "RollingUpdate".
                                                                                                                                                                                      	// Default is RollingUpdate.
                                                                                                                                                                                      	// +optional
                                                                                                                                                                                      	Type MachineDeploymentStrategyType `json:"type,omitempty"`
                                                                                                                                                                                      
                                                                                                                                                                                      	// Rolling update config params. Present only if
                                                                                                                                                                                      	// MachineDeploymentStrategyType = RollingUpdate.
                                                                                                                                                                                      	// +optional
                                                                                                                                                                                      	RollingUpdate *MachineRollingUpdateDeployment `json:"rollingUpdate,omitempty"`
                                                                                                                                                                                      }

                                                                                                                                                                                        MachineDeploymentStrategy describes how to replace existing machines with new ones.

                                                                                                                                                                                        func (*MachineDeploymentStrategy) DeepCopy

                                                                                                                                                                                          DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineDeploymentStrategy.

                                                                                                                                                                                          func (*MachineDeploymentStrategy) DeepCopyInto

                                                                                                                                                                                            DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                            type MachineDeploymentStrategyType

                                                                                                                                                                                            type MachineDeploymentStrategyType string

                                                                                                                                                                                            type MachineList

                                                                                                                                                                                            type MachineList struct {
                                                                                                                                                                                            	metav1.TypeMeta `json:",inline"`
                                                                                                                                                                                            	metav1.ListMeta `json:"metadata,omitempty"`
                                                                                                                                                                                            	Items           []Machine `json:"items"`
                                                                                                                                                                                            }

                                                                                                                                                                                              MachineList contains a list of Machine

                                                                                                                                                                                              func (*MachineList) ConvertFrom

                                                                                                                                                                                              func (dst *MachineList) ConvertFrom(srcRaw conversion.Hub) error

                                                                                                                                                                                              func (*MachineList) ConvertTo

                                                                                                                                                                                              func (src *MachineList) ConvertTo(dstRaw conversion.Hub) error

                                                                                                                                                                                              func (*MachineList) DeepCopy

                                                                                                                                                                                              func (in *MachineList) DeepCopy() *MachineList

                                                                                                                                                                                                DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineList.

                                                                                                                                                                                                func (*MachineList) DeepCopyInto

                                                                                                                                                                                                func (in *MachineList) DeepCopyInto(out *MachineList)

                                                                                                                                                                                                  DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                                  func (*MachineList) DeepCopyObject

                                                                                                                                                                                                  func (in *MachineList) DeepCopyObject() runtime.Object

                                                                                                                                                                                                    DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

                                                                                                                                                                                                    func (*MachineList) SetupWebhookWithManager

                                                                                                                                                                                                    func (r *MachineList) SetupWebhookWithManager(mgr ctrl.Manager) error

                                                                                                                                                                                                    type MachinePhase

                                                                                                                                                                                                    type MachinePhase string

                                                                                                                                                                                                      MachinePhase is a string representation of a Machine Phase.

                                                                                                                                                                                                      This type is a high-level indicator of the status of the Machine as it is provisioned, from the API user’s perspective.

                                                                                                                                                                                                      The value should not be interpreted by any software components as a reliable indication of the actual state of the Machine, and controllers should not use the Machine Phase field value when making decisions about what action to take.

                                                                                                                                                                                                      Controllers should always look at the actual state of the Machine’s fields to make those decisions.

                                                                                                                                                                                                      type MachineRollingUpdateDeployment

                                                                                                                                                                                                      type MachineRollingUpdateDeployment struct {
                                                                                                                                                                                                      	// The maximum number of machines that can be unavailable during the update.
                                                                                                                                                                                                      	// Value can be an absolute number (ex: 5) or a percentage of desired
                                                                                                                                                                                                      	// machines (ex: 10%).
                                                                                                                                                                                                      	// Absolute number is calculated from percentage by rounding down.
                                                                                                                                                                                                      	// This can not be 0 if MaxSurge is 0.
                                                                                                                                                                                                      	// Defaults to 0.
                                                                                                                                                                                                      	// Example: when this is set to 30%, the old MachineSet can be scaled
                                                                                                                                                                                                      	// down to 70% of desired machines immediately when the rolling update
                                                                                                                                                                                                      	// starts. Once new machines are ready, old MachineSet can be scaled
                                                                                                                                                                                                      	// down further, followed by scaling up the new MachineSet, ensuring
                                                                                                                                                                                                      	// that the total number of machines available at all times
                                                                                                                                                                                                      	// during the update is at least 70% of desired machines.
                                                                                                                                                                                                      	// +optional
                                                                                                                                                                                                      	MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"`
                                                                                                                                                                                                      
                                                                                                                                                                                                      	// The maximum number of machines that can be scheduled above the
                                                                                                                                                                                                      	// desired number of machines.
                                                                                                                                                                                                      	// Value can be an absolute number (ex: 5) or a percentage of
                                                                                                                                                                                                      	// desired machines (ex: 10%).
                                                                                                                                                                                                      	// This can not be 0 if MaxUnavailable is 0.
                                                                                                                                                                                                      	// Absolute number is calculated from percentage by rounding up.
                                                                                                                                                                                                      	// Defaults to 1.
                                                                                                                                                                                                      	// Example: when this is set to 30%, the new MachineSet can be scaled
                                                                                                                                                                                                      	// up immediately when the rolling update starts, such that the total
                                                                                                                                                                                                      	// number of old and new machines do not exceed 130% of desired
                                                                                                                                                                                                      	// machines. Once old machines have been killed, new MachineSet can
                                                                                                                                                                                                      	// be scaled up further, ensuring that total number of machines running
                                                                                                                                                                                                      	// at any time during the update is at most 130% of desired machines.
                                                                                                                                                                                                      	// +optional
                                                                                                                                                                                                      	MaxSurge *intstr.IntOrString `json:"maxSurge,omitempty"`
                                                                                                                                                                                                      }

                                                                                                                                                                                                        MachineRollingUpdateDeployment is used to control the desired behavior of rolling update.

                                                                                                                                                                                                        func (*MachineRollingUpdateDeployment) DeepCopy

                                                                                                                                                                                                          DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineRollingUpdateDeployment.

                                                                                                                                                                                                          func (*MachineRollingUpdateDeployment) DeepCopyInto

                                                                                                                                                                                                            DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                                            type MachineSet

                                                                                                                                                                                                            type MachineSet struct {
                                                                                                                                                                                                            	metav1.TypeMeta   `json:",inline"`
                                                                                                                                                                                                            	metav1.ObjectMeta `json:"metadata,omitempty"`
                                                                                                                                                                                                            
                                                                                                                                                                                                            	Spec   MachineSetSpec   `json:"spec,omitempty"`
                                                                                                                                                                                                            	Status MachineSetStatus `json:"status,omitempty"`
                                                                                                                                                                                                            }

                                                                                                                                                                                                              MachineSet is the Schema for the machinesets API

                                                                                                                                                                                                              func (*MachineSet) ConvertFrom

                                                                                                                                                                                                              func (dst *MachineSet) ConvertFrom(srcRaw conversion.Hub) error

                                                                                                                                                                                                              func (*MachineSet) ConvertTo

                                                                                                                                                                                                              func (src *MachineSet) ConvertTo(dstRaw conversion.Hub) error

                                                                                                                                                                                                              func (*MachineSet) DeepCopy

                                                                                                                                                                                                              func (in *MachineSet) DeepCopy() *MachineSet

                                                                                                                                                                                                                DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineSet.

                                                                                                                                                                                                                func (*MachineSet) DeepCopyInto

                                                                                                                                                                                                                func (in *MachineSet) DeepCopyInto(out *MachineSet)

                                                                                                                                                                                                                  DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                                                  func (*MachineSet) DeepCopyObject

                                                                                                                                                                                                                  func (in *MachineSet) DeepCopyObject() runtime.Object

                                                                                                                                                                                                                    DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

                                                                                                                                                                                                                    func (*MachineSet) Default

                                                                                                                                                                                                                    func (m *MachineSet) Default()

                                                                                                                                                                                                                      DefaultingFunction sets default MachineSet field values.

                                                                                                                                                                                                                      func (*MachineSet) SetupWebhookWithManager

                                                                                                                                                                                                                      func (r *MachineSet) SetupWebhookWithManager(mgr ctrl.Manager) error

                                                                                                                                                                                                                      func (*MachineSet) Validate

                                                                                                                                                                                                                      func (m *MachineSet) Validate() field.ErrorList

                                                                                                                                                                                                                        Validate validates the MachineSet fields.

                                                                                                                                                                                                                        type MachineSetDeletePolicy

                                                                                                                                                                                                                        type MachineSetDeletePolicy string

                                                                                                                                                                                                                          MachineSetDeletePolicy defines how priority is assigned to nodes to delete when downscaling a MachineSet. Defaults to "Random".

                                                                                                                                                                                                                          const (
                                                                                                                                                                                                                          	// RandomMachineSetDeletePolicy prioritizes both Machines that have the annotation
                                                                                                                                                                                                                          	// "cluster.x-k8s.io/delete-machine=yes" and Machines that are unhealthy
                                                                                                                                                                                                                          	// (Status.ErrorReason or Status.ErrorMessage are set to a non-empty value).
                                                                                                                                                                                                                          	// Finally, it picks Machines at random to delete.
                                                                                                                                                                                                                          	RandomMachineSetDeletePolicy MachineSetDeletePolicy = "Random"
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          	// NewestMachineSetDeletePolicy prioritizes both Machines that have the annotation
                                                                                                                                                                                                                          	// "cluster.x-k8s.io/delete-machine=yes" and Machines that are unhealthy
                                                                                                                                                                                                                          	// (Status.ErrorReason or Status.ErrorMessage are set to a non-empty value).
                                                                                                                                                                                                                          	// It then prioritizes the newest Machines for deletion based on the Machine's CreationTimestamp.
                                                                                                                                                                                                                          	NewestMachineSetDeletePolicy MachineSetDeletePolicy = "Newest"
                                                                                                                                                                                                                          
                                                                                                                                                                                                                          	// OldestMachineSetDeletePolicy prioritizes both Machines that have the annotation
                                                                                                                                                                                                                          	// "cluster.x-k8s.io/delete-machine=yes" and Machines that are unhealthy
                                                                                                                                                                                                                          	// (Status.ErrorReason or Status.ErrorMessage are set to a non-empty value).
                                                                                                                                                                                                                          	// It then prioritizes the oldest Machines for deletion based on the Machine's CreationTimestamp.
                                                                                                                                                                                                                          	OldestMachineSetDeletePolicy MachineSetDeletePolicy = "Oldest"
                                                                                                                                                                                                                          )

                                                                                                                                                                                                                          type MachineSetList

                                                                                                                                                                                                                          type MachineSetList struct {
                                                                                                                                                                                                                          	metav1.TypeMeta `json:",inline"`
                                                                                                                                                                                                                          	metav1.ListMeta `json:"metadata,omitempty"`
                                                                                                                                                                                                                          	Items           []MachineSet `json:"items"`
                                                                                                                                                                                                                          }

                                                                                                                                                                                                                            MachineSetList contains a list of MachineSet

                                                                                                                                                                                                                            func (*MachineSetList) ConvertFrom

                                                                                                                                                                                                                            func (dst *MachineSetList) ConvertFrom(srcRaw conversion.Hub) error

                                                                                                                                                                                                                            func (*MachineSetList) ConvertTo

                                                                                                                                                                                                                            func (src *MachineSetList) ConvertTo(dstRaw conversion.Hub) error

                                                                                                                                                                                                                            func (*MachineSetList) DeepCopy

                                                                                                                                                                                                                            func (in *MachineSetList) DeepCopy() *MachineSetList

                                                                                                                                                                                                                              DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineSetList.

                                                                                                                                                                                                                              func (*MachineSetList) DeepCopyInto

                                                                                                                                                                                                                              func (in *MachineSetList) DeepCopyInto(out *MachineSetList)

                                                                                                                                                                                                                                DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                                                                func (*MachineSetList) DeepCopyObject

                                                                                                                                                                                                                                func (in *MachineSetList) DeepCopyObject() runtime.Object

                                                                                                                                                                                                                                  DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

                                                                                                                                                                                                                                  func (*MachineSetList) SetupWebhookWithManager

                                                                                                                                                                                                                                  func (r *MachineSetList) SetupWebhookWithManager(mgr ctrl.Manager) error

                                                                                                                                                                                                                                  type MachineSetSpec

                                                                                                                                                                                                                                  type MachineSetSpec struct {
                                                                                                                                                                                                                                  	// Replicas is the number of desired replicas.
                                                                                                                                                                                                                                  	// This is a pointer to distinguish between explicit zero and unspecified.
                                                                                                                                                                                                                                  	// Defaults to 1.
                                                                                                                                                                                                                                  	// +optional
                                                                                                                                                                                                                                  	Replicas *int32 `json:"replicas,omitempty"`
                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                  	// MinReadySeconds is the minimum number of seconds for which a newly created machine should be ready.
                                                                                                                                                                                                                                  	// Defaults to 0 (machine will be considered available as soon as it is ready)
                                                                                                                                                                                                                                  	// +optional
                                                                                                                                                                                                                                  	MinReadySeconds int32 `json:"minReadySeconds,omitempty"`
                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                  	// DeletePolicy defines the policy used to identify nodes to delete when downscaling.
                                                                                                                                                                                                                                  	// Defaults to "Random".  Valid values are "Random, "Newest", "Oldest"
                                                                                                                                                                                                                                  	// +kubebuilder:validation:Enum=Random;Newest;Oldest
                                                                                                                                                                                                                                  	DeletePolicy string `json:"deletePolicy,omitempty"`
                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                  	// Selector is a label query over machines that should match the replica count.
                                                                                                                                                                                                                                  	// Label keys and values that must match in order to be controlled by this MachineSet.
                                                                                                                                                                                                                                  	// It must match the machine template's labels.
                                                                                                                                                                                                                                  	// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors
                                                                                                                                                                                                                                  	Selector metav1.LabelSelector `json:"selector"`
                                                                                                                                                                                                                                  
                                                                                                                                                                                                                                  	// Template is the object that describes the machine that will be created if
                                                                                                                                                                                                                                  	// insufficient replicas are detected.
                                                                                                                                                                                                                                  	// Object references to custom resources resources are treated as templates.
                                                                                                                                                                                                                                  	// +optional
                                                                                                                                                                                                                                  	Template MachineTemplateSpec `json:"template,omitempty"`
                                                                                                                                                                                                                                  }

                                                                                                                                                                                                                                    MachineSetSpec defines the desired state of MachineSet

                                                                                                                                                                                                                                    func (*MachineSetSpec) DeepCopy

                                                                                                                                                                                                                                    func (in *MachineSetSpec) DeepCopy() *MachineSetSpec

                                                                                                                                                                                                                                      DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineSetSpec.

                                                                                                                                                                                                                                      func (*MachineSetSpec) DeepCopyInto

                                                                                                                                                                                                                                      func (in *MachineSetSpec) DeepCopyInto(out *MachineSetSpec)

                                                                                                                                                                                                                                        DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                                                                        type MachineSetStatus

                                                                                                                                                                                                                                        type MachineSetStatus struct {
                                                                                                                                                                                                                                        	// Selector is the same as the label selector but in the string format to avoid introspection
                                                                                                                                                                                                                                        	// by clients. The string will be in the same format as the query-param syntax.
                                                                                                                                                                                                                                        	// More info about label selectors: http://kubernetes.io/docs/user-guide/labels#label-selectors
                                                                                                                                                                                                                                        	// +optional
                                                                                                                                                                                                                                        	Selector string `json:"selector,omitempty"`
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        	// Replicas is the most recently observed number of replicas.
                                                                                                                                                                                                                                        	Replicas int32 `json:"replicas"`
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        	// The number of replicas that have labels matching the labels of the machine template of the MachineSet.
                                                                                                                                                                                                                                        	// +optional
                                                                                                                                                                                                                                        	FullyLabeledReplicas int32 `json:"fullyLabeledReplicas,omitempty"`
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        	// The number of ready replicas for this MachineSet. A machine is considered ready when the node has been created and is "Ready".
                                                                                                                                                                                                                                        	// +optional
                                                                                                                                                                                                                                        	ReadyReplicas int32 `json:"readyReplicas,omitempty"`
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        	// The number of available replicas (ready for at least minReadySeconds) for this MachineSet.
                                                                                                                                                                                                                                        	// +optional
                                                                                                                                                                                                                                        	AvailableReplicas int32 `json:"availableReplicas,omitempty"`
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        	// ObservedGeneration reflects the generation of the most recently observed MachineSet.
                                                                                                                                                                                                                                        	// +optional
                                                                                                                                                                                                                                        	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                        	// In the event that there is a terminal problem reconciling the
                                                                                                                                                                                                                                        	// replicas, both ErrorReason and ErrorMessage will be set. ErrorReason
                                                                                                                                                                                                                                        	// will be populated with a succinct value suitable for machine
                                                                                                                                                                                                                                        	// interpretation, while ErrorMessage will contain a more verbose
                                                                                                                                                                                                                                        	// string suitable for logging and human consumption.
                                                                                                                                                                                                                                        	//
                                                                                                                                                                                                                                        	// These fields should not be set for transitive errors that a
                                                                                                                                                                                                                                        	// controller faces that are expected to be fixed automatically over
                                                                                                                                                                                                                                        	// time (like service outages), but instead indicate that something is
                                                                                                                                                                                                                                        	// fundamentally wrong with the MachineTemplate's spec or the configuration of
                                                                                                                                                                                                                                        	// the machine controller, and that manual intervention is required. Examples
                                                                                                                                                                                                                                        	// of terminal errors would be invalid combinations of settings in the
                                                                                                                                                                                                                                        	// spec, values that are unsupported by the machine controller, or the
                                                                                                                                                                                                                                        	// responsible machine controller itself being critically misconfigured.
                                                                                                                                                                                                                                        	//
                                                                                                                                                                                                                                        	// Any transient errors that occur during the reconciliation of Machines
                                                                                                                                                                                                                                        	// can be added as events to the MachineSet object and/or logged in the
                                                                                                                                                                                                                                        	// controller's output.
                                                                                                                                                                                                                                        	// +optional
                                                                                                                                                                                                                                        	ErrorReason *capierrors.MachineSetStatusError `json:"errorReason,omitempty"`
                                                                                                                                                                                                                                        	// +optional
                                                                                                                                                                                                                                        	ErrorMessage *string `json:"errorMessage,omitempty"`
                                                                                                                                                                                                                                        }

                                                                                                                                                                                                                                          MachineSetStatus defines the observed state of MachineSet

                                                                                                                                                                                                                                          func (*MachineSetStatus) DeepCopy

                                                                                                                                                                                                                                          func (in *MachineSetStatus) DeepCopy() *MachineSetStatus

                                                                                                                                                                                                                                            DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineSetStatus.

                                                                                                                                                                                                                                            func (*MachineSetStatus) DeepCopyInto

                                                                                                                                                                                                                                            func (in *MachineSetStatus) DeepCopyInto(out *MachineSetStatus)

                                                                                                                                                                                                                                              DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                                                                              type MachineSpec

                                                                                                                                                                                                                                              type MachineSpec struct {
                                                                                                                                                                                                                                              	// DEPRECATED: ObjectMeta has no function and isn't used anywhere.
                                                                                                                                                                                                                                              	// +optional
                                                                                                                                                                                                                                              	ObjectMeta `json:"metadata,omitempty"`
                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                              	// Bootstrap is a reference to a local struct which encapsulates
                                                                                                                                                                                                                                              	// fields to configure the Machine’s bootstrapping mechanism.
                                                                                                                                                                                                                                              	Bootstrap Bootstrap `json:"bootstrap"`
                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                              	// InfrastructureRef is a required reference to a custom resource
                                                                                                                                                                                                                                              	// offered by an infrastructure provider.
                                                                                                                                                                                                                                              	InfrastructureRef corev1.ObjectReference `json:"infrastructureRef"`
                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                              	// Version defines the desired Kubernetes version.
                                                                                                                                                                                                                                              	// This field is meant to be optionally used by bootstrap providers.
                                                                                                                                                                                                                                              	// +optional
                                                                                                                                                                                                                                              	Version *string `json:"version,omitempty"`
                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                              	// ProviderID is the identification ID of the machine provided by the provider.
                                                                                                                                                                                                                                              	// This field must match the provider ID as seen on the node object corresponding to this machine.
                                                                                                                                                                                                                                              	// This field is required by higher level consumers of cluster-api. Example use case is cluster autoscaler
                                                                                                                                                                                                                                              	// with cluster-api as provider. Clean-up logic in the autoscaler compares machines to nodes to find out
                                                                                                                                                                                                                                              	// machines at provider which could not get registered as Kubernetes nodes. With cluster-api as a
                                                                                                                                                                                                                                              	// generic out-of-tree provider for autoscaler, this field is required by autoscaler to be
                                                                                                                                                                                                                                              	// able to have a provider view of the list of machines. Another list of nodes is queried from the k8s apiserver
                                                                                                                                                                                                                                              	// and then a comparison is done to find out unregistered machines and are marked for delete.
                                                                                                                                                                                                                                              	// This field will be set by the actuators and consumed by higher level entities like autoscaler that will
                                                                                                                                                                                                                                              	// be interfacing with cluster-api as generic provider.
                                                                                                                                                                                                                                              	// +optional
                                                                                                                                                                                                                                              	ProviderID *string `json:"providerID,omitempty"`
                                                                                                                                                                                                                                              }

                                                                                                                                                                                                                                                MachineSpec defines the desired state of Machine

                                                                                                                                                                                                                                                func (*MachineSpec) DeepCopy

                                                                                                                                                                                                                                                func (in *MachineSpec) DeepCopy() *MachineSpec

                                                                                                                                                                                                                                                  DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineSpec.

                                                                                                                                                                                                                                                  func (*MachineSpec) DeepCopyInto

                                                                                                                                                                                                                                                  func (in *MachineSpec) DeepCopyInto(out *MachineSpec)

                                                                                                                                                                                                                                                    DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                                                                                    type MachineStatus

                                                                                                                                                                                                                                                    type MachineStatus struct {
                                                                                                                                                                                                                                                    	// NodeRef will point to the corresponding Node if it exists.
                                                                                                                                                                                                                                                    	// +optional
                                                                                                                                                                                                                                                    	NodeRef *corev1.ObjectReference `json:"nodeRef,omitempty"`
                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                    	// LastUpdated identifies when this status was last observed.
                                                                                                                                                                                                                                                    	// +optional
                                                                                                                                                                                                                                                    	LastUpdated *metav1.Time `json:"lastUpdated,omitempty"`
                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                    	// Version specifies the current version of Kubernetes running
                                                                                                                                                                                                                                                    	// on the corresponding Node. This is meant to be a means of bubbling
                                                                                                                                                                                                                                                    	// up status from the Node to the Machine.
                                                                                                                                                                                                                                                    	// It is entirely optional, but useful for end-user UX if it’s present.
                                                                                                                                                                                                                                                    	// +optional
                                                                                                                                                                                                                                                    	Version *string `json:"version,omitempty"`
                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                    	// ErrorReason will be set in the event that there is a terminal problem
                                                                                                                                                                                                                                                    	// reconciling the Machine and will contain a succinct value suitable
                                                                                                                                                                                                                                                    	// for machine interpretation.
                                                                                                                                                                                                                                                    	//
                                                                                                                                                                                                                                                    	// This field should not be set for transitive errors that a controller
                                                                                                                                                                                                                                                    	// faces that are expected to be fixed automatically over
                                                                                                                                                                                                                                                    	// time (like service outages), but instead indicate that something is
                                                                                                                                                                                                                                                    	// fundamentally wrong with the Machine's spec or the configuration of
                                                                                                                                                                                                                                                    	// the controller, and that manual intervention is required. Examples
                                                                                                                                                                                                                                                    	// of terminal errors would be invalid combinations of settings in the
                                                                                                                                                                                                                                                    	// spec, values that are unsupported by the controller, or the
                                                                                                                                                                                                                                                    	// responsible controller itself being critically misconfigured.
                                                                                                                                                                                                                                                    	//
                                                                                                                                                                                                                                                    	// Any transient errors that occur during the reconciliation of Machines
                                                                                                                                                                                                                                                    	// can be added as events to the Machine object and/or logged in the
                                                                                                                                                                                                                                                    	// controller's output.
                                                                                                                                                                                                                                                    	// +optional
                                                                                                                                                                                                                                                    	ErrorReason *capierrors.MachineStatusError `json:"errorReason,omitempty"`
                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                    	// ErrorMessage will be set in the event that there is a terminal problem
                                                                                                                                                                                                                                                    	// reconciling the Machine and will contain a more verbose string suitable
                                                                                                                                                                                                                                                    	// for logging and human consumption.
                                                                                                                                                                                                                                                    	//
                                                                                                                                                                                                                                                    	// This field should not be set for transitive errors that a controller
                                                                                                                                                                                                                                                    	// faces that are expected to be fixed automatically over
                                                                                                                                                                                                                                                    	// time (like service outages), but instead indicate that something is
                                                                                                                                                                                                                                                    	// fundamentally wrong with the Machine's spec or the configuration of
                                                                                                                                                                                                                                                    	// the controller, and that manual intervention is required. Examples
                                                                                                                                                                                                                                                    	// of terminal errors would be invalid combinations of settings in the
                                                                                                                                                                                                                                                    	// spec, values that are unsupported by the controller, or the
                                                                                                                                                                                                                                                    	// responsible controller itself being critically misconfigured.
                                                                                                                                                                                                                                                    	//
                                                                                                                                                                                                                                                    	// Any transient errors that occur during the reconciliation of Machines
                                                                                                                                                                                                                                                    	// can be added as events to the Machine object and/or logged in the
                                                                                                                                                                                                                                                    	// controller's output.
                                                                                                                                                                                                                                                    	// +optional
                                                                                                                                                                                                                                                    	ErrorMessage *string `json:"errorMessage,omitempty"`
                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                    	// Addresses is a list of addresses assigned to the machine.
                                                                                                                                                                                                                                                    	// This field is copied from the infrastructure provider reference.
                                                                                                                                                                                                                                                    	// +optional
                                                                                                                                                                                                                                                    	Addresses MachineAddresses `json:"addresses,omitempty"`
                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                    	// Phase represents the current phase of machine actuation.
                                                                                                                                                                                                                                                    	// E.g. Pending, Running, Terminating, Failed etc.
                                                                                                                                                                                                                                                    	// +optional
                                                                                                                                                                                                                                                    	Phase string `json:"phase,omitempty"`
                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                    	// BootstrapReady is the state of the bootstrap provider.
                                                                                                                                                                                                                                                    	// +optional
                                                                                                                                                                                                                                                    	BootstrapReady bool `json:"bootstrapReady"`
                                                                                                                                                                                                                                                    
                                                                                                                                                                                                                                                    	// InfrastructureReady is the state of the infrastructure provider.
                                                                                                                                                                                                                                                    	// +optional
                                                                                                                                                                                                                                                    	InfrastructureReady bool `json:"infrastructureReady"`
                                                                                                                                                                                                                                                    }

                                                                                                                                                                                                                                                      MachineStatus defines the observed state of Machine

                                                                                                                                                                                                                                                      func (*MachineStatus) DeepCopy

                                                                                                                                                                                                                                                      func (in *MachineStatus) DeepCopy() *MachineStatus

                                                                                                                                                                                                                                                        DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineStatus.

                                                                                                                                                                                                                                                        func (*MachineStatus) DeepCopyInto

                                                                                                                                                                                                                                                        func (in *MachineStatus) DeepCopyInto(out *MachineStatus)

                                                                                                                                                                                                                                                          DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                                                                                          func (*MachineStatus) GetTypedPhase

                                                                                                                                                                                                                                                          func (m *MachineStatus) GetTypedPhase() MachinePhase

                                                                                                                                                                                                                                                            GetTypedPhase attempts to parse the Phase field and return the typed MachinePhase representation as described in `machine_phase_types.go`.

                                                                                                                                                                                                                                                            func (*MachineStatus) SetTypedPhase

                                                                                                                                                                                                                                                            func (m *MachineStatus) SetTypedPhase(p MachinePhase)

                                                                                                                                                                                                                                                              SetTypedPhase sets the Phase field to the string representation of MachinePhase.

                                                                                                                                                                                                                                                              type MachineTemplateSpec

                                                                                                                                                                                                                                                              type MachineTemplateSpec struct {
                                                                                                                                                                                                                                                              	// Standard object's metadata.
                                                                                                                                                                                                                                                              	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
                                                                                                                                                                                                                                                              	// +optional
                                                                                                                                                                                                                                                              	ObjectMeta `json:"metadata,omitempty"`
                                                                                                                                                                                                                                                              
                                                                                                                                                                                                                                                              	// Specification of the desired behavior of the machine.
                                                                                                                                                                                                                                                              	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
                                                                                                                                                                                                                                                              	// +optional
                                                                                                                                                                                                                                                              	Spec MachineSpec `json:"spec,omitempty"`
                                                                                                                                                                                                                                                              }

                                                                                                                                                                                                                                                                MachineTemplateSpec describes the data needed to create a Machine from a template

                                                                                                                                                                                                                                                                func (*MachineTemplateSpec) DeepCopy

                                                                                                                                                                                                                                                                func (in *MachineTemplateSpec) DeepCopy() *MachineTemplateSpec

                                                                                                                                                                                                                                                                  DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MachineTemplateSpec.

                                                                                                                                                                                                                                                                  func (*MachineTemplateSpec) DeepCopyInto

                                                                                                                                                                                                                                                                  func (in *MachineTemplateSpec) DeepCopyInto(out *MachineTemplateSpec)

                                                                                                                                                                                                                                                                    DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                                                                                                    type NetworkRanges

                                                                                                                                                                                                                                                                    type NetworkRanges struct {
                                                                                                                                                                                                                                                                    	CIDRBlocks []string `json:"cidrBlocks"`
                                                                                                                                                                                                                                                                    }

                                                                                                                                                                                                                                                                      ANCHOR: NetworkRanges NetworkRanges represents ranges of network addresses.

                                                                                                                                                                                                                                                                      func (*NetworkRanges) DeepCopy

                                                                                                                                                                                                                                                                      func (in *NetworkRanges) DeepCopy() *NetworkRanges

                                                                                                                                                                                                                                                                        DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkRanges.

                                                                                                                                                                                                                                                                        func (*NetworkRanges) DeepCopyInto

                                                                                                                                                                                                                                                                        func (in *NetworkRanges) DeepCopyInto(out *NetworkRanges)

                                                                                                                                                                                                                                                                          DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

                                                                                                                                                                                                                                                                          type ObjectMeta

                                                                                                                                                                                                                                                                          type ObjectMeta struct {
                                                                                                                                                                                                                                                                          	// Name must be unique within a namespace. Is required when creating resources, although
                                                                                                                                                                                                                                                                          	// some resources may allow a client to request the generation of an appropriate name
                                                                                                                                                                                                                                                                          	// automatically. Name is primarily intended for creation idempotence and configuration
                                                                                                                                                                                                                                                                          	// definition.
                                                                                                                                                                                                                                                                          	// Cannot be updated.
                                                                                                                                                                                                                                                                          	// More info: http://kubernetes.io/docs/user-guide/identifiers#names
                                                                                                                                                                                                                                                                          	// +optional
                                                                                                                                                                                                                                                                          	Name string `json:"name,omitempty"`
                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                          	// GenerateName is an optional prefix, used by the server, to generate a unique
                                                                                                                                                                                                                                                                          	// name ONLY IF the Name field has not been provided.
                                                                                                                                                                                                                                                                          	// If this field is used, the name returned to the client will be different
                                                                                                                                                                                                                                                                          	// than the name passed. This value will also be combined with a unique suffix.
                                                                                                                                                                                                                                                                          	// The provided value has the same validation rules as the Name field,
                                                                                                                                                                                                                                                                          	// and may be truncated by the length of the suffix required to make the value
                                                                                                                                                                                                                                                                          	// unique on the server.
                                                                                                                                                                                                                                                                          	//
                                                                                                                                                                                                                                                                          	// If this field is specified and the generated name exists, the server will
                                                                                                                                                                                                                                                                          	// NOT return a 409 - instead, it will either return 201 Created or 500 with Reason
                                                                                                                                                                                                                                                                          	// ServerTimeout indicating a unique name could not be found in the time allotted, and the client
                                                                                                                                                                                                                                                                          	// should retry (optionally after the time indicated in the Retry-After header).
                                                                                                                                                                                                                                                                          	//
                                                                                                                                                                                                                                                                          	// Applied only if Name is not specified.
                                                                                                                                                                                                                                                                          	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
                                                                                                                                                                                                                                                                          	// +optional
                                                                                                                                                                                                                                                                          	GenerateName string `json:"generateName,omitempty"`
                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                          	// Namespace defines the space within each name must be unique. An empty namespace is
                                                                                                                                                                                                                                                                          	// equivalent to the "default" namespace, but "default" is the canonical representation.
                                                                                                                                                                                                                                                                          	// Not all objects are required to be scoped to a namespace - the value of this field for
                                                                                                                                                                                                                                                                          	// those objects will be empty.
                                                                                                                                                                                                                                                                          	//
                                                                                                                                                                                                                                                                          	// Must be a DNS_LABEL.
                                                                                                                                                                                                                                                                          	// Cannot be updated.
                                                                                                                                                                                                                                                                          	// More info: http://kubernetes.io/docs/user-guide/namespaces
                                                                                                                                                                                                                                                                          	// +optional
                                                                                                                                                                                                                                                                          	Namespace string `json:"namespace,omitempty"`
                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                          	// Map of string keys and values that can be used to organize and categorize
                                                                                                                                                                                                                                                                          	// (scope and select) objects. May match selectors of replication controllers
                                                                                                                                                                                                                                                                          	// and services.
                                                                                                                                                                                                                                                                          	// More info: http://kubernetes.io/docs/user-guide/labels
                                                                                                                                                                                                                                                                          	// +optional
                                                                                                                                                                                                                                                                          	Labels map[string]string `json:"labels,omitempty"`
                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                          	// Annotations is an unstructured key value map stored with a resource that may be
                                                                                                                                                                                                                                                                          	// set by external tools to store and retrieve arbitrary metadata. They are not
                                                                                                                                                                                                                                                                          	// queryable and should be preserved when modifying objects.
                                                                                                                                                                                                                                                                          	// More info: http://kubernetes.io/docs/user-guide/annotations
                                                                                                                                                                                                                                                                          	// +optional
                                                                                                                                                                                                                                                                          	Annotations map[string]string `json:"annotations,omitempty"`
                                                                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                          	// List of objects depended by this object. If ALL objects in the list have
                                                                                                                                                                                                                                                                          	// been deleted, this object will be garbage collected. If this object is managed by a controller,
                                                                                                                                                                                                                                                                          	// then an entry in this list will point to this controller, with the controller field set to true.
                                                                                                                                                                                                                                                                          	// There cannot be more than one managing controller.
                                                                                                                                                                                                                                                                          	// +optional
                                                                                                                                                                                                                                                                          	// +patchMergeKey=uid
                                                                                                                                                                                                                                                                          	// +patchStrategy=merge
                                                                                                                                                                                                                                                                          	OwnerReferences []metav1.OwnerReference `json:"ownerReferences,omitempty" patchStrategy:"merge" patchMergeKey:"uid"`
                                                                                                                                                                                                                                                                          }

                                                                                                                                                                                                                                                                            ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create. This is a copy of customizable fields from metav1.ObjectMeta.

                                                                                                                                                                                                                                                                            ObjectMeta is embedded in `Machine.Spec`, `MachineDeployment.Template` and `MachineSet.Template`, which are not top-level Kubernetes objects. Given that metav1.ObjectMeta has lots of special cases and read-only fields which end up in the generated CRD validation, having it as a subset simplifies the API and some issues that can impact user experience.

                                                                                                                                                                                                                                                                            During the [upgrade to controller-tools@v2](https://github.com/kubernetes-sigs/cluster-api/pull/1054) for v1alpha2, we noticed a failure would occur running Cluster API test suite against the new CRDs, specifically `spec.metadata.creationTimestamp in body must be of type string: "null"`. The investigation showed that `controller-tools@v2` behaves differently than its previous version when handling types from [metav1](k8s.io/apimachinery/pkg/apis/meta/v1) package.

                                                                                                                                                                                                                                                                            In more details, we found that embedded (non-top level) types that embedded `metav1.ObjectMeta` had validation properties, including for `creationTimestamp` (metav1.Time). The `metav1.Time` type specifies a custom json marshaller that, when IsZero() is true, returns `null` which breaks validation because the field isn't marked as nullable.

                                                                                                                                                                                                                                                                            In future versions, controller-tools@v2 might allow overriding the type and validation for embedded types. When that happens, this hack should be revisited.

                                                                                                                                                                                                                                                                            func (*ObjectMeta) DeepCopy

                                                                                                                                                                                                                                                                            func (in *ObjectMeta) DeepCopy() *ObjectMeta

                                                                                                                                                                                                                                                                              DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectMeta.

                                                                                                                                                                                                                                                                              func (*ObjectMeta) DeepCopyInto

                                                                                                                                                                                                                                                                              func (in *ObjectMeta) DeepCopyInto(out *ObjectMeta)

                                                                                                                                                                                                                                                                                DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.