v1alpha1

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: May 8, 2022 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

+groupName=compute.vsphere.kubeform.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api.
	// localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes.
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: compute.GroupName, Version: "v1alpha1"}

Functions

func GetDecoder

func GetDecoder() map[string]jsoniter.ValDecoder

func GetEncoder

func GetEncoder() map[string]jsoniter.ValEncoder

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Cluster

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

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

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

func (*Cluster) DeepCopyInto

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

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

func (*Cluster) DeepCopyObject

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

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

func (*Cluster) SetupWebhookWithManager

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

func (*Cluster) ValidateCreate

func (r *Cluster) ValidateCreate() error

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

func (*Cluster) ValidateDelete

func (r *Cluster) ValidateDelete() error

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

func (*Cluster) ValidateUpdate

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

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

type ClusterHostGroup

type ClusterHostGroup struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ClusterHostGroupSpec   `json:"spec,omitempty"`
	Status            ClusterHostGroupStatus `json:"status,omitempty"`
}

func (*ClusterHostGroup) DeepCopy

func (in *ClusterHostGroup) DeepCopy() *ClusterHostGroup

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

func (*ClusterHostGroup) DeepCopyInto

func (in *ClusterHostGroup) DeepCopyInto(out *ClusterHostGroup)

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

func (*ClusterHostGroup) DeepCopyObject

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

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

func (*ClusterHostGroup) SetupWebhookWithManager

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

func (*ClusterHostGroup) ValidateCreate

func (r *ClusterHostGroup) ValidateCreate() error

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

func (*ClusterHostGroup) ValidateDelete

func (r *ClusterHostGroup) ValidateDelete() error

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

func (*ClusterHostGroup) ValidateUpdate

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

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

type ClusterHostGroupList

type ClusterHostGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ClusterHostGroup CRD objects
	Items []ClusterHostGroup `json:"items,omitempty"`
}

ClusterHostGroupList is a list of ClusterHostGroups

func (*ClusterHostGroupList) DeepCopy

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

func (*ClusterHostGroupList) DeepCopyInto

func (in *ClusterHostGroupList) DeepCopyInto(out *ClusterHostGroupList)

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

func (*ClusterHostGroupList) DeepCopyObject

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

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

type ClusterHostGroupSpec

type ClusterHostGroupSpec struct {
	State *ClusterHostGroupSpecResource `json:"state,omitempty" tf:"-"`

	Resource ClusterHostGroupSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*ClusterHostGroupSpec) DeepCopy

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

func (*ClusterHostGroupSpec) DeepCopyInto

func (in *ClusterHostGroupSpec) DeepCopyInto(out *ClusterHostGroupSpec)

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

type ClusterHostGroupSpecResource

type ClusterHostGroupSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The managed object ID of the cluster.
	ComputeClusterID *string `json:"computeClusterID" tf:"compute_cluster_id"`
	// The managed object IDs of the hosts.
	// +optional
	HostSystemIDS []string `json:"hostSystemIDS,omitempty" tf:"host_system_ids"`
	// The unique name of the virtual machine group in the cluster.
	Name *string `json:"name" tf:"name"`
}

func (*ClusterHostGroupSpecResource) DeepCopy

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

func (*ClusterHostGroupSpecResource) DeepCopyInto

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

type ClusterHostGroupStatus

type ClusterHostGroupStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*ClusterHostGroupStatus) DeepCopy

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

func (*ClusterHostGroupStatus) DeepCopyInto

func (in *ClusterHostGroupStatus) DeepCopyInto(out *ClusterHostGroupStatus)

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

type ClusterList

type ClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Cluster CRD objects
	Items []Cluster `json:"items,omitempty"`
}

ClusterList is a list of Clusters

func (*ClusterList) DeepCopy

func (in *ClusterList) DeepCopy() *ClusterList

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

func (*ClusterList) DeepCopyInto

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

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

func (*ClusterList) DeepCopyObject

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

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

type ClusterSpec

type ClusterSpec struct {
	State *ClusterSpecResource `json:"state,omitempty" tf:"-"`

	Resource ClusterSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

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

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

type ClusterSpecResource

type ClusterSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// A list of custom attributes to set on this resource.
	// +optional
	CustomAttributes *map[string]string `json:"customAttributes,omitempty" tf:"custom_attributes"`
	// The managed object ID of the datacenter to put the cluster in.
	DatacenterID *string `json:"datacenterID" tf:"datacenter_id"`
	// The automation level for host power operations in this cluster. Can be one of manual or automated.
	// +optional
	DpmAutomationLevel *string `json:"dpmAutomationLevel,omitempty" tf:"dpm_automation_level"`
	// Enable DPM support for DRS. This allows you to dynamically control the power of hosts depending on the needs of virtual machines in the cluster. Requires that DRS be enabled.
	// +optional
	DpmEnabled *bool `json:"dpmEnabled,omitempty" tf:"dpm_enabled"`
	// A value between 1 and 5 indicating the threshold of load within the cluster that influences host power operations. This affects both power on and power off operations - a lower setting will tolerate more of a surplus/deficit than a higher setting.
	// +optional
	DpmThreshold *int64 `json:"dpmThreshold,omitempty" tf:"dpm_threshold"`
	// Advanced configuration options for DRS and DPM.
	// +optional
	DrsAdvancedOptions *map[string]string `json:"drsAdvancedOptions,omitempty" tf:"drs_advanced_options"`
	// The default automation level for all virtual machines in this cluster. Can be one of manual, partiallyAutomated, or fullyAutomated.
	// +optional
	DrsAutomationLevel *string `json:"drsAutomationLevel,omitempty" tf:"drs_automation_level"`
	// When true, enables DRS to use data from vRealize Operations Manager to make proactive DRS recommendations.
	// +optional
	DrsEnablePredictiveDrs *bool `json:"drsEnablePredictiveDrs,omitempty" tf:"drs_enable_predictive_drs"`
	// When true, allows individual VM overrides within this cluster to be set.
	// +optional
	DrsEnableVmOverrides *bool `json:"drsEnableVmOverrides,omitempty" tf:"drs_enable_vm_overrides"`
	// Enable DRS for this cluster.
	// +optional
	DrsEnabled *bool `json:"drsEnabled,omitempty" tf:"drs_enabled"`
	// A value between 1 and 5 indicating the threshold of imbalance tolerated between hosts. A lower setting will tolerate more imbalance while a higher setting will tolerate less.
	// +optional
	DrsMigrationThreshold *int64 `json:"drsMigrationThreshold,omitempty" tf:"drs_migration_threshold"`
	// The name of the folder to locate the cluster in.
	// +optional
	Folder *string `json:"folder,omitempty" tf:"folder"`
	// Force removal of all hosts in the cluster during destroy and make them standalone hosts. Use of this flag mainly exists for testing and is not recommended in normal use.
	// +optional
	ForceEvacuateOnDestroy *bool `json:"forceEvacuateOnDestroy,omitempty" tf:"force_evacuate_on_destroy"`
	// When ha_admission_control_policy is failoverHosts, this defines the managed object IDs of hosts to use as dedicated failover hosts. These hosts are kept as available as possible - admission control will block access to the host, and DRS will ignore the host when making recommendations.
	// +optional
	HaAdmissionControlFailoverHostSystemIDS []string `json:"haAdmissionControlFailoverHostSystemIDS,omitempty" tf:"ha_admission_control_failover_host_system_ids"`
	// The maximum number of failed hosts that admission control tolerates when making decisions on whether to permit virtual machine operations. The maximum is one less than the number of hosts in the cluster.
	// +optional
	HaAdmissionControlHostFailureTolerance *int64 `json:"haAdmissionControlHostFailureTolerance,omitempty" tf:"ha_admission_control_host_failure_tolerance"`
	// The percentage of resource reduction that a cluster of VMs can tolerate in case of a failover. A value of 0 produces warnings only, whereas a value of 100 disables the setting.
	// +optional
	HaAdmissionControlPerformanceTolerance *int64 `json:"haAdmissionControlPerformanceTolerance,omitempty" tf:"ha_admission_control_performance_tolerance"`
	// The type of admission control policy to use with vSphere HA, which controls whether or not specific VM operations are permitted in the cluster in order to protect the reliability of the cluster. Can be one of resourcePercentage, slotPolicy, failoverHosts, or disabled. Note that disabling admission control is not recommended and can lead to service issues.
	// +optional
	HaAdmissionControlPolicy *string `json:"haAdmissionControlPolicy,omitempty" tf:"ha_admission_control_policy"`
	// When ha_admission_control_policy is resourcePercentage, automatically determine available resource percentages by subtracting the average number of host resources represented by the ha_admission_control_host_failure_tolerance setting from the total amount of resources in the cluster. Disable to supply user-defined values.
	// +optional
	HaAdmissionControlResourcePercentageAutoCompute *bool `json:"haAdmissionControlResourcePercentageAutoCompute,omitempty" tf:"ha_admission_control_resource_percentage_auto_compute"`
	// When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of CPU resources in the cluster to reserve for failover.
	// +optional
	HaAdmissionControlResourcePercentageCPU *int64 `json:"haAdmissionControlResourcePercentageCPU,omitempty" tf:"ha_admission_control_resource_percentage_cpu"`
	// When ha_admission_control_policy is resourcePercentage, this controls the user-defined percentage of memory resources in the cluster to reserve for failover.
	// +optional
	HaAdmissionControlResourcePercentageMemory *int64 `json:"haAdmissionControlResourcePercentageMemory,omitempty" tf:"ha_admission_control_resource_percentage_memory"`
	// When ha_admission_control_policy is slotPolicy, this controls the user-defined CPU slot size, in MHz.
	// +optional
	HaAdmissionControlSlotPolicyExplicitCPU *int64 `json:"haAdmissionControlSlotPolicyExplicitCPU,omitempty" tf:"ha_admission_control_slot_policy_explicit_cpu"`
	// When ha_admission_control_policy is slotPolicy, this controls the user-defined memory slot size, in MB.
	// +optional
	HaAdmissionControlSlotPolicyExplicitMemory *int64 `json:"haAdmissionControlSlotPolicyExplicitMemory,omitempty" tf:"ha_admission_control_slot_policy_explicit_memory"`
	// When ha_admission_control_policy is slotPolicy, this setting controls whether or not you wish to supply explicit values to CPU and memory slot sizes. The default is to gather a automatic average based on all powered-on virtual machines currently in the cluster.
	// +optional
	HaAdmissionControlSlotPolicyUseExplicitSize *bool `json:"haAdmissionControlSlotPolicyUseExplicitSize,omitempty" tf:"ha_admission_control_slot_policy_use_explicit_size"`
	// Advanced configuration options for vSphere HA.
	// +optional
	HaAdvancedOptions *map[string]string `json:"haAdvancedOptions,omitempty" tf:"ha_advanced_options"`
	// When ha_vm_component_protection is enabled, controls the action to take on virtual machines if an APD status on an affected datastore clears in the middle of an APD event. Can be one of none or reset.
	// +optional
	HaDatastoreApdRecoveryAction *string `json:"haDatastoreApdRecoveryAction,omitempty" tf:"ha_datastore_apd_recovery_action"`
	// When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected loss to all paths to a relevant datastore. Can be one of disabled, warning, restartConservative, or restartAggressive.
	// +optional
	HaDatastoreApdResponse *string `json:"haDatastoreApdResponse,omitempty" tf:"ha_datastore_apd_response"`
	// When ha_vm_component_protection is enabled, controls the delay in seconds to wait after an APD timeout event to execute the response action defined in ha_datastore_apd_response.
	// +optional
	HaDatastoreApdResponseDelay *int64 `json:"haDatastoreApdResponseDelay,omitempty" tf:"ha_datastore_apd_response_delay"`
	// When ha_vm_component_protection is enabled, controls the action to take on virtual machines when the cluster has detected a permanent device loss to a relevant datastore. Can be one of disabled, warning, or restartAggressive.
	// +optional
	HaDatastorePdlResponse *string `json:"haDatastorePdlResponse,omitempty" tf:"ha_datastore_pdl_response"`
	// Enable vSphere HA for this cluster.
	// +optional
	HaEnabled *bool `json:"haEnabled,omitempty" tf:"ha_enabled"`
	// The list of managed object IDs for preferred datastores to use for HA heartbeating. This setting is only useful when ha_heartbeat_datastore_policy is set to either userSelectedDs or allFeasibleDsWithUserPreference.
	// +optional
	HaHeartbeatDatastoreIDS []string `json:"haHeartbeatDatastoreIDS,omitempty" tf:"ha_heartbeat_datastore_ids"`
	// The selection policy for HA heartbeat datastores. Can be one of allFeasibleDs, userSelectedDs, or allFeasibleDsWithUserPreference.
	// +optional
	HaHeartbeatDatastorePolicy *string `json:"haHeartbeatDatastorePolicy,omitempty" tf:"ha_heartbeat_datastore_policy"`
	// The action to take on virtual machines when a host has detected that it has been isolated from the rest of the cluster. Can be one of none, powerOff, or shutdown.
	// +optional
	HaHostIsolationResponse *string `json:"haHostIsolationResponse,omitempty" tf:"ha_host_isolation_response"`
	// Global setting that controls whether vSphere HA remediates VMs on host failure. Can be one of enabled or disabled.
	// +optional
	HaHostMonitoring *string `json:"haHostMonitoring,omitempty" tf:"ha_host_monitoring"`
	// Controls vSphere VM component protection for virtual machines in this cluster. This allows vSphere HA to react to failures between hosts and specific virtual machine components, such as datastores. Can be one of enabled or disabled.
	// +optional
	HaVmComponentProtection *string `json:"haVmComponentProtection,omitempty" tf:"ha_vm_component_protection"`
	// The condition used to determine whether or not VMs in a certain restart priority class are online, allowing HA to move on to restarting VMs on the next priority. Can be one of none, poweredOn, guestHbStatusGreen, or appHbStatusGreen.
	// +optional
	HaVmDependencyRestartCondition *string `json:"haVmDependencyRestartCondition,omitempty" tf:"ha_vm_dependency_restart_condition"`
	// If a heartbeat from a virtual machine is not received within this configured interval, the virtual machine is marked as failed. The value is in seconds.
	// +optional
	HaVmFailureInterval *int64 `json:"haVmFailureInterval,omitempty" tf:"ha_vm_failure_interval"`
	// The length of the reset window in which ha_vm_maximum_resets can operate. When this window expires, no more resets are attempted regardless of the setting configured in ha_vm_maximum_resets. -1 means no window, meaning an unlimited reset time is allotted.
	// +optional
	HaVmMaximumFailureWindow *int64 `json:"haVmMaximumFailureWindow,omitempty" tf:"ha_vm_maximum_failure_window"`
	// The maximum number of resets that HA will perform to a virtual machine when responding to a failure event.
	// +optional
	HaVmMaximumResets *int64 `json:"haVmMaximumResets,omitempty" tf:"ha_vm_maximum_resets"`
	// The time, in seconds, that HA waits after powering on a virtual machine before monitoring for heartbeats.
	// +optional
	HaVmMinimumUptime *int64 `json:"haVmMinimumUptime,omitempty" tf:"ha_vm_minimum_uptime"`
	// The type of virtual machine monitoring to use when HA is enabled in the cluster. Can be one of vmMonitoringDisabled, vmMonitoringOnly, or vmAndAppMonitoring.
	// +optional
	HaVmMonitoring *string `json:"haVmMonitoring,omitempty" tf:"ha_vm_monitoring"`
	// Additional delay in seconds after ready condition is met. A VM is considered ready at this point.
	// +optional
	HaVmRestartAdditionalDelay *int64 `json:"haVmRestartAdditionalDelay,omitempty" tf:"ha_vm_restart_additional_delay"`
	// The default restart priority for affected VMs when vSphere detects a host failure. Can be one of lowest, low, medium, high, or highest.
	// +optional
	HaVmRestartPriority *string `json:"haVmRestartPriority,omitempty" tf:"ha_vm_restart_priority"`
	// The maximum time, in seconds, that vSphere HA will wait for virtual machines in one priority to be ready before proceeding with the next priority.
	// +optional
	HaVmRestartTimeout *int64 `json:"haVmRestartTimeout,omitempty" tf:"ha_vm_restart_timeout"`
	// The timeout for each host maintenance mode operation when removing hosts from a cluster.
	// +optional
	HostClusterExitTimeout *int64 `json:"hostClusterExitTimeout,omitempty" tf:"host_cluster_exit_timeout"`
	// Must be set if cluster enrollment is managed from host resource.
	// +optional
	HostManaged *bool `json:"hostManaged,omitempty" tf:"host_managed"`
	// The managed object IDs of the hosts to put in the cluster.
	// +optional
	// +kubebuilder:validation:MaxItems=64
	HostSystemIDS []string `json:"hostSystemIDS,omitempty" tf:"host_system_ids"`
	// Name for the new cluster.
	Name *string `json:"name" tf:"name"`
	// The DRS behavior for proactive HA recommendations. Can be one of Automated or Manual.
	// +optional
	ProactiveHaAutomationLevel *string `json:"proactiveHaAutomationLevel,omitempty" tf:"proactive_ha_automation_level"`
	// Enables proactive HA, allowing for vSphere to get HA data from external providers and use DRS to perform remediation.
	// +optional
	ProactiveHaEnabled *bool `json:"proactiveHaEnabled,omitempty" tf:"proactive_ha_enabled"`
	// The configured remediation for moderately degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to MaintenanceMode when proactive_ha_severe_remediation is set to QuarantineMode.
	// +optional
	ProactiveHaModerateRemediation *string `json:"proactiveHaModerateRemediation,omitempty" tf:"proactive_ha_moderate_remediation"`
	// The list of IDs for health update providers configured for this cluster.
	// +optional
	ProactiveHaProviderIDS []string `json:"proactiveHaProviderIDS,omitempty" tf:"proactive_ha_provider_ids"`
	// The configured remediation for severely degraded hosts. Can be one of MaintenanceMode or QuarantineMode. Note that this cannot be set to QuarantineMode when proactive_ha_moderate_remediation is set to MaintenanceMode.
	// +optional
	ProactiveHaSevereRemediation *string `json:"proactiveHaSevereRemediation,omitempty" tf:"proactive_ha_severe_remediation"`
	// The managed object ID of the cluster's root resource pool.
	// +optional
	ResourcePoolID *string `json:"resourcePoolID,omitempty" tf:"resource_pool_id"`
	// A list of tag IDs to apply to this object.
	// +optional
	Tags []string `json:"tags,omitempty" tf:"tags"`
	// A list of disk UUIDs to add to the vSAN cluster.
	// +optional
	VsanDiskGroup []ClusterSpecVsanDiskGroup `json:"vsanDiskGroup,omitempty" tf:"vsan_disk_group"`
	// Whether the VSAN service is enabled for the cluster.
	// +optional
	VsanEnabled *bool `json:"vsanEnabled,omitempty" tf:"vsan_enabled"`
}

func (*ClusterSpecResource) DeepCopy

func (in *ClusterSpecResource) DeepCopy() *ClusterSpecResource

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

func (*ClusterSpecResource) DeepCopyInto

func (in *ClusterSpecResource) DeepCopyInto(out *ClusterSpecResource)

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

type ClusterSpecVsanDiskGroup

type ClusterSpecVsanDiskGroup struct {
	// Cache disk.
	// +optional
	Cache *string `json:"cache,omitempty" tf:"cache"`
	// List of storage disks.
	// +optional
	Storage []string `json:"storage,omitempty" tf:"storage"`
}

func (*ClusterSpecVsanDiskGroup) DeepCopy

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

func (*ClusterSpecVsanDiskGroup) DeepCopyInto

func (in *ClusterSpecVsanDiskGroup) DeepCopyInto(out *ClusterSpecVsanDiskGroup)

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

type ClusterStatus

type ClusterStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

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

func (*ClusterStatus) DeepCopyInto

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

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

type ClusterVmAffinityRule

type ClusterVmAffinityRule struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ClusterVmAffinityRuleSpec   `json:"spec,omitempty"`
	Status            ClusterVmAffinityRuleStatus `json:"status,omitempty"`
}

func (*ClusterVmAffinityRule) DeepCopy

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

func (*ClusterVmAffinityRule) DeepCopyInto

func (in *ClusterVmAffinityRule) DeepCopyInto(out *ClusterVmAffinityRule)

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

func (*ClusterVmAffinityRule) DeepCopyObject

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

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

func (*ClusterVmAffinityRule) SetupWebhookWithManager

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

func (*ClusterVmAffinityRule) ValidateCreate

func (r *ClusterVmAffinityRule) ValidateCreate() error

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

func (*ClusterVmAffinityRule) ValidateDelete

func (r *ClusterVmAffinityRule) ValidateDelete() error

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

func (*ClusterVmAffinityRule) ValidateUpdate

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

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

type ClusterVmAffinityRuleList

type ClusterVmAffinityRuleList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ClusterVmAffinityRule CRD objects
	Items []ClusterVmAffinityRule `json:"items,omitempty"`
}

ClusterVmAffinityRuleList is a list of ClusterVmAffinityRules

func (*ClusterVmAffinityRuleList) DeepCopy

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

func (*ClusterVmAffinityRuleList) DeepCopyInto

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

func (*ClusterVmAffinityRuleList) DeepCopyObject

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

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

type ClusterVmAffinityRuleSpec

type ClusterVmAffinityRuleSpec struct {
	State *ClusterVmAffinityRuleSpecResource `json:"state,omitempty" tf:"-"`

	Resource ClusterVmAffinityRuleSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*ClusterVmAffinityRuleSpec) DeepCopy

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

