v1beta1

package
v1.3.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 13, 2024 License: Apache-2.0 Imports: 9 Imported by: 2

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

View Source
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"
)
View Source
const (
	// ClusterCategoryCreatedCondition indicates the status of the category linked to the NutanixCluster
	ClusterCategoryCreatedCondition capiv1.ConditionType = "ClusterCategoryCreated"

	ClusterCategoryCreationFailed = "ClusterCategoryCreationFailed"
)
View Source
const (
	// PrismCentralClientCondition indicates the status of the client used to connect to Prism Central
	PrismCentralClientCondition capiv1.ConditionType = "PrismClientInit"

	PrismCentralClientInitializationFailed = "PrismClientInitFailed"
)
View Source
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"
)
View Source
const (
	// VMAddressesAssignedCondition shows the status of the process of assigning the VMs to a project
	ProjectAssignedCondition capiv1.ConditionType = "ProjectAssigned"

	ProjectAssignationFailed = "ProjectAssignationFailed"
)
View Source
const (
	// CredentialRefSecretOwnerSetCondition shows the status of setting the Owner
	CredentialRefSecretOwnerSetCondition capiv1.ConditionType = "CredentialRefSecretOwnerSet"

	CredentialRefSecretOwnerSetFailed = "CredentialRefSecretOwnerSetFailed"
)
View Source
const (
	// Version is the API version.
	Version = "v1beta1"

	// GroupName is the name of the API group.
	GroupName = "infrastructure.cluster.x-k8s.io"
)
View Source
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"
)
View Source
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"
)
View Source
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"
)
View Source
const (
	DeletionFailed = "DeletionFailed"
)
View Source
const (
	// NutanixMachineTemplateKind represents the Kind of NutanixMachineTemplate
	NutanixMachineTemplateKind = "NutanixMachineTemplate"
)

Variables

View Source
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 added in v1.1.3

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

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

func (*NutanixCategoryIdentifier) DeepCopyInto

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) 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

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 NutanixFailureDomain added in v1.3.0

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
	// +listType=map
	// +listMapKey=type
	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 added in v1.3.0

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

func (*NutanixFailureDomain) DeepCopyInto added in v1.3.0

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 added in v1.2.0

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 added in v1.2.0

func (in *NutanixGPU) DeepCopy() *NutanixGPU

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

func (*NutanixGPU) DeepCopyInto added in v1.2.0

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 added in v1.2.0

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 string `json:"providerID"`
	// 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

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

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

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

func (*NutanixMachineTemplateList) DeepCopyInto

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

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

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

func (*NutanixMachineTemplateResource) DeepCopyInto

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

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

func (*NutanixMachineTemplateSpec) DeepCopyInto

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

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

func (*NutanixResourceIdentifier) DeepCopyInto

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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL