v1alpha1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jan 1, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=oceanaksvng.spot.upbound.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "oceanaksvng.spot.upbound.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	OceanAksVng_Kind             = "OceanAksVng"
	OceanAksVng_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: OceanAksVng_Kind}.String()
	OceanAksVng_KindAPIVersion   = OceanAksVng_Kind + "." + CRDGroupVersion.String()
	OceanAksVng_GroupVersionKind = CRDGroupVersion.WithKind(OceanAksVng_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type FiltersObservation

type FiltersObservation struct {

	// In case acceleratedNetworking is set to Enabled, accelerated networking applies only to the VM that enables it.
	AcceleratedNetworking *string `json:"acceleratedNetworking,omitempty" tf:"accelerated_networking,omitempty"`

	// The filtered vm sizes will support at least one of the architectures from this list. x86_64 includes both intel64 and amd64.
	Architectures []*string `json:"architectures,omitempty" tf:"architectures,omitempty"`

	// The filtered vm sizes will support at least one of the classes from this list.
	DiskPerformance *string `json:"diskPerformance,omitempty" tf:"disk_performance,omitempty"`

	// Vm sizes belonging to a series from the list will not be available for scaling.
	ExcludeSeries []*string `json:"excludeSeries,omitempty" tf:"exclude_series,omitempty"`

	// Maximum number of GPUs available.
	MaxGpu *float64 `json:"maxGpu,omitempty" tf:"max_gpu,omitempty"`

	// Maximum amount of Memory (GiB).
	MaxMemoryGib *float64 `json:"maxMemoryGib,omitempty" tf:"max_memory_gib,omitempty"`

	// Maximum number of vcpus available.
	MaxVcpu *float64 `json:"maxVcpu,omitempty" tf:"max_vcpu,omitempty"`

	// Minimum number of data disks available.
	MinData *float64 `json:"minData,omitempty" tf:"min_data,omitempty"`

	// Minimum number of GPUs available.
	MinGpu *float64 `json:"minGpu,omitempty" tf:"min_gpu,omitempty"`

	// Minimum amount of Memory (GiB).
	MinMemoryGib *float64 `json:"minMemoryGib,omitempty" tf:"min_memory_gib,omitempty"`

	// Minimum number of network interfaces.
	MinNics *float64 `json:"minNics,omitempty" tf:"min_nics,omitempty"`

	// Minimum number of vcpus available.
	MinVcpu *float64 `json:"minVcpu,omitempty" tf:"min_vcpu,omitempty"`

	// Vm sizes belonging to a series from the list will be available for scaling.
	Series []*string `json:"series,omitempty" tf:"series,omitempty"`

	// The filtered vm types will belong to one of the vm types from this list.
	VMTypes []*string `json:"vmTypes,omitempty" tf:"vm_types,omitempty"`
}

func (*FiltersObservation) DeepCopy

func (in *FiltersObservation) DeepCopy() *FiltersObservation

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

func (*FiltersObservation) DeepCopyInto

func (in *FiltersObservation) DeepCopyInto(out *FiltersObservation)

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

type FiltersParameters

type FiltersParameters struct {

	// In case acceleratedNetworking is set to Enabled, accelerated networking applies only to the VM that enables it.
	// +kubebuilder:validation:Optional
	AcceleratedNetworking *string `json:"acceleratedNetworking,omitempty" tf:"accelerated_networking,omitempty"`

	// The filtered vm sizes will support at least one of the architectures from this list. x86_64 includes both intel64 and amd64.
	// +kubebuilder:validation:Optional
	Architectures []*string `json:"architectures,omitempty" tf:"architectures,omitempty"`

	// The filtered vm sizes will support at least one of the classes from this list.
	// +kubebuilder:validation:Optional
	DiskPerformance *string `json:"diskPerformance,omitempty" tf:"disk_performance,omitempty"`

	// Vm sizes belonging to a series from the list will not be available for scaling.
	// +kubebuilder:validation:Optional
	ExcludeSeries []*string `json:"excludeSeries,omitempty" tf:"exclude_series,omitempty"`

	// Maximum number of GPUs available.
	// +kubebuilder:validation:Optional
	MaxGpu *float64 `json:"maxGpu,omitempty" tf:"max_gpu,omitempty"`

	// Maximum amount of Memory (GiB).
	// +kubebuilder:validation:Optional
	MaxMemoryGib *float64 `json:"maxMemoryGib,omitempty" tf:"max_memory_gib,omitempty"`

	// Maximum number of vcpus available.
	// +kubebuilder:validation:Optional
	MaxVcpu *float64 `json:"maxVcpu,omitempty" tf:"max_vcpu,omitempty"`

	// Minimum number of data disks available.
	// +kubebuilder:validation:Optional
	MinData *float64 `json:"minData,omitempty" tf:"min_data,omitempty"`

	// Minimum number of GPUs available.
	// +kubebuilder:validation:Optional
	MinGpu *float64 `json:"minGpu,omitempty" tf:"min_gpu,omitempty"`

	// Minimum amount of Memory (GiB).
	// +kubebuilder:validation:Optional
	MinMemoryGib *float64 `json:"minMemoryGib,omitempty" tf:"min_memory_gib,omitempty"`

	// Minimum number of network interfaces.
	// +kubebuilder:validation:Optional
	MinNics *float64 `json:"minNics,omitempty" tf:"min_nics,omitempty"`

	// Minimum number of vcpus available.
	// +kubebuilder:validation:Optional
	MinVcpu *float64 `json:"minVcpu,omitempty" tf:"min_vcpu,omitempty"`

	// Vm sizes belonging to a series from the list will be available for scaling.
	// +kubebuilder:validation:Optional
	Series []*string `json:"series,omitempty" tf:"series,omitempty"`

	// The filtered vm types will belong to one of the vm types from this list.
	// +kubebuilder:validation:Optional
	VMTypes []*string `json:"vmTypes,omitempty" tf:"vm_types,omitempty"`
}

func (*FiltersParameters) DeepCopy

func (in *FiltersParameters) DeepCopy() *FiltersParameters

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

func (*FiltersParameters) DeepCopyInto

func (in *FiltersParameters) DeepCopyInto(out *FiltersParameters)

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

type HeadroomsObservation

type HeadroomsObservation struct {

	// Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
	CPUPerUnit *float64 `json:"cpuPerUnit,omitempty" tf:"cpu_per_unit,omitempty"`

	// Amount of GPU to allocate for headroom unit.
	GpuPerUnit *float64 `json:"gpuPerUnit,omitempty" tf:"gpu_per_unit,omitempty"`

	// Configure the amount of memory (MiB) to allocate the headroom.
	MemoryPerUnit *float64 `json:"memoryPerUnit,omitempty" tf:"memory_per_unit,omitempty"`

	// The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
	NumOfUnits *float64 `json:"numOfUnits,omitempty" tf:"num_of_units,omitempty"`
}

func (*HeadroomsObservation) DeepCopy

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

func (*HeadroomsObservation) DeepCopyInto

func (in *HeadroomsObservation) DeepCopyInto(out *HeadroomsObservation)

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

type HeadroomsParameters

type HeadroomsParameters struct {

	// Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
	// +kubebuilder:validation:Optional
	CPUPerUnit *float64 `json:"cpuPerUnit,omitempty" tf:"cpu_per_unit,omitempty"`

	// Amount of GPU to allocate for headroom unit.
	// +kubebuilder:validation:Optional
	GpuPerUnit *float64 `json:"gpuPerUnit,omitempty" tf:"gpu_per_unit,omitempty"`

	// Configure the amount of memory (MiB) to allocate the headroom.
	// +kubebuilder:validation:Optional
	MemoryPerUnit *float64 `json:"memoryPerUnit,omitempty" tf:"memory_per_unit,omitempty"`

	// The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
	// +kubebuilder:validation:Optional
	NumOfUnits *float64 `json:"numOfUnits,omitempty" tf:"num_of_units,omitempty"`
}

func (*HeadroomsParameters) DeepCopy

func (in *HeadroomsParameters) DeepCopy() *HeadroomsParameters

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

func (*HeadroomsParameters) DeepCopyInto

func (in *HeadroomsParameters) DeepCopyInto(out *HeadroomsParameters)

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

type OceanAksVng

type OceanAksVng struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.name)",message="name is a required parameter"
	// +kubebuilder:validation:XValidation:rule="self.managementPolicy == 'ObserveOnly' || has(self.forProvider.oceanId)",message="oceanId is a required parameter"
	Spec   OceanAksVngSpec   `json:"spec"`
	Status OceanAksVngStatus `json:"status,omitempty"`
}

