v1beta1

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Mar 25, 2024 License: GPL-3.0 Imports: 16 Imported by: 0

Documentation

Overview

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

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 (
	// VMProvisionedCondition documents the status of the provisioning of a ICSMachine and its underlying ICSVM.
	VMProvisionedCondition clusterv1.ConditionType = "VMProvisioned"

	// WaitingForClusterInfrastructureReason (Severity=Info) documents a ICSMachine waiting for the cluster
	// infrastructure to be ready before starting the provisioning process.
	//
	// NOTE: This reason does not apply to ICSVM (this state happens before the ICSVM is actually created).
	WaitingForClusterInfrastructureReason = "WaitingForClusterInfrastructure"

	// WaitingForBootstrapDataReason (Severity=Info) documents a ICSMachine waiting for the bootstrap
	// script to be ready before starting the provisioning process.
	//
	// NOTE: This reason does not apply to ICSVM (this state happens before the ICSVM is actually created).
	WaitingForBootstrapDataReason = "WaitingForBootstrapData"

	// WaitingForStaticIPAllocationReason (Severity=Info) documents a ICSVM waiting for the allocation of
	// a static IP address.
	WaitingForStaticIPAllocationReason = "WaitingForStaticIPAllocation"

	// CloningReason documents (Severity=Info) a ICSMachine/ICSVM currently executing the clone operation.
	CloningReason = "Cloning"

	// CloningFailedReason (Severity=Warning) documents a ICSMachine/ICSVM controller detecting
	// an error while provisioning; those kind of errors are usually transient and failed provisioning
	// are automatically re-tried by the controller.
	CloningFailedReason = "CloningFailed"

	// PoweringOnReason documents (Severity=Info) a ICSMachine/ICSVM currently executing the power on sequence.
	PoweringOnReason = "PoweringOn"

	// PoweringOnFailedReason (Severity=Warning) documents a ICSMachine/ICSVM controller detecting
	// an error while powering on; those kind of errors are usually transient and failed provisioning
	// are automatically re-tried by the controller.
	PoweringOnFailedReason = "PoweringOnFailed"

	// TaskFailure (Severity=Warning) documents a ICSMachine/ICS task failure; the reconcile look will automatically
	// retry the operation, but a user intervention might be required to fix the problem.
	TaskFailure = "TaskFailure"

	// WaitingForNetworkAddressesReason (Severity=Info) documents a ICSMachine waiting for the the machine network
	// settings to be reported after machine being powered on.
	//
	// NOTE: This reason does not apply to ICSVM (this state happens after the ICSVM is in ready state).
	WaitingForNetworkAddressesReason = "WaitingForNetworkAddresses"

	// TagsAttachmentFailedReason (Severity=Error) documents a ICSMachine/ICSVM tags attachment failure.
	TagsAttachmentFailedReason = "TagsAttachmentFailed"
)
View Source
const (
	// ICenterAvailableCondition documents the connectivity with icenter
	// for a given resource.
	ICenterAvailableCondition clusterv1.ConditionType = "ICenterAvailable"

	// ICenterUnreachableReason (Severity=Error) documents a controller detecting
	// issues with ICenter reachability.
	ICenterUnreachableReason = "ICenterUnreachable"
)

Conditions and Reasons related to utilizing a ICSIdentity to make connections to a ICenter. Can currently be used by ICSCluster and ICSVM.