func (*ClusterVmAffinityRuleSpec) DeepCopyInto

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

type ClusterVmAffinityRuleSpecResource

type ClusterVmAffinityRuleSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The managed object ID of the cluster.
	ComputeClusterID *string `json:"computeClusterID" tf:"compute_cluster_id"`
	// Enable this rule in the cluster.
	// +optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled"`
	// When true, prevents any virtual machine operations that may violate this rule.
	// +optional
	Mandatory *bool `json:"mandatory,omitempty" tf:"mandatory"`
	// The unique name of the virtual machine group in the cluster.
	Name *string `json:"name" tf:"name"`
	// The UUIDs of the virtual machines to run on the same host together.
	VirtualMachineIDS []string `json:"virtualMachineIDS" tf:"virtual_machine_ids"`
}

func (*ClusterVmAffinityRuleSpecResource) DeepCopy

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

func (*ClusterVmAffinityRuleSpecResource) DeepCopyInto

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

type ClusterVmAffinityRuleStatus

type ClusterVmAffinityRuleStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*ClusterVmAffinityRuleStatus) DeepCopy

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

func (*ClusterVmAffinityRuleStatus) DeepCopyInto

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

type ClusterVmAntiAffinityRule

type ClusterVmAntiAffinityRule struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ClusterVmAntiAffinityRuleSpec   `json:"spec,omitempty"`
	Status            ClusterVmAntiAffinityRuleStatus `json:"status,omitempty"`
}