OceanAksVng is the Schema for the OceanAksVngs API. Provides a Spotinst Ocean Virtual Node Group resource using AKS. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,spot}

func (*OceanAksVng) DeepCopy

func (in *OceanAksVng) DeepCopy() *OceanAksVng

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

func (*OceanAksVng) DeepCopyInto

func (in *OceanAksVng) DeepCopyInto(out *OceanAksVng)

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

func (*OceanAksVng) DeepCopyObject

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

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

func (*OceanAksVng) GetCondition

func (mg *OceanAksVng) GetCondition(ct xpv1.ConditionType) xpv1.Condition

GetCondition of this OceanAksVng.

func (*OceanAksVng) GetConnectionDetailsMapping

func (tr *OceanAksVng) GetConnectionDetailsMapping() map[string]string

GetConnectionDetailsMapping for this OceanAksVng

func (*OceanAksVng) GetDeletionPolicy

func (mg *OceanAksVng) GetDeletionPolicy() xpv1.DeletionPolicy

GetDeletionPolicy of this OceanAksVng.

func (*OceanAksVng) GetID

func (tr *OceanAksVng) GetID() string

GetID returns ID of underlying Terraform resource of this OceanAksVng

func (*OceanAksVng) GetManagementPolicy

func (mg *OceanAksVng) GetManagementPolicy() xpv1.ManagementPolicy

