Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- type CloudStackCluster
- func (in *CloudStackCluster) DeepCopy() *CloudStackCluster
- func (in *CloudStackCluster) DeepCopyInto(out *CloudStackCluster)
- func (in *CloudStackCluster) DeepCopyObject() runtime.Object
- func (r *CloudStackCluster) Default()
- func (*CloudStackCluster) Hub()
- func (r *CloudStackCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *CloudStackCluster) ValidateCreate() error
- func (r *CloudStackCluster) ValidateDelete() error
- func (r *CloudStackCluster) ValidateUpdate(old runtime.Object) error
- type CloudStackClusterList
- type CloudStackClusterSpec
- type CloudStackClusterStatus
- type CloudStackIdentityReference
- type CloudStackMachine
- func (csm CloudStackMachine) AffinityGroupName(capiMachine *capiv1.Machine) (string, error)
- func (in *CloudStackMachine) DeepCopy() *CloudStackMachine
- func (in *CloudStackMachine) DeepCopyInto(out *CloudStackMachine)
- func (in *CloudStackMachine) DeepCopyObject() runtime.Object
- func (r *CloudStackMachine) Default()
- func (*CloudStackMachine) Hub()
- func (r *CloudStackMachine) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *CloudStackMachine) ValidateCreate() error
- func (r *CloudStackMachine) ValidateDelete() error
- func (r *CloudStackMachine) ValidateUpdate(old runtime.Object) error
- type CloudStackMachineList
- type CloudStackMachineSpec
- type CloudStackMachineStatus
- type CloudStackMachineTemplate
- func (in *CloudStackMachineTemplate) DeepCopy() *CloudStackMachineTemplate
- func (in *CloudStackMachineTemplate) DeepCopyInto(out *CloudStackMachineTemplate)
- func (in *CloudStackMachineTemplate) DeepCopyObject() runtime.Object
- func (r *CloudStackMachineTemplate) Default()
- func (r *CloudStackMachineTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *CloudStackMachineTemplate) ValidateCreate() error
- func (r *CloudStackMachineTemplate) ValidateDelete() error
- func (r *CloudStackMachineTemplate) ValidateUpdate(old runtime.Object) error
- type CloudStackMachineTemplateList
- type CloudStackMachineTemplateResource
- type CloudStackMachineTemplateSpec
- type CloudStackResourceIdentifier
- type InstanceState
- type Network
- type Zone
- type ZoneStatusMap
Constants ¶
const (
// The presence of a finalizer prevents CAPI from deleting the corresponding CAPI data.
ClusterFinalizer = "cloudstackcluster.infrastructure.cluster.x-k8s.io"
)
const (
// The presence of a finalizer prevents CAPI from deleting the corresponding CAPI data.
MachineFinalizer = "cloudstackmachine.infrastructure.cluster.x-k8s.io"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1beta1"} // 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 ¶
This section is empty.
Types ¶
type CloudStackCluster ¶
type CloudStackCluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CloudStackClusterSpec `json:"spec,omitempty"` // The actual cluster state reported by CloudStack. Status CloudStackClusterStatus `json:"status,omitempty"` }
CloudStackCluster is the Schema for the cloudstackclusters API
func (*CloudStackCluster) DeepCopy ¶
func (in *CloudStackCluster) DeepCopy() *CloudStackCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackCluster.
func (*CloudStackCluster) DeepCopyInto ¶
func (in *CloudStackCluster) DeepCopyInto(out *CloudStackCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CloudStackCluster) DeepCopyObject ¶
func (in *CloudStackCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*CloudStackCluster) Default ¶
func (r *CloudStackCluster) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*CloudStackCluster) Hub ¶
func (*CloudStackCluster) Hub()
Hub marks CloudStackCluster as a conversion hub.
func (*CloudStackCluster) SetupWebhookWithManager ¶
func (r *CloudStackCluster) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*CloudStackCluster) ValidateCreate ¶
func (r *CloudStackCluster) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*CloudStackCluster) ValidateDelete ¶
func (r *CloudStackCluster) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*CloudStackCluster) ValidateUpdate ¶
func (r *CloudStackCluster) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type CloudStackClusterList ¶
type CloudStackClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []CloudStackCluster `json:"items"` }
CloudStackClusterList contains a list of CloudStackCluster
func (*CloudStackClusterList) DeepCopy ¶
func (in *CloudStackClusterList) DeepCopy() *CloudStackClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackClusterList.
func (*CloudStackClusterList) DeepCopyInto ¶
func (in *CloudStackClusterList) DeepCopyInto(out *CloudStackClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CloudStackClusterList) DeepCopyObject ¶
func (in *CloudStackClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*CloudStackClusterList) Hub ¶
func (*CloudStackClusterList) Hub()
Hub marks CloudStackClusterList as a conversion hub.
type CloudStackClusterSpec ¶
type CloudStackClusterSpec struct { Zones []Zone `json:"zones"` // The kubernetes control plane endpoint. ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint"` // CloudStack account. // +optional Account string `json:"account,omitempty"` // CloudStack domain. // +optional Domain string `json:"domain,omitempty"` // +optional // +k8s:conversion-gen=false IdentityRef *CloudStackIdentityReference `json:"identityRef,omitempty"` }
CloudStackClusterSpec defines the desired state of CloudStackCluster.
func (*CloudStackClusterSpec) DeepCopy ¶
func (in *CloudStackClusterSpec) DeepCopy() *CloudStackClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackClusterSpec.
func (*CloudStackClusterSpec) DeepCopyInto ¶
func (in *CloudStackClusterSpec) DeepCopyInto(out *CloudStackClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudStackClusterStatus ¶
type CloudStackClusterStatus struct { // The status of the cluster's ACS Zones. // +optional Zones ZoneStatusMap `json:"zones,omitempty"` // CAPI recognizes failure domains as a method to spread machines. // CAPC sets failure domains to indicate functioning Zones. // +optional FailureDomains clusterv1.FailureDomains `json:"failureDomains,omitempty"` // Reflects the readiness of the CS cluster. Ready bool `json:"ready"` // Cloudstack Domain ID the cluster is built in. DomainID string `json:"domainID,omitempty"` // The CS public IP ID to use for the k8s endpoint. PublicIPID string `json:"publicIPID,omitempty"` // The ID of the network the PublicIP is in. PublicIPNetworkID string `json:"publicIPNetworkID,omitempty"` // The ID of the lb rule used to assign VMs to the lb. LBRuleID string `json:"loadBalancerRuleID,omitempty"` }
The status of the abstract CS k8s (not an actual Cloudstack Cluster) cluster.
func (*CloudStackClusterStatus) DeepCopy ¶
func (in *CloudStackClusterStatus) DeepCopy() *CloudStackClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackClusterStatus.
func (*CloudStackClusterStatus) DeepCopyInto ¶
func (in *CloudStackClusterStatus) DeepCopyInto(out *CloudStackClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudStackIdentityReference ¶
type CloudStackIdentityReference struct { // Kind of the identity. Must be supported by the infrastructure provider // and may be either cluster or namespace-scoped. // +kubebuilder:validation:MinLength=1 Kind string `json:"kind"` // Name of the infrastructure identity to be used. Name string `json:"name"` }
CloudStackIdentityReference is a reference to an infrastructure provider identity to be used to provision cluster resources.
func (*CloudStackIdentityReference) DeepCopy ¶
func (in *CloudStackIdentityReference) DeepCopy() *CloudStackIdentityReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackIdentityReference.
func (*CloudStackIdentityReference) DeepCopyInto ¶
func (in *CloudStackIdentityReference) DeepCopyInto(out *CloudStackIdentityReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudStackMachine ¶
type CloudStackMachine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CloudStackMachineSpec `json:"spec,omitempty"` Status CloudStackMachineStatus `json:"status,omitempty"` }
CloudStackMachine is the Schema for the cloudstackmachines API
func (CloudStackMachine) AffinityGroupName ¶
func (csm CloudStackMachine) AffinityGroupName( capiMachine *capiv1.Machine, ) (string, error)
The computed affinity group name relevant to this machine.
func (*CloudStackMachine) DeepCopy ¶
func (in *CloudStackMachine) DeepCopy() *CloudStackMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackMachine.
func (*CloudStackMachine) DeepCopyInto ¶
func (in *CloudStackMachine) DeepCopyInto(out *CloudStackMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CloudStackMachine) DeepCopyObject ¶
func (in *CloudStackMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*CloudStackMachine) Default ¶
func (r *CloudStackMachine) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*CloudStackMachine) Hub ¶
func (*CloudStackMachine) Hub()
Hub marks CloudStackMachine as a conversion hub.
func (*CloudStackMachine) SetupWebhookWithManager ¶
func (r *CloudStackMachine) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*CloudStackMachine) ValidateCreate ¶
func (r *CloudStackMachine) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*CloudStackMachine) ValidateDelete ¶
func (r *CloudStackMachine) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*CloudStackMachine) ValidateUpdate ¶
func (r *CloudStackMachine) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type CloudStackMachineList ¶
type CloudStackMachineList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []CloudStackMachine `json:"items"` }
CloudStackMachineList contains a list of CloudStackMachine
func (*CloudStackMachineList) DeepCopy ¶
func (in *CloudStackMachineList) DeepCopy() *CloudStackMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackMachineList.
func (*CloudStackMachineList) DeepCopyInto ¶
func (in *CloudStackMachineList) DeepCopyInto(out *CloudStackMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CloudStackMachineList) DeepCopyObject ¶
func (in *CloudStackMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*CloudStackMachineList) Hub ¶
func (*CloudStackMachineList) Hub()
Hub marks CloudStackMachineList as a conversion hub.
type CloudStackMachineSpec ¶
type CloudStackMachineSpec struct { // Instance ID. Should only be useful to modify an existing instance. InstanceID *string `json:"instanceID,omitempty"` // CloudStack compute offering. Offering CloudStackResourceIdentifier `json:"offering"` // CloudStack template to use. Template CloudStackResourceIdentifier `json:"template"` // CloudStack ssh key to use. // +optional SSHKey string `json:"sshKey"` // Optional details map for deployVirtualMachine Details map[string]string `json:"details,omitempty"` // Optional affinitygroupids for deployVirtualMachine // +optional AffinityGroupIDs []string `json:"affinitygroupids,omitempty"` // Mutually exclusive parameter with AffinityGroupIDs. // Defaults to `no`. Can be `pro` or `anti`. Will create an affinity group per machine set. // +optional Affinity string `json:"affinity,omitempty"` // The CS specific unique identifier. Of the form: fmt.Sprintf("cloudstack:///%s", CS Machine ID) // +optional ProviderID *string `json:"providerID,omitempty"` // Optionally settable Zone ID to land the machine in. ZoneID string `json:"zoneID,omitempty"` // Optionally settable Zone Name to land the machine in. ZoneName string `json:"zoneName,omitempty"` // IdentityRef is a reference to a identity to be used when reconciling this cluster // +optional // +k8s:conversion-gen=false IdentityRef *CloudStackIdentityReference `json:"identityRef,omitempty"` }
CloudStackMachineSpec defines the desired state of CloudStackMachine
func (*CloudStackMachineSpec) DeepCopy ¶
func (in *CloudStackMachineSpec) DeepCopy() *CloudStackMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackMachineSpec.
func (*CloudStackMachineSpec) DeepCopyInto ¶
func (in *CloudStackMachineSpec) DeepCopyInto(out *CloudStackMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudStackMachineStatus ¶
type CloudStackMachineStatus struct { // Zone ID is used so that the zone can be computed once per reconcile and then propagate. // +optional ZoneID string `json:"zoneID,omitempty"` // Addresses contains a CloudStack VM instance's IP addresses. Addresses []corev1.NodeAddress `json:"addresses,omitempty"` // InstanceState is the state of the CloudStack instance for this machine. // +optional InstanceState InstanceState `json:"instanceState,omitempty"` // Ready indicates the readiness of the provider resource. Ready bool `json:"ready"` }
Type pulled mostly from the CloudStack API.
func (*CloudStackMachineStatus) DeepCopy ¶
func (in *CloudStackMachineStatus) DeepCopy() *CloudStackMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackMachineStatus.
func (*CloudStackMachineStatus) DeepCopyInto ¶
func (in *CloudStackMachineStatus) DeepCopyInto(out *CloudStackMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudStackMachineTemplate ¶
type CloudStackMachineTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec CloudStackMachineTemplateSpec `json:"spec,omitempty"` }
CloudStackMachineTemplate is the Schema for the cloudstackmachinetemplates API
func (*CloudStackMachineTemplate) DeepCopy ¶
func (in *CloudStackMachineTemplate) DeepCopy() *CloudStackMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackMachineTemplate.
func (*CloudStackMachineTemplate) DeepCopyInto ¶
func (in *CloudStackMachineTemplate) DeepCopyInto(out *CloudStackMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CloudStackMachineTemplate) DeepCopyObject ¶
func (in *CloudStackMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*CloudStackMachineTemplate) Default ¶
func (r *CloudStackMachineTemplate) Default()
Default implements webhook.Defaulter so a webhook will be registered for the type
func (*CloudStackMachineTemplate) SetupWebhookWithManager ¶
func (r *CloudStackMachineTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*CloudStackMachineTemplate) ValidateCreate ¶
func (r *CloudStackMachineTemplate) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*CloudStackMachineTemplate) ValidateDelete ¶
func (r *CloudStackMachineTemplate) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*CloudStackMachineTemplate) ValidateUpdate ¶
func (r *CloudStackMachineTemplate) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type CloudStackMachineTemplateList ¶
type CloudStackMachineTemplateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []CloudStackMachineTemplate `json:"items"` }
CloudStackMachineTemplateList contains a list of CloudStackMachineTemplate
func (*CloudStackMachineTemplateList) DeepCopy ¶
func (in *CloudStackMachineTemplateList) DeepCopy() *CloudStackMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackMachineTemplateList.
func (*CloudStackMachineTemplateList) DeepCopyInto ¶
func (in *CloudStackMachineTemplateList) DeepCopyInto(out *CloudStackMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CloudStackMachineTemplateList) DeepCopyObject ¶
func (in *CloudStackMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CloudStackMachineTemplateResource ¶
type CloudStackMachineTemplateResource struct { // Standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata // +optional ObjectMeta metav1.ObjectMeta `json:"metadata,omitempty"` Spec CloudStackMachineSpec `json:"spec"` }
func (*CloudStackMachineTemplateResource) DeepCopy ¶
func (in *CloudStackMachineTemplateResource) DeepCopy() *CloudStackMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackMachineTemplateResource.
func (*CloudStackMachineTemplateResource) DeepCopyInto ¶
func (in *CloudStackMachineTemplateResource) DeepCopyInto(out *CloudStackMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudStackMachineTemplateSpec ¶
type CloudStackMachineTemplateSpec struct {
Spec CloudStackMachineTemplateResource `json:"template"`
}
CloudStackMachineTemplateSpec defines the desired state of CloudStackMachineTemplate
func (*CloudStackMachineTemplateSpec) DeepCopy ¶
func (in *CloudStackMachineTemplateSpec) DeepCopy() *CloudStackMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackMachineTemplateSpec.
func (*CloudStackMachineTemplateSpec) DeepCopyInto ¶
func (in *CloudStackMachineTemplateSpec) DeepCopyInto(out *CloudStackMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudStackResourceIdentifier ¶
type CloudStackResourceIdentifier struct { // Cloudstack resource ID. // +optional ID string `json:"id,omitempty"` // Cloudstack resource Name // +optional Name string `json:"name,omitempty"` }
func (*CloudStackResourceIdentifier) DeepCopy ¶
func (in *CloudStackResourceIdentifier) DeepCopy() *CloudStackResourceIdentifier
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackResourceIdentifier.
func (*CloudStackResourceIdentifier) DeepCopyInto ¶
func (in *CloudStackResourceIdentifier) DeepCopyInto(out *CloudStackResourceIdentifier)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Network ¶
type Network struct { // Cloudstack Network ID the cluster is built in. // +optional ID string `json:"id,omitempty"` // Cloudstack Network Type the cluster is built in. // + optional Type string `json:"type,omitempty"` // Cloudstack Network Name the cluster is built in. // +optional Name string `json:"name"` }
func (*Network) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network.
func (*Network) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Zone ¶
type Zone struct { // The Zone name. // + optional Name string `json:"name,omitempty"` // The CS zone ID the cluster is built in. // + optional ID string `json:"id,omitempty"` // The network within the Zone to use. Network Network `json:"network"` }
func (*Zone) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Zone.
func (*Zone) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZoneStatusMap ¶
func (ZoneStatusMap) DeepCopy ¶
func (in ZoneStatusMap) DeepCopy() ZoneStatusMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZoneStatusMap.
func (ZoneStatusMap) DeepCopyInto ¶
func (in ZoneStatusMap) DeepCopyInto(out *ZoneStatusMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ZoneStatusMap) GetByName ¶
func (zones ZoneStatusMap) GetByName(name string) *Zone
GetByName fetches a zone by name if present in the map of zone statuses. Needed as there's no short way to do this.
func (ZoneStatusMap) GetOne ¶
func (zones ZoneStatusMap) GetOne() *Zone
GetOne just returns a Zone from the map of zone statuses Needed as there's no short way to do this.