func (*ClusterVmAntiAffinityRule) DeepCopy

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

func (*ClusterVmAntiAffinityRule) DeepCopyInto

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

func (*ClusterVmAntiAffinityRule) DeepCopyObject

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

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

func (*ClusterVmAntiAffinityRule) SetupWebhookWithManager

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

func (*ClusterVmAntiAffinityRule) ValidateCreate

func (r *ClusterVmAntiAffinityRule) ValidateCreate() error

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

func (*ClusterVmAntiAffinityRule) ValidateDelete

func (r *ClusterVmAntiAffinityRule) ValidateDelete() error

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

func (*ClusterVmAntiAffinityRule) ValidateUpdate

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

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

type ClusterVmAntiAffinityRuleList

type ClusterVmAntiAffinityRuleList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ClusterVmAntiAffinityRule CRD objects
	Items []ClusterVmAntiAffinityRule `json:"items,omitempty"`
}

ClusterVmAntiAffinityRuleList is a list of ClusterVmAntiAffinityRules

func (*ClusterVmAntiAffinityRuleList) DeepCopy

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

func (*ClusterVmAntiAffinityRuleList) DeepCopyInto

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

func (*ClusterVmAntiAffinityRuleList) DeepCopyObject

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

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

type ClusterVmAntiAffinityRuleSpec

type ClusterVmAntiAffinityRuleSpec struct {
	State *ClusterVmAntiAffinityRuleSpecResource `json:"state,omitempty" tf:"-"`

	Resource ClusterVmAntiAffinityRuleSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*ClusterVmAntiAffinityRuleSpec) DeepCopy

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

func (*ClusterVmAntiAffinityRuleSpec) DeepCopyInto

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

type ClusterVmAntiAffinityRuleSpecResource

type ClusterVmAntiAffinityRuleSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The managed object ID of the cluster.
	ComputeClusterID *string `json:"computeClusterID" tf:"compute_cluster_id"`
	// Enable this rule in the cluster.
	// +optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled"`
	// When true, prevents any virtual machine operations that may violate this rule.
	// +optional
	Mandatory *bool `json:"mandatory,omitempty" tf:"mandatory"`
	// The unique name of the virtual machine group in the cluster.
	Name *string `json:"name" tf:"name"`
	// The UUIDs of the virtual machines to run on hosts different from each other.
	VirtualMachineIDS []string `json:"virtualMachineIDS" tf:"virtual_machine_ids"`
}

func (*ClusterVmAntiAffinityRuleSpecResource) DeepCopy

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

func (*ClusterVmAntiAffinityRuleSpecResource) DeepCopyInto

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

type ClusterVmAntiAffinityRuleStatus

type ClusterVmAntiAffinityRuleStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*ClusterVmAntiAffinityRuleStatus) DeepCopy

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

func (*ClusterVmAntiAffinityRuleStatus) DeepCopyInto

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

type ClusterVmDependencyRule

type ClusterVmDependencyRule struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ClusterVmDependencyRuleSpec   `json:"spec,omitempty"`
	Status            ClusterVmDependencyRuleStatus `json:"status,omitempty"`
}

func (*ClusterVmDependencyRule) DeepCopy

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

func (*ClusterVmDependencyRule) DeepCopyInto

func (in *ClusterVmDependencyRule) DeepCopyInto(out *ClusterVmDependencyRule)

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

func (*ClusterVmDependencyRule) DeepCopyObject

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

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

func (*ClusterVmDependencyRule) SetupWebhookWithManager

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

func (*ClusterVmDependencyRule) ValidateCreate

func (r *ClusterVmDependencyRule) ValidateCreate() error

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

func (*ClusterVmDependencyRule) ValidateDelete

func (r *ClusterVmDependencyRule) ValidateDelete() error

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

func (*ClusterVmDependencyRule) ValidateUpdate

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

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

type ClusterVmDependencyRuleList

type ClusterVmDependencyRuleList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ClusterVmDependencyRule CRD objects
	Items []ClusterVmDependencyRule `json:"items,omitempty"`
}

ClusterVmDependencyRuleList is a list of ClusterVmDependencyRules

func (*ClusterVmDependencyRuleList) DeepCopy

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