GetManagementPolicy of this OceanAksVng.

func (*OceanAksVng) GetObservation

func (tr *OceanAksVng) GetObservation() (map[string]any, error)

GetObservation of this OceanAksVng

func (*OceanAksVng) GetParameters

func (tr *OceanAksVng) GetParameters() (map[string]any, error)

GetParameters of this OceanAksVng

func (*OceanAksVng) GetProviderConfigReference

func (mg *OceanAksVng) GetProviderConfigReference() *xpv1.Reference

GetProviderConfigReference of this OceanAksVng.

func (*OceanAksVng) GetProviderReference

func (mg *OceanAksVng) GetProviderReference() *xpv1.Reference

GetProviderReference of this OceanAksVng. Deprecated: Use GetProviderConfigReference.

func (*OceanAksVng) GetPublishConnectionDetailsTo

func (mg *OceanAksVng) GetPublishConnectionDetailsTo() *xpv1.PublishConnectionDetailsTo

GetPublishConnectionDetailsTo of this OceanAksVng.

func (*OceanAksVng) GetTerraformResourceType

func (mg *OceanAksVng) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this OceanAksVng

func (*OceanAksVng) GetTerraformSchemaVersion

func (tr *OceanAksVng) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*OceanAksVng) GetWriteConnectionSecretToReference

func (mg *OceanAksVng) GetWriteConnectionSecretToReference() *xpv1.SecretReference

GetWriteConnectionSecretToReference of this OceanAksVng.

func (*OceanAksVng) LateInitialize

func (tr *OceanAksVng) LateInitialize(attrs []byte) (bool, error)

LateInitialize this OceanAksVng using its observed tfState. returns True if there are any spec changes for the resource.

func (*OceanAksVng) SetConditions

func (mg *OceanAksVng) SetConditions(c ...xpv1.Condition)

SetConditions of this OceanAksVng.

func (*OceanAksVng) SetDeletionPolicy

func (mg *OceanAksVng) SetDeletionPolicy(r xpv1.DeletionPolicy)

SetDeletionPolicy of this OceanAksVng.

func (*OceanAksVng) SetManagementPolicy

func (mg *OceanAksVng) SetManagementPolicy(r xpv1.ManagementPolicy)

SetManagementPolicy of this OceanAksVng.

func (*OceanAksVng) SetObservation

func (tr *OceanAksVng) SetObservation(obs map[string]any) error

SetObservation for this OceanAksVng

func (*OceanAksVng) SetParameters

func (tr *OceanAksVng) SetParameters(params map[string]any) error