View Source
const (
	// ClusterModulesAvailableCondition documents the availability of cluster modules for the ICSCluster object.
	ClusterModulesAvailableCondition clusterv1.ConditionType = "ClusterModulesAvailable"

	// MissingICenterVersionReason (Severity=Warning) documents a controller detecting
	//  the scenario in which the iCenter version is not set in the status of the ICSCluster object.
	MissingICenterVersionReason = "MissingICenterVersion"

	// ICenterVersionIncompatibleReason (Severity=Info) documents the case where the iCenter version of the
	// ICSCluster object does not support cluster modules.
	ICenterVersionIncompatibleReason = "ICenterVersionIncompatible"

	// ClusterModuleSetupFailedReason (Severity=Warning) documents a controller detecting
	// issues when setting up anti-affinity constraints via cluster modules for objects
	// belonging to the cluster.
	ClusterModuleSetupFailedReason = "ClusterModuleSetupFailed"
)
View Source
const (
	// CredentialsAvailableCondidtion is used by ICSClusterIdentity when a credential
	// secret is available and unused by other ICSClusterIdentities.
	CredentialsAvailableCondidtion clusterv1.ConditionType = "CredentialsAvailable"

	// SecretNotAvailableReason is used when the secret referenced by the ICSClusterIdentity cannot be found.
	SecretNotAvailableReason = "SecretNotAvailable"

	// SecretOwnerReferenceFailedReason is used for errors while updating the owner reference of the secret.
	SecretOwnerReferenceFailedReason = "SecretOwnerReferenceFailed"

	// SecretAlreadyInUseReason is used when another ICSClusterIdentity is using the secret.
	SecretAlreadyInUseReason = "SecretInUse"
)
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 (
	// VirtualMachineStateNotFound is the string representing a VM that
	// cannot be located.
	VirtualMachineStateNotFound = VirtualMachineState("notfound")

	// VirtualMachineStatePending is the string representing a VM with an in-flight task.
	VirtualMachineStatePending = VirtualMachineState("pending")

	// VirtualMachineStateReady is the string representing a powered-on VM with reported IP addresses.
	VirtualMachineStateReady = VirtualMachineState("ready")
)
View Source
const (
	// VirtualMachinePowerStatePoweredOn is the string representing a VM in powered on state
	VirtualMachinePowerStatePoweredOn = VirtualMachinePowerState("poweredOn")

	// VirtualMachinePowerStatePoweredOff is the string representing a VM in powered off state
	VirtualMachinePowerStatePoweredOff = VirtualMachinePowerState("poweredOff")

	// VirtualMachinePowerStateSuspended is the string representing a VM in suspended state
	VirtualMachinePowerStateSuspended = VirtualMachinePowerState("suspended")
)
View Source
const (
	// ClusterFinalizer allows ReconcileICSCluster to clean up ics
	// resources associated with ICSCluster before removing it from the
	// API server.
	ClusterFinalizer = "icscluster.infrastructure.cluster.x-k8s.io"
)
View Source
const (
	// DataFinalizer allows IPAddressReconciler to clean up resources
	// associated with IPAddress before removing it from the apiserver.
	IPAddressFinalizer = "ipaddress.infrastructure.cluster.x-k8s.io"
)
View Source
const (
	// MachineFinalizer allows ReconcileICSMachine to clean up ICS
	// resources associated with ICSMachine before removing it from the
	// API Server.
	MachineFinalizer = "icsmachine.infrastructure.cluster.x-k8s.io"
)
View Source
const (
	// PlacementConstraintMetCondition documents whether the placement constraint is configured correctly or not.
	PlacementConstraintMetCondition clusterv1.ConditionType = "PlacementConstraintMet"
)
View Source
const (
	// VMFinalizer allows the reconciler to clean up resources associated
	// with a ICSVM before removing it from the API Server.
	VMFinalizer = "icsvm.infrastructure.cluster.x-k8s.io"
)

Variables

View Source
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
)
View Source
var (
	SecretKind = ICSIdentityKind("Secret")
)

Functions

This section is empty.

Types

type CloneMode

type CloneMode string

CloneMode is the type of clone operation used to clone a VM from a template.

const (
	// FullClone indicates a VM will have no relationship to the source of the
	// clone operation once the operation is complete. This is the safest clone
	// mode, but it is not the fastest.
	FullClone CloneMode = "fullClone"

	// LinkedClone means resulting VMs will be dependent upon the snapshot of
	// the source VM/template from which the VM was cloned. This is the fastest
	// clone mode, but it also prevents expanding a VMs disk beyond the size of
	// the source VM/template.
	LinkedClone CloneMode = "linkedClone"
)

type ClusterModule

type ClusterModule struct {
	// ControlPlane indicates whether the referred object is responsible for control plane nodes.
	// Currently, only the KubeadmControlPlane objects have this flag set to true.
	// Only a single object in the slice can have this value set to true.
	ControlPlane bool `json:"controlPlane"`

	// TargetObjectName points to the object that uses the Cluster Module information to enforce
	// anti-affinity amongst its descendant VM objects.
	TargetObjectName string `json:"targetObjectName"`

	// ModuleUUID is the unique identifier of the `ClusterModule` used by the object.
	ModuleUUID string `json:"moduleUUID"`
}

ClusterModule holds the anti affinity construct `ClusterModule` identifier in use by the VMs owned by the object referred by the TargetObjectName field.

func (*ClusterModule) DeepCopy

func (in *ClusterModule) DeepCopy() *ClusterModule

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

func (*ClusterModule) DeepCopyInto

func (in *ClusterModule) DeepCopyInto(out *ClusterModule)

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

type ICSCluster

type ICSCluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ICSClusterSpec   `json:"spec,omitempty"`
	Status ICSClusterStatus `json:"status,omitempty"`
}

ICSCluster is the Schema for the icsclusters API

func (*ICSCluster) DeepCopy

func (in *ICSCluster) DeepCopy() *ICSCluster

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

func (*ICSCluster) DeepCopyInto

func (in *ICSCluster) DeepCopyInto(out *ICSCluster)

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