func (*ClusterVmDependencyRuleList) DeepCopyInto

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

func (*ClusterVmDependencyRuleList) DeepCopyObject

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

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

type ClusterVmDependencyRuleSpec

type ClusterVmDependencyRuleSpec struct {
	State *ClusterVmDependencyRuleSpecResource `json:"state,omitempty" tf:"-"`

	Resource ClusterVmDependencyRuleSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*ClusterVmDependencyRuleSpec) DeepCopy

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

func (*ClusterVmDependencyRuleSpec) DeepCopyInto

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

type ClusterVmDependencyRuleSpecResource

type ClusterVmDependencyRuleSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The managed object ID of the cluster.
	ComputeClusterID *string `json:"computeClusterID" tf:"compute_cluster_id"`
	// The name of the VM group that this rule depends on. The VMs defined in the group specified by vm_group_name will not be started until the VMs in this group are started.
	DependencyVmGroupName *string `json:"dependencyVmGroupName" tf:"dependency_vm_group_name"`
	// Enable this rule in the cluster.
	// +optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled"`
	// When true, prevents any virtual machine operations that may violate this rule.
	// +optional
	Mandatory *bool `json:"mandatory,omitempty" tf:"mandatory"`
	// The unique name of the virtual machine group in the cluster.
	Name *string `json:"name" tf:"name"`
	// The name of the VM group that is the subject of this rule. The VMs defined in this group will not be started until the VMs in the group specified by dependency_vm_group_name are started.
	VmGroupName *string `json:"vmGroupName" tf:"vm_group_name"`
}

func (*ClusterVmDependencyRuleSpecResource) DeepCopy

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

func (*ClusterVmDependencyRuleSpecResource) DeepCopyInto

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

type ClusterVmDependencyRuleStatus

type ClusterVmDependencyRuleStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*ClusterVmDependencyRuleStatus) DeepCopy

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

func (*ClusterVmDependencyRuleStatus) DeepCopyInto

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

type ClusterVmGroup

type ClusterVmGroup struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ClusterVmGroupSpec   `json:"spec,omitempty"`
	Status            ClusterVmGroupStatus `json:"status,omitempty"`
}

func (*ClusterVmGroup) DeepCopy

func (in *ClusterVmGroup) DeepCopy() *ClusterVmGroup

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

func (*ClusterVmGroup) DeepCopyInto

func (in *ClusterVmGroup) DeepCopyInto(out *ClusterVmGroup)

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

func (*ClusterVmGroup) DeepCopyObject

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

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

func (*ClusterVmGroup) SetupWebhookWithManager

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

func (*ClusterVmGroup) ValidateCreate

func (r *ClusterVmGroup) ValidateCreate() error

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

func (*ClusterVmGroup) ValidateDelete

func (r *ClusterVmGroup) ValidateDelete() error

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

func (*ClusterVmGroup) ValidateUpdate

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

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

type ClusterVmGroupList

type ClusterVmGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ClusterVmGroup CRD objects
	Items []ClusterVmGroup `json:"items,omitempty"`
}

ClusterVmGroupList is a list of ClusterVmGroups

func (*ClusterVmGroupList) DeepCopy

func (in *ClusterVmGroupList) DeepCopy() *ClusterVmGroupList

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

func (*ClusterVmGroupList) DeepCopyInto

func (in *ClusterVmGroupList) DeepCopyInto(out *ClusterVmGroupList)

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

func (*ClusterVmGroupList) DeepCopyObject

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

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

type ClusterVmGroupSpec

type ClusterVmGroupSpec struct {
	State *ClusterVmGroupSpecResource `json:"state,omitempty" tf:"-"`

	Resource ClusterVmGroupSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*ClusterVmGroupSpec) DeepCopy

func (in *ClusterVmGroupSpec) DeepCopy() *ClusterVmGroupSpec

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

func (*ClusterVmGroupSpec) DeepCopyInto

func (in *ClusterVmGroupSpec) DeepCopyInto(out *ClusterVmGroupSpec)

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

type ClusterVmGroupSpecResource

type ClusterVmGroupSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The managed object ID of the cluster.
	ComputeClusterID *string `json:"computeClusterID" tf:"compute_cluster_id"`
	// The unique name of the virtual machine group in the cluster.
	Name *string `json:"name" tf:"name"`
	// The UUIDs of the virtual machines in this group.
	// +optional
	VirtualMachineIDS []string `json:"virtualMachineIDS,omitempty" tf:"virtual_machine_ids"`
}

func (*ClusterVmGroupSpecResource) DeepCopy

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

func (*ClusterVmGroupSpecResource) DeepCopyInto

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

type ClusterVmGroupStatus

type ClusterVmGroupStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*ClusterVmGroupStatus) DeepCopy

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

func (*ClusterVmGroupStatus) DeepCopyInto

func (in *ClusterVmGroupStatus) DeepCopyInto(out *ClusterVmGroupStatus)

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

type ClusterVmHostRule

type ClusterVmHostRule struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ClusterVmHostRuleSpec   `json:"spec,omitempty"`
	Status            ClusterVmHostRuleStatus `json:"status,omitempty"`
}

func (*ClusterVmHostRule) DeepCopy

func (in *ClusterVmHostRule) DeepCopy() *ClusterVmHostRule

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

func (*ClusterVmHostRule) DeepCopyInto

func (in *ClusterVmHostRule) DeepCopyInto(out *ClusterVmHostRule)

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

func (*ClusterVmHostRule) DeepCopyObject

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

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

func (*ClusterVmHostRule) SetupWebhookWithManager

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

func (*ClusterVmHostRule) ValidateCreate

func (r *ClusterVmHostRule) ValidateCreate() error

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

func (*ClusterVmHostRule) ValidateDelete

func (r *ClusterVmHostRule) ValidateDelete() error

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

func (*ClusterVmHostRule) ValidateUpdate

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

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

type ClusterVmHostRuleList

type ClusterVmHostRuleList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ClusterVmHostRule CRD objects
	Items []ClusterVmHostRule `json:"items,omitempty"`
}

ClusterVmHostRuleList is a list of ClusterVmHostRules

func (*ClusterVmHostRuleList) DeepCopy

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

func (*ClusterVmHostRuleList) DeepCopyInto

func (in *ClusterVmHostRuleList) DeepCopyInto(out *ClusterVmHostRuleList)

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

func (*ClusterVmHostRuleList) DeepCopyObject

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

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

type ClusterVmHostRuleSpec

type ClusterVmHostRuleSpec struct {
	State *ClusterVmHostRuleSpecResource `json:"state,omitempty" tf:"-"`

	Resource ClusterVmHostRuleSpecResource `json:"resource" tf:"resource"`

	UpdatePolicy base.UpdatePolicy `json:"updatePolicy,omitempty" tf:"-"`

	TerminationPolicy base.TerminationPolicy `json:"terminationPolicy,omitempty" tf:"-"`

	ProviderRef core.LocalObjectReference `json:"providerRef" tf:"-"`

	BackendRef *core.LocalObjectReference `json:"backendRef,omitempty" tf:"-"`
}

func (*ClusterVmHostRuleSpec) DeepCopy

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

func (*ClusterVmHostRuleSpec) DeepCopyInto

func (in *ClusterVmHostRuleSpec) DeepCopyInto(out *ClusterVmHostRuleSpec)

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

type ClusterVmHostRuleSpecResource

type ClusterVmHostRuleSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// When this field is used, virtual machines defined in vm_group_name will be run on the hosts defined in this host group.
	// +optional
	AffinityHostGroupName *string `json:"affinityHostGroupName,omitempty" tf:"affinity_host_group_name"`
	// When this field is used, virtual machines defined in vm_group_name will not be run on the hosts defined in this host group.
	// +optional
	AntiAffinityHostGroupName *string `json:"antiAffinityHostGroupName,omitempty" tf:"anti_affinity_host_group_name"`
	// The managed object ID of the cluster.
	ComputeClusterID *string `json:"computeClusterID" tf:"compute_cluster_id"`
	// Enable this rule in the cluster.
	// +optional
	Enabled *bool `json:"enabled,omitempty" tf:"enabled"`
	// When true, prevents any virtual machine operations that may violate this rule.
	// +optional
	Mandatory *bool `json:"mandatory,omitempty" tf:"mandatory"`
	// The unique name of the virtual machine group in the cluster.
	Name *string `json:"name" tf:"name"`
	// The name of the virtual machine group to use with this rule.
	VmGroupName *string `json:"vmGroupName" tf:"vm_group_name"`
}

func (*ClusterVmHostRuleSpecResource) DeepCopy

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

func (*ClusterVmHostRuleSpecResource) DeepCopyInto

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

type ClusterVmHostRuleStatus

type ClusterVmHostRuleStatus struct {
	// Resource generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// +optional
	Phase status.Status `json:"phase,omitempty"`
	// +optional
	Conditions []kmapi.Condition `json:"conditions,omitempty"`
}

func (*ClusterVmHostRuleStatus) DeepCopy

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

func (*ClusterVmHostRuleStatus) DeepCopyInto

func (in *ClusterVmHostRuleStatus) DeepCopyInto(out *ClusterVmHostRuleStatus)

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