SetParameters for this OceanAksVng

func (*OceanAksVng) SetProviderConfigReference

func (mg *OceanAksVng) SetProviderConfigReference(r *xpv1.Reference)

SetProviderConfigReference of this OceanAksVng.

func (*OceanAksVng) SetProviderReference

func (mg *OceanAksVng) SetProviderReference(r *xpv1.Reference)

SetProviderReference of this OceanAksVng. Deprecated: Use SetProviderConfigReference.

func (*OceanAksVng) SetPublishConnectionDetailsTo

func (mg *OceanAksVng) SetPublishConnectionDetailsTo(r *xpv1.PublishConnectionDetailsTo)

SetPublishConnectionDetailsTo of this OceanAksVng.

func (*OceanAksVng) SetWriteConnectionSecretToReference

func (mg *OceanAksVng) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)

SetWriteConnectionSecretToReference of this OceanAksVng.

type OceanAksVngList

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

OceanAksVngList contains a list of OceanAksVngs

func (*OceanAksVngList) DeepCopy

func (in *OceanAksVngList) DeepCopy() *OceanAksVngList

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

func (*OceanAksVngList) DeepCopyInto

func (in *OceanAksVngList) DeepCopyInto(out *OceanAksVngList)

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

func (*OceanAksVngList) DeepCopyObject

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

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

func (*OceanAksVngList) GetItems

func (l *OceanAksVngList) GetItems() []resource.Managed

GetItems of this OceanAksVngList.

type OceanAksVngObservation