func (*ICSCluster) DeepCopyObject

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

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

func (*ICSCluster) Default

func (r *ICSCluster) Default()

Default satisfies the defaulting webhook interface.

func (*ICSCluster) GetConditions

func (m *ICSCluster) GetConditions() clusterv1.Conditions

func (*ICSCluster) Hub

func (*ICSCluster) Hub()

Hub marks ICSCluster as a conversion hub.

func (*ICSCluster) SetConditions

func (m *ICSCluster) SetConditions(conditions clusterv1.Conditions)

func (*ICSCluster) SetupWebhookWithManager

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

func (*ICSCluster) ValidateCreate

func (r *ICSCluster) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*ICSCluster) ValidateDelete

func (r *ICSCluster) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*ICSCluster) ValidateUpdate

func (r *ICSCluster) ValidateUpdate(oldRaw runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type ICSClusterList

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

ICSClusterList contains a list of ICSCluster

func (*ICSClusterList) DeepCopy

func (in *ICSClusterList) DeepCopy() *ICSClusterList

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

func (*ICSClusterList) DeepCopyInto

func (in *ICSClusterList) DeepCopyInto(out *ICSClusterList)

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

func (*ICSClusterList) DeepCopyObject

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

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

func (*ICSClusterList) Hub

func (*ICSClusterList) Hub()

Hub marks ICSClusterList as a conversion hub.

func (*ICSClusterList) SetupWebhookWithManager

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

type ICSClusterSpec

type ICSClusterSpec struct {
	// The name of the cloud to use from the clouds secret
	// +optional
	CloudName string `json:"cloudName"`

	// IdentityRef is a reference to either a Secret that contains
	// the identity to use when reconciling the cluster.
	// +optional
	IdentityRef *ICSIdentityReference `json:"identityRef,omitempty"`

	// Insecure is a flag that controls whether or not to validate the
	// ics server's certificate.
	// +optional
	Insecure *bool `json:"insecure,omitempty"`

	// ControlPlaneEndpoint represents the endpoint used to communicate with the control plane.
	// +optional
	ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint,omitempty"`

	// ClusterModules hosts information regarding the anti-affinity ICS constructs
	// for each of the objects responsible for creation of VM objects belonging to the cluster.
	// +optional
	ClusterModules []ClusterModule `json:"clusterModules,omitempty"`
}

ICSClusterSpec defines the desired state of ICSCluster

func (*ICSClusterSpec) DeepCopy

func (in *ICSClusterSpec) DeepCopy() *ICSClusterSpec

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

func (*ICSClusterSpec) DeepCopyInto

func (in *ICSClusterSpec) DeepCopyInto(out *ICSClusterSpec)

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

type ICSClusterStatus

type ICSClusterStatus struct {
	// +optional
	Ready bool `json:"ready,omitempty"`

	// Conditions defines current service state of the ICSCluster.
	// +optional
	Conditions clusterv1.Conditions `json:"conditions,omitempty"`

	// ICenterVersion defines the version of the iCenter server defined in the spec.
	ICenterVersion ICenterVersion `json:"iCenterVersion,omitempty"`
}

ICSClusterStatus defines the observed state of ICSCluster

func (*ICSClusterStatus) DeepCopy

func (in *ICSClusterStatus) DeepCopy() *ICSClusterStatus

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

func (*ICSClusterStatus) DeepCopyInto

func (in *ICSClusterStatus) DeepCopyInto(out *ICSClusterStatus)

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

type ICSIdentityKind

type ICSIdentityKind string

type ICSIdentityReference

type ICSIdentityReference struct {
	// Kind of the identity. Can either be Secret
	// +kubebuilder:validation:Enum=Secret
	Kind ICSIdentityKind `json:"kind"`

	// Name of the identity.
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
}

func (*ICSIdentityReference) DeepCopy

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

func (*ICSIdentityReference) DeepCopyInto

func (in *ICSIdentityReference) DeepCopyInto(out *ICSIdentityReference)

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

type ICSMachine

type ICSMachine struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ICSMachineSpec   `json:"spec,omitempty"`
	Status ICSMachineStatus `json:"status,omitempty"`
}

ICSMachine is the Schema for the icsmachines API

func (*ICSMachine) DeepCopy

func (in *ICSMachine) DeepCopy() *ICSMachine

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

func (*ICSMachine) DeepCopyInto

func (in *ICSMachine) DeepCopyInto(out *ICSMachine)

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

func (*ICSMachine) DeepCopyObject

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

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

func (*ICSMachine) Default

func (r *ICSMachine) Default()

Default satisfies the defaulting webhook interface.

func (*ICSMachine) GetConditions

func (m *ICSMachine) GetConditions() clusterv1.Conditions

