Documentation
¶
Overview ¶
Package v1beta1 contains the v1beta1 API implementation.
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 NutanixBootType
- type NutanixCategoryIdentifier
- type NutanixCluster
- func (in *NutanixCluster) DeepCopy() *NutanixCluster
- func (in *NutanixCluster) DeepCopyInto(out *NutanixCluster)
- func (in *NutanixCluster) DeepCopyObject() runtime.Object
- func (ncl *NutanixCluster) GetConditions() capiv1.Conditions
- func (ncl *NutanixCluster) GetNamespacedName() string
- func (ncl *NutanixCluster) GetPrismCentralCredentialRef() (*credentialTypes.NutanixCredentialReference, error)
- func (ncl *NutanixCluster) GetPrismCentralTrustBundle() *credentialTypes.NutanixTrustBundleReference
- func (*NutanixCluster) Hub()
- func (ncl *NutanixCluster) SetConditions(conditions capiv1.Conditions)
- type NutanixClusterList
- type NutanixClusterSpec
- type NutanixClusterStatus
- type NutanixClusterTemplate
- type NutanixClusterTemplateList
- type NutanixClusterTemplateResource
- type NutanixClusterTemplateSpec
- type NutanixFailureDomain
- type NutanixGPU
- type NutanixGPUIdentifierType
- type NutanixIdentifierType
- type NutanixMachine
- func (in *NutanixMachine) DeepCopy() *NutanixMachine
- func (in *NutanixMachine) DeepCopyInto(out *NutanixMachine)
- func (in *NutanixMachine) DeepCopyObject() runtime.Object
- func (nm *NutanixMachine) GetConditions() capiv1.Conditions
- func (*NutanixMachine) Hub()
- func (nm *NutanixMachine) SetConditions(conditions capiv1.Conditions)
- type NutanixMachineList
- type NutanixMachineSpec
- type NutanixMachineStatus
- type NutanixMachineTemplate
- type NutanixMachineTemplateList
- type NutanixMachineTemplateResource
- type NutanixMachineTemplateSpec
- type NutanixResourceIdentifier
Constants ¶
const ( DeletionFailed = "DeletionFailed" VolumeGroupDetachFailed = "VolumeGroupDetachFailed" )
const ( // FailureDomainsReconciled indicates the status of the failure domain reconciliation FailureDomainsReconciled capiv1.ConditionType = "FailureDomainsReconciled" // NoFailureDomainsReconciled indicates no failure domains have been defined NoFailureDomainsReconciled capiv1.ConditionType = "NoFailureDomainsReconciled" // FailureDomainsReconciliationFailed indicates the failure domain reconciliation failed FailureDomainsReconciliationFailed = "FailureDomainsReconciliationFailed" )
const ( // ClusterCategoryCreatedCondition indicates the status of the category linked to the NutanixCluster ClusterCategoryCreatedCondition capiv1.ConditionType = "ClusterCategoryCreated" ClusterCategoryCreationFailed = "ClusterCategoryCreationFailed" )
const ( // PrismCentralClientCondition indicates the status of the client used to connect to Prism Central PrismCentralClientCondition capiv1.ConditionType = "PrismClientInit" PrismCentralV4ClientCondition capiv1.ConditionType = "PrismClientV4Init" PrismCentralClientInitializationFailed = "PrismClientInitFailed" PrismCentralV4ClientInitializationFailed = "PrismClientV4InitFailed" )
const ( // VMProvisionedCondition shows the status of the VM provisioning process VMProvisionedCondition capiv1.ConditionType = "VMProvisioned" VMProvisionedTaskFailed = "FailedVMTask" // VMAddressesAssignedCondition shows the status of the process of assigning the VM addresses VMAddressesAssignedCondition capiv1.ConditionType = "VMAddressesAssigned" VMAddressesFailed = "VMAddressesFailed" VMBootTypeInvalid = "VMBootTypeInvalid" ClusterInfrastructureNotReady = "ClusterInfrastructureNotReady" BootstrapDataNotReady = "BootstrapDataNotReady" ControlplaneNotInitialized = "ControlplaneNotInitialized" )
const ( // VMAddressesAssignedCondition shows the status of the process of assigning the VMs to a project ProjectAssignedCondition capiv1.ConditionType = "ProjectAssigned" ProjectAssignationFailed = "ProjectAssignationFailed" )
const ( // CredentialRefSecretOwnerSetCondition shows the status of setting the Owner CredentialRefSecretOwnerSetCondition capiv1.ConditionType = "CredentialRefSecretOwnerSet" CredentialRefSecretOwnerSetFailed = "CredentialRefSecretOwnerSetFailed" TrustBundleSecretOwnerSetCondition = "TrustBundleSecretOwnerSet" TrustBundleSecretOwnerSetFailed = "TrustBundleSecretOwnerSetFailed" )
const ( // Version is the API version. Version = "v1beta1" // GroupName is the name of the API group. GroupName = "infrastructure.cluster.x-k8s.io" )
const ( // NutanixIdentifierUUID is a resource identifier identifying the object by UUID. NutanixIdentifierUUID NutanixIdentifierType = "uuid" // NutanixIdentifierName is a resource identifier identifying the object by Name. NutanixIdentifierName NutanixIdentifierType = "name" // NutanixBootTypeLegacy is a resource identifier identifying the legacy boot type for virtual machines. NutanixBootTypeLegacy NutanixBootType = "legacy" // NutanixBootTypeUEFI is a resource identifier identifying the UEFI boot type for virtual machines. NutanixBootTypeUEFI NutanixBootType = "uefi" // NutanixGPUIdentifierName is a resource identifier identifying a GPU by Name. NutanixGPUIdentifierName NutanixGPUIdentifierType = "name" // NutanixGPUIdentifierDeviceID is a resource identifier identifying a GPU using device ID. NutanixGPUIdentifierDeviceID NutanixGPUIdentifierType = "deviceID" // ObsoleteDefaultCAPICategoryPrefix is the obsolete default category prefix used for CAPI clusters. ObsoleteDefaultCAPICategoryPrefix = "kubernetes-io-cluster-" // DefaultCAPICategoryKeyForName is the default category key used for CAPI clusters for cluster names. DefaultCAPICategoryKeyForName = "KubernetesClusterName" // DefaultCAPICategoryDescription is the default category description used for CAPI clusters. DefaultCAPICategoryDescription = "Managed by CAPX" // ObsoleteDefaultCAPICategoryOwnedValue is the obsolete default category value used for CAPI clusters. ObsoleteDefaultCAPICategoryOwnedValue = "owned" )
const ( // NutanixClusterKind represents the Kind of NutanixCluster NutanixClusterKind = "NutanixCluster" // NutanixClusterFinalizer allows NutanixClusterReconciler to clean up AHV // resources associated with NutanixCluster before removing it from the // API Server. NutanixClusterFinalizer = "nutanixcluster.infrastructure.cluster.x-k8s.io" NutanixClusterCredentialFinalizer = "nutanixcluster/infrastructure.cluster.x-k8s.io" )
const ( // NutanixMachineKind represents the Kind of NutanixMachine NutanixMachineKind = "NutanixMachine" // NutanixMachineFinalizer allows NutanixMachineReconciler to clean up AHV // resources associated with NutanixMachine before removing it from the // API Server. NutanixMachineFinalizer = "nutanixmachine.infrastructure.cluster.x-k8s.io" // NutanixMachineBootstrapRefKindSecret represents the Kind of Secret // referenced by NutanixMachine's BootstrapRef. NutanixMachineBootstrapRefKindSecret = "Secret" // NutanixMachineBootstrapRefKindImage represents the Kind of Image // referenced by NutanixMachine's BootstrapRef. If the BootstrapRef.Kind is set // to Image, the NutanixMachine will be created with the image mounted // as a CD-ROM. NutanixMachineBootstrapRefKindImage = "Image" )
const (
// NutanixMachineTemplateKind represents the Kind of NutanixMachineTemplate
NutanixMachineTemplateKind = "NutanixMachineTemplate"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: GroupName, Version: Version} // 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 NutanixBootType ¶
type NutanixBootType string
NutanixBootType is an enumeration of different boot types.
type NutanixCategoryIdentifier ¶
type NutanixCategoryIdentifier struct {
// key is the Key of category in PC.
// +optional
Key string `json:"key,omitempty"`
// value is the category value linked to the category key in PC
// +optional
Value string `json:"value,omitempty"`
}
func (*NutanixCategoryIdentifier) DeepCopy ¶
func (in *NutanixCategoryIdentifier) DeepCopy() *NutanixCategoryIdentifier
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixCategoryIdentifier.
func (*NutanixCategoryIdentifier) DeepCopyInto ¶
func (in *NutanixCategoryIdentifier) DeepCopyInto(out *NutanixCategoryIdentifier)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixCluster ¶
type NutanixCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec NutanixClusterSpec `json:"spec,omitempty"`
Status NutanixClusterStatus `json:"status,omitempty"`
}
NutanixCluster is the Schema for the nutanixclusters API
func (*NutanixCluster) DeepCopy ¶
func (in *NutanixCluster) DeepCopy() *NutanixCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixCluster.
func (*NutanixCluster) DeepCopyInto ¶
func (in *NutanixCluster) DeepCopyInto(out *NutanixCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NutanixCluster) DeepCopyObject ¶
func (in *NutanixCluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NutanixCluster) GetConditions ¶
func (ncl *NutanixCluster) GetConditions() capiv1.Conditions
GetConditions returns the set of conditions for this object.
func (*NutanixCluster) GetNamespacedName ¶ added in v0.10.0
func (ncl *NutanixCluster) GetNamespacedName() string
GetNamespacedName returns the namespaced name of the NutanixCluster.
func (*NutanixCluster) GetPrismCentralCredentialRef ¶
func (ncl *NutanixCluster) GetPrismCentralCredentialRef() (*credentialTypes.NutanixCredentialReference, error)
func (*NutanixCluster) GetPrismCentralTrustBundle ¶ added in v0.10.0
func (ncl *NutanixCluster) GetPrismCentralTrustBundle() *credentialTypes.NutanixTrustBundleReference
GetPrismCentralTrustBundle returns the trust bundle reference for the Nutanix Prism Central.
func (*NutanixCluster) Hub ¶
func (*NutanixCluster) Hub()
Hub marks NutanixCluster as a conversion hub.
func (*NutanixCluster) SetConditions ¶
func (ncl *NutanixCluster) SetConditions(conditions capiv1.Conditions)
SetConditions sets the conditions on this object.
type NutanixClusterList ¶
type NutanixClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []NutanixCluster `json:"items"`
}
NutanixClusterList contains a list of NutanixCluster
func (*NutanixClusterList) DeepCopy ¶
func (in *NutanixClusterList) DeepCopy() *NutanixClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixClusterList.
func (*NutanixClusterList) DeepCopyInto ¶
func (in *NutanixClusterList) DeepCopyInto(out *NutanixClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NutanixClusterList) DeepCopyObject ¶
func (in *NutanixClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NutanixClusterList) Hub ¶
func (*NutanixClusterList) Hub()
Hub marks NutanixClusterList as a conversion hub.
type NutanixClusterSpec ¶
type NutanixClusterSpec struct {
// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
// host can be either DNS name or ip address
// +optional
ControlPlaneEndpoint capiv1.APIEndpoint `json:"controlPlaneEndpoint"`
// prismCentral holds the endpoint address and port to access the Nutanix Prism Central.
// When a cluster-wide proxy is installed, by default, this endpoint will be accessed via the proxy.
// Should you wish for communication with this endpoint not to be proxied, please add the endpoint to the
// proxy spec.noProxy list.
// +optional
PrismCentral *credentialTypes.NutanixPrismEndpoint `json:"prismCentral"`
// failureDomains configures failure domains information for the Nutanix platform.
// When set, the failure domains defined here may be used to spread Machines across
// prism element clusters to improve fault tolerance of the cluster.
// +listType=map
// +listMapKey=name
// +optional
FailureDomains []NutanixFailureDomain `json:"failureDomains"`
}
NutanixClusterSpec defines the desired state of NutanixCluster
func (*NutanixClusterSpec) DeepCopy ¶
func (in *NutanixClusterSpec) DeepCopy() *NutanixClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixClusterSpec.
func (*NutanixClusterSpec) DeepCopyInto ¶
func (in *NutanixClusterSpec) DeepCopyInto(out *NutanixClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixClusterStatus ¶
type NutanixClusterStatus struct {
// +optional
Ready bool `json:"ready,omitempty"`
FailureDomains capiv1.FailureDomains `json:"failureDomains,omitempty"`
// Conditions defines current service state of the NutanixCluster.
// +optional
Conditions capiv1.Conditions `json:"conditions,omitempty"`
// Will be set in case of failure of Cluster instance
// +optional
FailureReason *errors.ClusterStatusError `json:"failureReason,omitempty"`
// Will be set in case of failure of Cluster instance
// +optional
FailureMessage *string `json:"failureMessage,omitempty"`
}
NutanixClusterStatus defines the observed state of NutanixCluster
func (*NutanixClusterStatus) DeepCopy ¶
func (in *NutanixClusterStatus) DeepCopy() *NutanixClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixClusterStatus.
func (*NutanixClusterStatus) DeepCopyInto ¶
func (in *NutanixClusterStatus) DeepCopyInto(out *NutanixClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixClusterTemplate ¶
type NutanixClusterTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec NutanixClusterTemplateSpec `json:"spec,omitempty"`
}
NutanixClusterTemplate is the Schema for the nutanixclustertemplates API
func (*NutanixClusterTemplate) DeepCopy ¶
func (in *NutanixClusterTemplate) DeepCopy() *NutanixClusterTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixClusterTemplate.
func (*NutanixClusterTemplate) DeepCopyInto ¶
func (in *NutanixClusterTemplate) DeepCopyInto(out *NutanixClusterTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NutanixClusterTemplate) DeepCopyObject ¶
func (in *NutanixClusterTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NutanixClusterTemplateList ¶
type NutanixClusterTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []NutanixClusterTemplate `json:"items"`
}
NutanixClusterTemplateList contains a list of NutanixClusterTemplate
func (*NutanixClusterTemplateList) DeepCopy ¶
func (in *NutanixClusterTemplateList) DeepCopy() *NutanixClusterTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixClusterTemplateList.
func (*NutanixClusterTemplateList) DeepCopyInto ¶
func (in *NutanixClusterTemplateList) DeepCopyInto(out *NutanixClusterTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NutanixClusterTemplateList) DeepCopyObject ¶
func (in *NutanixClusterTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NutanixClusterTemplateResource ¶
type NutanixClusterTemplateResource struct {
Spec NutanixClusterSpec `json:"spec"`
}
NutanixClusterTemplateResource describes the data needed to create a NutanixCluster from a template.
func (*NutanixClusterTemplateResource) DeepCopy ¶
func (in *NutanixClusterTemplateResource) DeepCopy() *NutanixClusterTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixClusterTemplateResource.
func (*NutanixClusterTemplateResource) DeepCopyInto ¶
func (in *NutanixClusterTemplateResource) DeepCopyInto(out *NutanixClusterTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixClusterTemplateSpec ¶
type NutanixClusterTemplateSpec struct {
Template NutanixClusterTemplateResource `json:"template"`
}
NutanixClusterTemplateSpec defines the desired state of NutanixClusterTemplate
func (*NutanixClusterTemplateSpec) DeepCopy ¶
func (in *NutanixClusterTemplateSpec) DeepCopy() *NutanixClusterTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixClusterTemplateSpec.
func (*NutanixClusterTemplateSpec) DeepCopyInto ¶
func (in *NutanixClusterTemplateSpec) DeepCopyInto(out *NutanixClusterTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixFailureDomain ¶
type NutanixFailureDomain struct {
// name defines the unique name of a failure domain.
// Name is required and must be at most 64 characters in length.
// It must consist of only lower case alphanumeric characters and hyphens (-).
// It must start and end with an alphanumeric character.
// This value is arbitrary and is used to identify the failure domain within the platform.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=64
// +kubebuilder:validation:Pattern=`[a-z0-9]([-a-z0-9]*[a-z0-9])?`
Name string `json:"name"`
// cluster is to identify the cluster (the Prism Element under management of the Prism Central),
// in which the Machine's VM will be created. The cluster identifier (uuid or name) can be obtained
// from the Prism Central console or using the prism_central API.
// +kubebuilder:validation:Required
Cluster NutanixResourceIdentifier `json:"cluster"`
// subnets holds a list of identifiers (one or more) of the cluster's network subnets
// for the Machine's VM to connect to. The subnet identifiers (uuid or name) can be
// obtained from the Prism Central console or using the prism_central API.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinItems=1
Subnets []NutanixResourceIdentifier `json:"subnets"`
// indicates if a failure domain is suited for control plane nodes
// +kubebuilder:validation:Required
ControlPlane bool `json:"controlPlane,omitempty"`
}
NutanixFailureDomain configures failure domain information for Nutanix.
func (*NutanixFailureDomain) DeepCopy ¶
func (in *NutanixFailureDomain) DeepCopy() *NutanixFailureDomain
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixFailureDomain.
func (*NutanixFailureDomain) DeepCopyInto ¶
func (in *NutanixFailureDomain) DeepCopyInto(out *NutanixFailureDomain)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixGPU ¶
type NutanixGPU struct {
// Type is the identifier type to use for this resource.
// +kubebuilder:validation:Required
// +kubebuilder:validation:Enum:=deviceID;name
Type NutanixGPUIdentifierType `json:"type"`
// deviceID is the id of the GPU entity.
// +optional
DeviceID *int64 `json:"deviceID,omitempty"`
// name is the GPU name
// +optional
Name *string `json:"name,omitempty"`
}
func (*NutanixGPU) DeepCopy ¶
func (in *NutanixGPU) DeepCopy() *NutanixGPU
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixGPU.
func (*NutanixGPU) DeepCopyInto ¶
func (in *NutanixGPU) DeepCopyInto(out *NutanixGPU)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixGPUIdentifierType ¶
type NutanixGPUIdentifierType string
NutanixGPUIdentifierType is an enumeration of different resource identifier types for GPU entities.
type NutanixIdentifierType ¶
type NutanixIdentifierType string
NutanixIdentifierType is an enumeration of different resource identifier types.
type NutanixMachine ¶
type NutanixMachine struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec NutanixMachineSpec `json:"spec,omitempty"`
Status NutanixMachineStatus `json:"status,omitempty"`
}
NutanixMachine is the Schema for the nutanixmachines API
func (*NutanixMachine) DeepCopy ¶
func (in *NutanixMachine) DeepCopy() *NutanixMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixMachine.
func (*NutanixMachine) DeepCopyInto ¶
func (in *NutanixMachine) DeepCopyInto(out *NutanixMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NutanixMachine) DeepCopyObject ¶
func (in *NutanixMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NutanixMachine) GetConditions ¶
func (nm *NutanixMachine) GetConditions() capiv1.Conditions
GetConditions returns the set of conditions for this object.
func (*NutanixMachine) Hub ¶
func (*NutanixMachine) Hub()
Hub marks NutanixMachine as a conversion hub.
func (*NutanixMachine) SetConditions ¶
func (nm *NutanixMachine) SetConditions(conditions capiv1.Conditions)
SetConditions sets the conditions on this object.
type NutanixMachineList ¶
type NutanixMachineList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []NutanixMachine `json:"items"`
}
NutanixMachineList contains a list of NutanixMachine
func (*NutanixMachineList) DeepCopy ¶
func (in *NutanixMachineList) DeepCopy() *NutanixMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixMachineList.
func (*NutanixMachineList) DeepCopyInto ¶
func (in *NutanixMachineList) DeepCopyInto(out *NutanixMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NutanixMachineList) DeepCopyObject ¶
func (in *NutanixMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NutanixMachineList) Hub ¶
func (*NutanixMachineList) Hub()
Hub marks NutanixMachineList as a conversion hub.
type NutanixMachineSpec ¶
type NutanixMachineSpec struct {
// ProviderID is the unique identifier as specified by the cloud provider.
// +optional
ProviderID string `json:"providerID,omitempty"`
// vcpusPerSocket is the number of vCPUs per socket of the VM
// +kubebuilder:validation:Required
// +kubebuilder:validation:Minimum=1
VCPUsPerSocket int32 `json:"vcpusPerSocket"`
// vcpuSockets is the number of vCPU sockets of the VM
// +kubebuilder:validation:Required
// +kubebuilder:validation:Minimum=1
VCPUSockets int32 `json:"vcpuSockets"`
// memorySize is the memory size (in Quantity format) of the VM
// The minimum memorySize is 2Gi bytes
// +kubebuilder:validation:Required
MemorySize resource.Quantity `json:"memorySize"`
// image is to identify the rhcos image uploaded to the Prism Central (PC)
// The image identifier (uuid or name) can be obtained from the Prism Central console
// or using the prism_central API.
// +kubebuilder:validation:Required
Image NutanixResourceIdentifier `json:"image"`
// cluster is to identify the cluster (the Prism Element under management
// of the Prism Central), in which the Machine's VM will be created.
// The cluster identifier (uuid or name) can be obtained from the Prism Central console
// or using the prism_central API.
// +kubebuilder:validation:Optional
Cluster NutanixResourceIdentifier `json:"cluster"`
// subnet is to identify the cluster's network subnet to use for the Machine's VM
// The cluster identifier (uuid or name) can be obtained from the Prism Central console
// or using the prism_central API.
// +kubebuilder:validation:Optional
Subnets []NutanixResourceIdentifier `json:"subnet"`
// List of categories that need to be added to the machines. Categories must already exist in Prism Central
// +kubebuilder:validation:Optional
AdditionalCategories []NutanixCategoryIdentifier `json:"additionalCategories,omitempty"`
// Add the machine resources to a Prism Central project
// +optional
Project *NutanixResourceIdentifier `json:"project,omitempty"`
// Defines the boot type of the virtual machine. Only supports UEFI and Legacy
// +kubebuilder:validation:Optional
// +kubebuilder:validation:Enum:=legacy;uefi
BootType NutanixBootType `json:"bootType,omitempty"`
// systemDiskSize is size (in Quantity format) of the system disk of the VM
// The minimum systemDiskSize is 20Gi bytes
// +kubebuilder:validation:Required
SystemDiskSize resource.Quantity `json:"systemDiskSize"`
// BootstrapRef is a reference to a bootstrap provider-specific resource
// that holds configuration details.
// +optional
BootstrapRef *corev1.ObjectReference `json:"bootstrapRef,omitempty"`
// List of GPU devices that need to be added to the machines.
// +kubebuilder:validation:Optional
GPUs []NutanixGPU `json:"gpus,omitempty"`
}
NutanixMachineSpec defines the desired state of NutanixMachine
func (*NutanixMachineSpec) DeepCopy ¶
func (in *NutanixMachineSpec) DeepCopy() *NutanixMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixMachineSpec.
func (*NutanixMachineSpec) DeepCopyInto ¶
func (in *NutanixMachineSpec) DeepCopyInto(out *NutanixMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixMachineStatus ¶
type NutanixMachineStatus struct {
// Ready is true when the provider resource is ready.
// +optional
Ready bool `json:"ready"`
// Addresses contains the Nutanix VM associated addresses.
// Address type is one of Hostname, ExternalIP, InternalIP, ExternalDNS, InternalDNS
Addresses []capiv1.MachineAddress `json:"addresses,omitempty"`
// The Nutanix VM's UUID
// +optional
VmUUID string `json:"vmUUID,omitempty"`
// NodeRef is a reference to the corresponding workload cluster Node if it exists.
// Deprecated: Do not use. Will be removed in a future release.
// +optional
NodeRef *corev1.ObjectReference `json:"nodeRef,omitempty"`
// Conditions defines current service state of the NutanixMachine.
// +optional
Conditions capiv1.Conditions `json:"conditions,omitempty"`
// Will be set in case of failure of Machine instance
// +optional
FailureReason *errors.MachineStatusError `json:"failureReason,omitempty"`
// Will be set in case of failure of Machine instance
// +optional
FailureMessage *string `json:"failureMessage,omitempty"`
}
NutanixMachineStatus defines the observed state of NutanixMachine
func (*NutanixMachineStatus) DeepCopy ¶
func (in *NutanixMachineStatus) DeepCopy() *NutanixMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixMachineStatus.
func (*NutanixMachineStatus) DeepCopyInto ¶
func (in *NutanixMachineStatus) DeepCopyInto(out *NutanixMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixMachineTemplate ¶
type NutanixMachineTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec NutanixMachineTemplateSpec `json:"spec,omitempty"`
}
NutanixMachineTemplate is the Schema for the nutanixmachinetemplates API
func (*NutanixMachineTemplate) DeepCopy ¶
func (in *NutanixMachineTemplate) DeepCopy() *NutanixMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixMachineTemplate.
func (*NutanixMachineTemplate) DeepCopyInto ¶
func (in *NutanixMachineTemplate) DeepCopyInto(out *NutanixMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NutanixMachineTemplate) DeepCopyObject ¶
func (in *NutanixMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NutanixMachineTemplate) Hub ¶
func (*NutanixMachineTemplate) Hub()
Hub marks NutanixMachineTemplate as a conversion hub.
type NutanixMachineTemplateList ¶
type NutanixMachineTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []NutanixMachineTemplate `json:"items"`
}
NutanixMachineTemplateList contains a list of NutanixMachineTemplate
func (*NutanixMachineTemplateList) DeepCopy ¶
func (in *NutanixMachineTemplateList) DeepCopy() *NutanixMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixMachineTemplateList.
func (*NutanixMachineTemplateList) DeepCopyInto ¶
func (in *NutanixMachineTemplateList) DeepCopyInto(out *NutanixMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NutanixMachineTemplateList) DeepCopyObject ¶
func (in *NutanixMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NutanixMachineTemplateList) Hub ¶
func (*NutanixMachineTemplateList) Hub()
Hub marks NutanixMachineTemplateList as a conversion hub.
type NutanixMachineTemplateResource ¶
type NutanixMachineTemplateResource struct {
// Standard object metadata.
// Ref: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
// +optional
ObjectMeta capiv1.ObjectMeta `json:"metadata,omitempty"`
// Spec is the specification of the desired behavior of the machine.
Spec NutanixMachineSpec `json:"spec"`
}
NutanixMachineTemplateResource describes the data needed to create a NutanixMachine from a template
func (*NutanixMachineTemplateResource) DeepCopy ¶
func (in *NutanixMachineTemplateResource) DeepCopy() *NutanixMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixMachineTemplateResource.
func (*NutanixMachineTemplateResource) DeepCopyInto ¶
func (in *NutanixMachineTemplateResource) DeepCopyInto(out *NutanixMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixMachineTemplateSpec ¶
type NutanixMachineTemplateSpec struct {
Template NutanixMachineTemplateResource `json:"template"`
}
NutanixMachineTemplateSpec defines the desired state of NutanixMachineTemplate
func (*NutanixMachineTemplateSpec) DeepCopy ¶
func (in *NutanixMachineTemplateSpec) DeepCopy() *NutanixMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixMachineTemplateSpec.
func (*NutanixMachineTemplateSpec) DeepCopyInto ¶
func (in *NutanixMachineTemplateSpec) DeepCopyInto(out *NutanixMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NutanixResourceIdentifier ¶
type NutanixResourceIdentifier struct {
// Type is the identifier type to use for this resource.
// +kubebuilder:validation:Required
// +kubebuilder:validation:Enum:=uuid;name
Type NutanixIdentifierType `json:"type"`
// uuid is the UUID of the resource in the PC.
// +optional
UUID *string `json:"uuid,omitempty"`
// name is the resource name in the PC
// +optional
Name *string `json:"name,omitempty"`
}
NutanixResourceIdentifier holds the identity of a Nutanix PC resource (cluster, image, subnet, etc.) +union
func (*NutanixResourceIdentifier) DeepCopy ¶
func (in *NutanixResourceIdentifier) DeepCopy() *NutanixResourceIdentifier
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixResourceIdentifier.
func (*NutanixResourceIdentifier) DeepCopyInto ¶
func (in *NutanixResourceIdentifier) DeepCopyInto(out *NutanixResourceIdentifier)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.