type OceanAksVngObservation struct {

	// An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
	AvailabilityZones []*string `json:"availabilityZones,omitempty" tf:"availability_zones,omitempty"`

	// Enable node public IP.
	EnableNodePublicIP *bool `json:"enableNodePublicIp,omitempty" tf:"enable_node_public_ip,omitempty"`

	// If no spot instance markets are available, enable Ocean to launch on-demand instances instead.
	FallbackToOndemand *bool `json:"fallbackToOndemand,omitempty" tf:"fallback_to_ondemand,omitempty"`

	// Filters for the VM sizes that can be launched from the virtual node group.
	Filters []FiltersObservation `json:"filters,omitempty" tf:"filters,omitempty"`

	// Specify the custom headroom per VNG. Provide a list of headroom objects.
	Headrooms []HeadroomsObservation `json:"headrooms,omitempty" tf:"headrooms,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
	KubernetesVersion *string `json:"kubernetesVersion,omitempty" tf:"kubernetes_version,omitempty"`

	// An array of labels to add to the virtual node group.Only custom user labels are allowed, and not Kubernetes built-in labels or Spot internal labels.
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Maximum node count limit.
	MaxCount *float64 `json:"maxCount,omitempty" tf:"max_count,omitempty"`

	// The maximum number of pods per node in the node pools.
	MaxPodsPerNode *float64 `json:"maxPodsPerNode,omitempty" tf:"max_pods_per_node,omitempty"`

	// Minimum node count limit.
	MinCount *float64 `json:"minCount,omitempty" tf:"min_count,omitempty"`

	// Enter a name for the virtual node group.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The Ocean cluster identifier. Required for Launch Spec creation.
	OceanID *string `json:"oceanId,omitempty" tf:"ocean_id,omitempty"`

	// The size of the OS disk in GB.
	OsDiskSizeGb *float64 `json:"osDiskSizeGb,omitempty" tf:"os_disk_size_gb,omitempty"`

	// The type of the OS disk.
	OsDiskType *string `json:"osDiskType,omitempty" tf:"os_disk_type,omitempty"`

	// The OS SKU of the OS type. Must correlate with the os type.
	OsSku *string `json:"osSku,omitempty" tf:"os_sku,omitempty"`

	// The OS type of the OS disk. Can't be modified once set.
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
	PodSubnetIds []*string `json:"podSubnetIds,omitempty" tf:"pod_subnet_ids,omitempty"`

	// Percentage of spot VMs to maintain.
	SpotPercentage *float64 `json:"spotPercentage,omitempty" tf:"spot_percentage,omitempty"`

	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Add taints to a virtual node group.
	Taints []TaintsObservation `json:"taints,omitempty" tf:"taints,omitempty"`

	// The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
	VnetSubnetIds []*string `json:"vnetSubnetIds,omitempty" tf:"vnet_subnet_ids,omitempty"`
}

func (*OceanAksVngObservation) DeepCopy

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

func (*OceanAksVngObservation) DeepCopyInto

func (in *OceanAksVngObservation) DeepCopyInto(out *OceanAksVngObservation)

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

type OceanAksVngParameters

type OceanAksVngParameters struct {

	// An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
	// +kubebuilder:validation:Optional
	AvailabilityZones []*string `json:"availabilityZones,omitempty" tf:"availability_zones,omitempty"`

	// Enable node public IP.
	// +kubebuilder:validation:Optional
	EnableNodePublicIP *bool `json:"enableNodePublicIp,omitempty" tf:"enable_node_public_ip,omitempty"`

	// If no spot instance markets are available, enable Ocean to launch on-demand instances instead.
	// +kubebuilder:validation:Optional
	FallbackToOndemand *bool `json:"fallbackToOndemand,omitempty" tf:"fallback_to_ondemand,omitempty"`

	// Filters for the VM sizes that can be launched from the virtual node group.
	// +kubebuilder:validation:Optional
	Filters []FiltersParameters `json:"filters,omitempty" tf:"filters,omitempty"`

	// Specify the custom headroom per VNG. Provide a list of headroom objects.
	// +kubebuilder:validation:Optional
	Headrooms []HeadroomsParameters `json:"headrooms,omitempty" tf:"headrooms,omitempty"`

	// The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
	// +kubebuilder:validation:Optional
	KubernetesVersion *string `json:"kubernetesVersion,omitempty" tf:"kubernetes_version,omitempty"`

	// An array of labels to add to the virtual node group.Only custom user labels are allowed, and not Kubernetes built-in labels or Spot internal labels.
	// +kubebuilder:validation:Optional
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Maximum node count limit.
	// +kubebuilder:validation:Optional
	MaxCount *float64 `json:"maxCount,omitempty" tf:"max_count,omitempty"`

	// The maximum number of pods per node in the node pools.
	// +kubebuilder:validation:Optional
	MaxPodsPerNode *float64 `json:"maxPodsPerNode,omitempty" tf:"max_pods_per_node,omitempty"`

	// Minimum node count limit.
	// +kubebuilder:validation:Optional
	MinCount *float64 `json:"minCount,omitempty" tf:"min_count,omitempty"`

	// Enter a name for the virtual node group.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// The Ocean cluster identifier. Required for Launch Spec creation.
	// +kubebuilder:validation:Optional
	OceanID *string `json:"oceanId,omitempty" tf:"ocean_id,omitempty"`

	// The size of the OS disk in GB.
	// +kubebuilder:validation:Optional
	OsDiskSizeGb *float64 `json:"osDiskSizeGb,omitempty" tf:"os_disk_size_gb,omitempty"`

	// The type of the OS disk.
	// +kubebuilder:validation:Optional
	OsDiskType *string `json:"osDiskType,omitempty" tf:"os_disk_type,omitempty"`

	// The OS SKU of the OS type. Must correlate with the os type.
	// +kubebuilder:validation:Optional
	OsSku *string `json:"osSku,omitempty" tf:"os_sku,omitempty"`

	// The OS type of the OS disk. Can't be modified once set.
	// +kubebuilder:validation:Optional
	OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"`

	// The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
	// +kubebuilder:validation:Optional
	PodSubnetIds []*string `json:"podSubnetIds,omitempty" tf:"pod_subnet_ids,omitempty"`

	// Percentage of spot VMs to maintain.
	// +kubebuilder:validation:Optional
	SpotPercentage *float64 `json:"spotPercentage,omitempty" tf:"spot_percentage,omitempty"`

	// +kubebuilder:validation:Optional
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Add taints to a virtual node group.
	// +kubebuilder:validation:Optional
	Taints []TaintsParameters `json:"taints,omitempty" tf:"taints,omitempty"`

	// The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
	// +kubebuilder:validation:Optional
	VnetSubnetIds []*string `json:"vnetSubnetIds,omitempty" tf:"vnet_subnet_ids,omitempty"`
}

func (*OceanAksVngParameters) DeepCopy

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