func (*ICSMachine) Hub

func (*ICSMachine) Hub()

Hub marks ICSMachine as a conversion hub.

func (*ICSMachine) SetConditions

func (m *ICSMachine) SetConditions(conditions clusterv1.Conditions)

func (*ICSMachine) SetupWebhookWithManager

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

func (*ICSMachine) ValidateCreate

func (r *ICSMachine) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*ICSMachine) ValidateDelete

func (r *ICSMachine) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*ICSMachine) ValidateUpdate

func (r *ICSMachine) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type ICSMachineList

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

ICSMachineList contains a list of ICSMachine

func (*ICSMachineList) DeepCopy

func (in *ICSMachineList) DeepCopy() *ICSMachineList

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

func (*ICSMachineList) DeepCopyInto

func (in *ICSMachineList) DeepCopyInto(out *ICSMachineList)

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

func (*ICSMachineList) DeepCopyObject

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

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

func (*ICSMachineList) Hub

func (*ICSMachineList) Hub()

Hub marks ICSMachineList as a conversion hub.

func (*ICSMachineList) SetupWebhookWithManager

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

type ICSMachineSpec

type ICSMachineSpec struct {
	VirtualMachineCloneSpec `json:",inline"`

	// ProviderID is the virtual machine's BIOS UUID formated as
	// ics://12345678-1234-1234-1234-123456789abc
	// +optional
	ProviderID *string `json:"providerID,omitempty"`
}

ICSMachineSpec defines the desired state of ICSMachine

func (*ICSMachineSpec) DeepCopy

func (in *ICSMachineSpec) DeepCopy() *ICSMachineSpec

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

func (*ICSMachineSpec) DeepCopyInto

func (in *ICSMachineSpec) DeepCopyInto(out *ICSMachineSpec)

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

type ICSMachineStatus

type ICSMachineStatus struct {
	// Ready is true when the provider resource is ready.
	// +optional
	Ready bool `json:"ready"`

	// Addresses contains the ICS instance associated addresses.
	Addresses []clusterv1.MachineAddress `json:"addresses,omitempty"`

	// Network returns the network status for each of the machine's configured
	// network interfaces.
	// +optional
	Network []NetworkStatus `json:"network,omitempty"`

	// FailureReason 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
	FailureReason *errors.MachineStatusError `json:"failureReason,omitempty"`

	// FailureMessage 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
	FailureMessage *string `json:"failureMessage,omitempty"`

	// Conditions defines current service state of the ICSMachine.
	// +optional
	Conditions clusterv1.Conditions `json:"conditions,omitempty"`
}

ICSMachineStatus defines the observed state of ICSMachine

func (*ICSMachineStatus) DeepCopy

func (in *ICSMachineStatus) DeepCopy() *ICSMachineStatus

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

func (*ICSMachineStatus) DeepCopyInto

func (in *ICSMachineStatus) DeepCopyInto(out *ICSMachineStatus)

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

type ICSMachineTemplate

type ICSMachineTemplate struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec ICSMachineTemplateSpec `json:"spec,omitempty"`
}

ICSMachineTemplate is the Schema for the icsmachinetemplates API

func (*ICSMachineTemplate) DeepCopy

func (in *ICSMachineTemplate) DeepCopy() *ICSMachineTemplate

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

func (*ICSMachineTemplate) DeepCopyInto

func (in *ICSMachineTemplate) DeepCopyInto(out *ICSMachineTemplate)

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

func (*ICSMachineTemplate) DeepCopyObject

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

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

func (*ICSMachineTemplate) Hub

func (*ICSMachineTemplate) Hub()

Hub marks ICSMachineTemplate as a conversion hub.

func (*ICSMachineTemplate) SetupWebhookWithManager

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

func (*ICSMachineTemplate) ValidateCreate

func (r *ICSMachineTemplate) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*ICSMachineTemplate) ValidateDelete

func (r *ICSMachineTemplate) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*ICSMachineTemplate) ValidateUpdate

func (r *ICSMachineTemplate) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type ICSMachineTemplateList

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

ICSMachineTemplateList contains a list of ICSMachineTemplate

func (*ICSMachineTemplateList) DeepCopy

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

func (*ICSMachineTemplateList) DeepCopyInto

func (in *ICSMachineTemplateList) DeepCopyInto(out *ICSMachineTemplateList)

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

func (*ICSMachineTemplateList) DeepCopyObject

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

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

func (*ICSMachineTemplateList) Hub

func (*ICSMachineTemplateList) Hub()

Hub marks ICSMachineTemplateList as a conversion hub.

func (*ICSMachineTemplateList) SetupWebhookWithManager

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

type ICSMachineTemplateResource

type ICSMachineTemplateResource struct {
	// Spec is the specification of the desired behavior of the machine.
	Spec ICSMachineSpec `json:"spec"`
}

ICSMachineTemplateResource describes the data needed to create a ICSMachine from a template

func (*ICSMachineTemplateResource) DeepCopy

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

func (*ICSMachineTemplateResource) DeepCopyInto

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

type ICSMachineTemplateSpec

type ICSMachineTemplateSpec struct {
	Template ICSMachineTemplateResource `json:"template"`
}

ICSMachineTemplateSpec defines the desired state of ICSMachineTemplate

func (*ICSMachineTemplateSpec) DeepCopy

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

func (*ICSMachineTemplateSpec) DeepCopyInto

func (in *ICSMachineTemplateSpec) DeepCopyInto(out *ICSMachineTemplateSpec)

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

type ICSVM

type ICSVM struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ICSVMSpec   `json:"spec,omitempty"`
	Status ICSVMStatus `json:"status,omitempty"`
}

ICSVM is the Schema for the icsvms API

func (*ICSVM) DeepCopy

func (in *ICSVM) DeepCopy() *ICSVM

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

func (*ICSVM) DeepCopyInto

func (in *ICSVM) DeepCopyInto(out *ICSVM)

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

func (*ICSVM) DeepCopyObject

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

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

func (*ICSVM) GetConditions

func (r *ICSVM) GetConditions() clusterv1.Conditions

func (*ICSVM) Hub

func (*ICSVM) Hub()

Hub marks ICSVM as a conversion hub.

func (*ICSVM) SetConditions

func (r *ICSVM) SetConditions(conditions clusterv1.Conditions)

func (*ICSVM) SetupWebhookWithManager

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

func (*ICSVM) ValidateCreate

func (r *ICSVM) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*ICSVM) ValidateDelete

func (r *ICSVM) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*ICSVM) ValidateUpdate

func (r *ICSVM) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type ICSVMList

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

ICSVMList contains a list of ICSVM

func (*ICSVMList) DeepCopy

func (in *ICSVMList) DeepCopy() *ICSVMList

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

func (*ICSVMList) DeepCopyInto

func (in *ICSVMList) DeepCopyInto(out *ICSVMList)

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

func (*ICSVMList) DeepCopyObject

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

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

func (*ICSVMList) Hub

func (*ICSVMList) Hub()

Hub marks ICSVMList as a conversion hub.

func (*ICSVMList) SetupWebhookWithManager

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

type ICSVMSpec

type ICSVMSpec struct {
	VirtualMachineCloneSpec `json:",inline"`

	// BootstrapRef is a reference to a bootstrap provider-specific resource
	// that holds configuration details.
	// This field is optional in case no bootstrap data is required to create
	// a VM.
	// +optional
	BootstrapRef *corev1.ObjectReference `json:"bootstrapRef,omitempty"`

	// BiosUUID is the the VM's BIOS UUID that is assigned at runtime after
	// the VM has been created.
	// This field is required at runtime for other controllers that read
	// this CRD as unstructured data.
	// +optional
	BiosUUID string `json:"biosUUID,omitempty"`

	// UID is the the VM's ID that is assigned at runtime after
	// the VM has been created.
	// This field is required at runtime for other controllers that read
	// this CRD as unstructured data.
	// +optional
	UID string `json:"UID,omitempty"`
}

ICSVMSpec defines the desired state of ICSVM

func (*ICSVMSpec) DeepCopy

func (in *ICSVMSpec) DeepCopy() *ICSVMSpec

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

func (*ICSVMSpec) DeepCopyInto

func (in *ICSVMSpec) DeepCopyInto(out *ICSVMSpec)

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

type ICSVMStatus