func (*OceanAksVngParameters) DeepCopyInto

func (in *OceanAksVngParameters) DeepCopyInto(out *OceanAksVngParameters)

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

type OceanAksVngSpec

type OceanAksVngSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     OceanAksVngParameters `json:"forProvider"`
}

OceanAksVngSpec defines the desired state of OceanAksVng

func (*OceanAksVngSpec) DeepCopy

func (in *OceanAksVngSpec) DeepCopy() *OceanAksVngSpec

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

func (*OceanAksVngSpec) DeepCopyInto

func (in *OceanAksVngSpec) DeepCopyInto(out *OceanAksVngSpec)

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

type OceanAksVngStatus

type OceanAksVngStatus struct {
	v1.ResourceStatus `json:",inline"`
	AtProvider        OceanAksVngObservation `json:"atProvider,omitempty"`
}

OceanAksVngStatus defines the observed state of OceanAksVng.

func (*OceanAksVngStatus) DeepCopy

func (in *OceanAksVngStatus) DeepCopy() *OceanAksVngStatus

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

func (*OceanAksVngStatus) DeepCopyInto

func (in *OceanAksVngStatus) DeepCopyInto(out *OceanAksVngStatus)

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

type TaintsObservation

type TaintsObservation struct {

	// Set taint effect.
	Effect *string `json:"effect,omitempty" tf:"effect,omitempty"`

	// Set label key. The following are not allowed: ["kubernetes.azure.com/agentpool", "kubernetes.io/arch", "kubernetes.io/os", "node.kubernetes.io/instance-type", "topology.kubernetes.io/region", "topology.kubernetes.io/zone", "kubernetes.azure.com/cluster", "kubernetes.azure.com/mode", "kubernetes.azure.com/role", "kubernetes.azure.com/scalesetpriority", "kubernetes.io/hostname", "kubernetes.azure.com/storageprofile", "kubernetes.azure.com/storagetier", "kubernetes.azure.com/instance-sku", "kubernetes.azure.com/node-image-version", "kubernetes.azure.com/subnet", "kubernetes.azure.com/vnet", "kubernetes.azure.com/ppg", "kubernetes.azure.com/encrypted-set", "kubernetes.azure.com/accelerator", "kubernetes.azure.com/fips_enabled", "kubernetes.azure.com/os-sku"]
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// Set label value.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*TaintsObservation) DeepCopy

func (in *TaintsObservation) DeepCopy() *TaintsObservation

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

func (*TaintsObservation) DeepCopyInto

func (in *TaintsObservation) DeepCopyInto(out *TaintsObservation)

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

type TaintsParameters

type TaintsParameters struct {

	// Set taint effect.
	// +kubebuilder:validation:Required
	Effect *string `json:"effect" tf:"effect,omitempty"`

	// Set label key. The following are not allowed: ["kubernetes.azure.com/agentpool", "kubernetes.io/arch", "kubernetes.io/os", "node.kubernetes.io/instance-type", "topology.kubernetes.io/region", "topology.kubernetes.io/zone", "kubernetes.azure.com/cluster", "kubernetes.azure.com/mode", "kubernetes.azure.com/role", "kubernetes.azure.com/scalesetpriority", "kubernetes.io/hostname", "kubernetes.azure.com/storageprofile", "kubernetes.azure.com/storagetier", "kubernetes.azure.com/instance-sku", "kubernetes.azure.com/node-image-version", "kubernetes.azure.com/subnet", "kubernetes.azure.com/vnet", "kubernetes.azure.com/ppg", "kubernetes.azure.com/encrypted-set", "kubernetes.azure.com/accelerator", "kubernetes.azure.com/fips_enabled", "kubernetes.azure.com/os-sku"]
	// +kubebuilder:validation:Required
	Key *string `json:"key" tf:"key,omitempty"`

	// Set label value.
	// +kubebuilder:validation:Required
	Value *string `json:"value" tf:"value,omitempty"`
}

func (*TaintsParameters) DeepCopy

func (in *TaintsParameters) DeepCopy() *TaintsParameters

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

func (*TaintsParameters) DeepCopyInto

func (in *TaintsParameters) DeepCopyInto(out *TaintsParameters)

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