type ICSVMStatus struct {
	// Host describes the hostname or IP address of the infrastructure host
	// that the ICSVM is residing on.
	// +optional
	Host string `json:"host,omitempty"`

	// Ready is true when the provider resource is ready.
	// This field is required at runtime for other controllers that read
	// this CRD as unstructured data.
	// +optional
	Ready bool `json:"ready,omitempty"`

	// Addresses is a list of the VM's IP addresses.
	// This field is required at runtime for other controllers that read
	// this CRD as unstructured data.
	// +optional
	Addresses []string `json:"addresses,omitempty"`

	// CloneMode is the type of clone operation used to clone this VM. Since
	// LinkedMode is the default but fails gracefully if the source of the
	// clone has no snapshots, this field may be used to determine the actual
	// type of clone operation used to create this VM.
	// +optional
	CloneMode CloneMode `json:"cloneMode,omitempty"`

	// Snapshot is the name of the snapshot from which the VM was cloned if
	// LinkedMode is enabled.
	// +optional
	Snapshot string `json:"snapshot,omitempty"`

	// TaskRef is a managed object reference to a Task related to the machine.
	// This value is set automatically at runtime and should not be set or
	// modified by users.
	// +optional
	TaskRef string `json:"taskRef,omitempty"`

	// Network returns the network status for each of the machine's configured
	// network interfaces.
	// +optional
	Network []NetworkStatus `json:"network,omitempty"`

	// FailureReason will be set in the event that there is a terminal problem
	// reconciling the icsvm and will contain a succinct value suitable
	// for vm 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 vm.
	//
	// Any transient errors that occur during the reconciliation of icsvms
	// can be added as events to the icsvm object and/or logged in the
	// controller's output.
	// +optional
	FailureReason *errors.MachineStatusError `json:"failureReason,omitempty"`

	// FailureMessage will be set in the event that there is a terminal problem
	// reconciling the icsvm 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 vm.
	//
	// Any transient errors that occur during the reconciliation of icsvms
	// can be added as events to the icsvm object and/or logged in the
	// controller's output.
	// +optional
	FailureMessage *string `json:"failureMessage,omitempty"`

	// Conditions defines current service state of the ICSVM.
	// +optional
	Conditions clusterv1.Conditions `json:"conditions,omitempty"`

	// ModuleUUID is the unique identifier for the iCenter cluster module construct
	// which is used to configure anti-affinity. Objects with the same ModuleUUID
	// will be anti-affined, meaning that the iCenter DRS will best effort schedule
	// the VMs on separate hosts.
	// +optional
	ModuleUUID *string `json:"moduleUUID,omitempty"`
}

ICSVMStatus defines the observed state of ICSVM

func (*ICSVMStatus) DeepCopy

func (in *ICSVMStatus) DeepCopy() *ICSVMStatus

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

func (*ICSVMStatus) DeepCopyInto

func (in *ICSVMStatus) DeepCopyInto(out *ICSVMStatus)

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

type ICenterVersion

type ICenterVersion string

ICenterVersion conveys the API version of the iCenter instance.

func NewICenterVersion

func NewICenterVersion(version string) ICenterVersion

type IPAddress

type IPAddress struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec IPAddressSpec `json:"spec,omitempty"`
}

IPAddress is the Schema for the ipaddresses API

func (*IPAddress) DeepCopy

func (in *IPAddress) DeepCopy() *IPAddress

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

func (*IPAddress) DeepCopyInto

func (in *IPAddress) DeepCopyInto(out *IPAddress)

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

func (*IPAddress) DeepCopyObject

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

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

func (*IPAddress) SetupWebhookWithManager

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

func (*IPAddress) ValidateCreate

func (r *IPAddress) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type.

func (*IPAddress) ValidateDelete

func (r *IPAddress) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type.

func (*IPAddress) ValidateUpdate

func (r *IPAddress) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type.

type IPAddressList

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

IPAddressList contains a list of IPAddress

func (*IPAddressList) DeepCopy

func (in *IPAddressList) DeepCopy() *IPAddressList

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

func (*IPAddressList) DeepCopyInto

func (in *IPAddressList) DeepCopyInto(out *IPAddressList)

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

func (*IPAddressList) DeepCopyObject

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

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

func (*IPAddressList) SetupWebhookWithManager

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

type IPAddressSpec

type IPAddressSpec struct {

	// VM points to the object the ICSVM was created for.
	VMRef corev1.ObjectReference `json:"vmRef"`

	// Template is the ICSMachineTemplate this was generated from.
	TemplateRef corev1.ObjectReference `json:"templateRef,omitempty"`

	// +kubebuilder:validation:Maximum=128
	// Prefix is the mask of the network as integer (max 128)
	Prefix int `json:"prefix,omitempty"`

	// Gateway is the gateway ip address
	Gateway *string `json:"gateway,omitempty"`

	// Address contains the IP address
	Address string `json:"address"`

	// MACAddr is the MAC address used by this device.
	// It is generally a good idea to omit this field and allow a MAC address
	// to be generated.
	// Please note that this value must use the InCloud Sphere OUI to work with the
	// in-tree ics cloud provider.
	// +optional
	MACAddr string `json:"macAddr,omitempty"`

	// DNSServers is the list of dns servers
	DNSServers []string `json:"dnsServers,omitempty"`
}

IPAddressSpec defines the desired state of IPAddress.

func (*IPAddressSpec) DeepCopy

func (in *IPAddressSpec) DeepCopy() *IPAddressSpec

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

func (*IPAddressSpec) DeepCopyInto

func (in *IPAddressSpec) DeepCopyInto(out *IPAddressSpec)

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

type NetworkDeviceSpec

type NetworkDeviceSpec struct {
	// NetworkName is the name of the ics network to which the device
	// will be connected.
	NetworkName string `json:"networkName"`

	// DeviceName may be used to explicitly assign a name to the network device
	// as it exists in the guest operating system.
	// +optional
	DeviceName string `json:"deviceName,omitempty"`

	// DHCP4 is a flag that indicates whether or not to use DHCP for IPv4
	// on this device.
	// If true then IPAddrs should not contain any IPv4 addresses.
	// +optional
	DHCP4 bool `json:"dhcp4,omitempty"`

	// DHCP6 is a flag that indicates whether or not to use DHCP for IPv6
	// on this device.
	// If true then IPAddrs should not contain any IPv6 addresses.
	// +optional
	DHCP6 bool `json:"dhcp6,omitempty"`

	// Gateway4 is the IPv4 gateway used by this device.
	// Required when DHCP4 is false.
	// +optional
	Gateway4 string `json:"gateway4,omitempty"`

	// Gateway4 is the IPv4 gateway used by this device.
	// Required when DHCP6 is false.
	// +optional
	Gateway6 string `json:"gateway6,omitempty"`

	// IPAddrs is a list of one or more IPv4 and/or IPv6 addresses to assign
	// to this device.
	// Required when DHCP4 and DHCP6 are both false.
	// +optional
	IPAddrs []string `json:"ipAddrs,omitempty"`

	// MTU is the device’s Maximum Transmission Unit size in bytes.
	// +optional
	MTU *int64 `json:"mtu,omitempty"`

	// MACAddr is the MAC address used by this device.
	// It is generally a good idea to omit this field and allow a MAC address
	// to be generated.
	// Please note that this value must use the InCloud Sphere OUI to work with the
	// in-tree ics cloud provider.
	// +optional
	MACAddr string `json:"macAddr,omitempty"`

	// Nameservers is a list of IPv4 and/or IPv6 addresses used as DNS
	// nameservers.
	// Please note that Linux allows only three nameservers (https://linux.die.net/man/5/resolv.conf).
	// +optional
	Nameservers []string `json:"nameservers,omitempty"`

	// Routes is a list of optional, static routes applied to the device.
	// +optional
	Routes []NetworkRouteSpec `json:"routes,omitempty"`

	// SearchDomains is a list of search domains used when resolving IP
	// addresses with DNS.
	// +optional
	SearchDomains []string `json:"searchDomains,omitempty"`
}

NetworkDeviceSpec defines the network configuration for a virtual machine's network device.

func (*NetworkDeviceSpec) DeepCopy

func (in *NetworkDeviceSpec) DeepCopy() *NetworkDeviceSpec

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

func (*NetworkDeviceSpec) DeepCopyInto

func (in *NetworkDeviceSpec) DeepCopyInto(out *NetworkDeviceSpec)

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

type NetworkRouteSpec

type NetworkRouteSpec struct {
	// To is an IPv4 or IPv6 address.
	To string `json:"to"`
	// Via is an IPv4 or IPv6 address.
	Via string `json:"via"`
	// Metric is the weight/priority of the route.
	Metric int32 `json:"metric"`
}

NetworkRouteSpec defines a static network route.

func (*NetworkRouteSpec) DeepCopy

func (in *NetworkRouteSpec) DeepCopy() *NetworkRouteSpec

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

func (*NetworkRouteSpec) DeepCopyInto

func (in *NetworkRouteSpec) DeepCopyInto(out *NetworkRouteSpec)

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

type NetworkSpec

type NetworkSpec struct {
	// Devices is the list of network devices used by the virtual machine.
	// Make sure at least one network matches the
	//             ClusterSpec.CloudProviderConfiguration.Network.Name
	Devices []NetworkDeviceSpec `json:"devices"`

	// Routes is a list of optional, static routes applied to the virtual
	// machine.
	// +optional
	Routes []NetworkRouteSpec `json:"routes,omitempty"`

	// PreferredAPIServeCIDR is the preferred CIDR for the Kubernetes API
	// server endpoint on this machine
	// +optional
	PreferredAPIServerCIDR string `json:"preferredAPIServerCidr,omitempty"`
}

NetworkSpec defines the virtual machine's network configuration.

func (*NetworkSpec) DeepCopy

func (in *NetworkSpec) DeepCopy() *NetworkSpec

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

func (*NetworkSpec) DeepCopyInto

func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)

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

type NetworkStatus

type NetworkStatus struct {
	// Connected is a flag that indicates whether this network is currently
	// connected to the VM.
	Connected bool `json:"connected,omitempty"`

	// IPAddrs is one or more IP addresses reported by vm-tools.
	// +optional
	IPAddrs []string `json:"ipAddrs,omitempty"`

	// MACAddr is the MAC address of the network device.
	MACAddr string `json:"macAddr"`

	// NetworkName is the name of the network.
	// +optional
	NetworkName string `json:"networkName,omitempty"`
}

NetworkStatus provides information about one of a VM's networks.

func (*NetworkStatus) DeepCopy

func (in *NetworkStatus) DeepCopy() *NetworkStatus

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

func (*NetworkStatus) DeepCopyInto

func (in *NetworkStatus) DeepCopyInto(out *NetworkStatus)

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

type VirtualMachine

type VirtualMachine struct {
	// UID is the VM's ID.
	UID string `json:"UID"`

	// Name is the VM's name.
	Name string `json:"name"`

	// BiosUUID is the VM's BIOS UUID.
	BiosUUID string `json:"biosUUID"`

	// State is the VM's state.
	State VirtualMachineState `json:"state"`

	// Network is the status of the VM's network devices.
	Network []NetworkStatus `json:"network"`
}

VirtualMachine represents data about a ics virtual machine object.

func (*VirtualMachine) DeepCopy

func (in *VirtualMachine) DeepCopy() *VirtualMachine

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

func (*VirtualMachine) DeepCopyInto

func (in *VirtualMachine) DeepCopyInto(out *VirtualMachine)

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

type VirtualMachineCloneSpec

type VirtualMachineCloneSpec struct {
	// Server is the IP address or FQDN of the ics server on which
	// the virtual machine is created/located.
	// +optional
	CloudName string `json:"cloudName"`

	// IdentityRef is a reference to either a Secret that contains
	// the identity to use when reconciling the cluster.
	// +optional
	IdentityRef *ICSIdentityReference `json:"identityRef,omitempty"`

	// Template is the name or inventory path of the template used to clone
	// the virtual machine.
	Template string `json:"template"`

	// CloneMode specifies the type of clone operation.
	// The LinkedClone mode is only support for templates that have at least
	// one snapshot. If the template has no snapshots, then CloneMode defaults
	// to FullClone.
	// When LinkedClone mode is enabled the DiskGiB field is ignored as it is
	// not possible to expand disks of linked clones.
	// Defaults to LinkedClone, but fails gracefully to FullClone if the source
	// of the clone operation has no snapshots.
	// +optional
	CloneMode CloneMode `json:"cloneMode,omitempty"`

	// Snapshot is the name of the snapshot from which to create a linked clone.
	// This field is ignored if LinkedClone is not enabled.
	// Defaults to the source's current snapshot.
	// +optional
	Snapshot string `json:"snapshot,omitempty"`

	// Datacenter is the name or inventory path of the cluster in which the
	// virtual machine is created/located.
	// +optional
	Datacenter string `json:"cluster,omitempty"`

	// Cluster is the name or inventory path of the cluster in which the
	// virtual machine is created/located.
	// +optional
	Cluster string `json:"cluster,omitempty"`

	// Datastore is the name or inventory path of the datastore in which the
	// virtual machine is created/located.
	// +optional
	Datastore string `json:"datastore,omitempty"`

	// Network is the network configuration for this machine's VM.
	Network NetworkSpec `json:"network"`

	// NumCPUs is the number of virtual processors in a virtual machine.
	// Defaults to the eponymous property value in the template from which the
	// virtual machine is cloned.
	// +optional
	NumCPUs int32 `json:"numCPUs,omitempty"`

	// NumCPUs is the number of cores among which to distribute CPUs in this
	// virtual machine.
	// Defaults to the eponymous property value in the template from which the
	// virtual machine is cloned.
	// +optional
	NumCoresPerSocket int32 `json:"numCoresPerSocket,omitempty"`

	// MemoryMiB is the size of a virtual machine's memory, in MiB.
	// Defaults to the eponymous property value in the template from which the
	// virtual machine is cloned.
	// +optional
	MemoryMiB int64 `json:"memoryMiB,omitempty"`

	// DiskGiB is the size of a virtual machine's disk, in GiB.
	// Defaults to the eponymous property value in the template from which the
	// virtual machine is cloned.
	// +optional
	DiskGiB int32 `json:"diskGiB,omitempty"`
}

VirtualMachineCloneSpec is information used to clone a virtual machine.

func (*VirtualMachineCloneSpec) DeepCopy

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

func (*VirtualMachineCloneSpec) DeepCopyInto

func (in *VirtualMachineCloneSpec) DeepCopyInto(out *VirtualMachineCloneSpec)

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

type VirtualMachinePowerState

type VirtualMachinePowerState string

VirtualMachinePowerState describe the power state of a VM

type VirtualMachineState

type VirtualMachineState string

VirtualMachineState describes the state of a VM.

Jump to

Keyboard shortcuts

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