v1alpha1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Nov 14, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=dataplatform.ionoscloud.io +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "dataplatform.ionoscloud.io"
	CRDVersion = "v1alpha1"
)

Package type metadata.

Variables

View Source
var (
	Cluster_Kind             = "Cluster"
	Cluster_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Cluster_Kind}.String()
	Cluster_KindAPIVersion   = Cluster_Kind + "." + CRDGroupVersion.String()
	Cluster_GroupVersionKind = CRDGroupVersion.WithKind(Cluster_Kind)
)

Repository type metadata.

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 (
	NodePool_Kind             = "NodePool"
	NodePool_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: NodePool_Kind}.String()
	NodePool_KindAPIVersion   = NodePool_Kind + "." + CRDGroupVersion.String()
	NodePool_GroupVersionKind = CRDGroupVersion.WithKind(NodePool_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type Cluster

type Cluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	Spec   ClusterSpec   `json:"spec"`
	Status ClusterStatus `json:"status,omitempty"`
}

Cluster is the Schema for the Clusters API. Creates and manages Dataplatform Cluster objects. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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:resource:scope=Cluster,categories={crossplane,managed,ionos}

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

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

GetCondition of this Cluster.

func (*Cluster) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Cluster

func (*Cluster) GetDeletionPolicy

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

GetDeletionPolicy of this Cluster.

func (*Cluster) GetID

func (tr *Cluster) GetID() string

GetID returns ID of underlying Terraform resource of this Cluster

func (*Cluster) GetInitParameters

func (tr *Cluster) GetInitParameters() (map[string]any, error)

GetInitParameters of this Cluster

func (*Cluster) GetManagementPolicies

func (mg *Cluster) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this Cluster.

func (*Cluster) GetMergedParameters

func (tr *Cluster) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this Cluster

func (*Cluster) GetObservation

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

GetObservation of this Cluster

func (*Cluster) GetParameters

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

GetParameters of this Cluster

func (*Cluster) GetProviderConfigReference

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

GetProviderConfigReference of this Cluster.

func (*Cluster) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Cluster.

func (*Cluster) GetTerraformResourceType

func (mg *Cluster) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Cluster

func (*Cluster) GetTerraformSchemaVersion

func (tr *Cluster) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Cluster) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Cluster.

func (*Cluster) Hub

func (tr *Cluster) Hub()

Hub marks this type as a conversion hub.

func (*Cluster) LateInitialize

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

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

func (*Cluster) ResolveReferences

func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this Cluster.

func (*Cluster) SetConditions

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

SetConditions of this Cluster.

func (*Cluster) SetDeletionPolicy

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

SetDeletionPolicy of this Cluster.

func (*Cluster) SetManagementPolicies

func (mg *Cluster) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this Cluster.

func (*Cluster) SetObservation

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

SetObservation for this Cluster

func (*Cluster) SetParameters

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

SetParameters for this Cluster

func (*Cluster) SetProviderConfigReference

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

SetProviderConfigReference of this Cluster.

func (*Cluster) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Cluster.

func (*Cluster) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Cluster.

type ClusterInitParameters

type ClusterInitParameters struct {

	// [string] The UUID of the virtual data center (VDC) the cluster is provisioned.
	// The UUID of the virtual data center (VDC) in which the cluster is provisioned
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/compute/v1alpha1.Datacenter
	DatacenterID *string `json:"datacenterId,omitempty" tf:"datacenter_id,omitempty"`

	// Reference to a Datacenter in compute to populate datacenterId.
	// +kubebuilder:validation:Optional
	DatacenterIDRef *v1.Reference `json:"datacenterIdRef,omitempty" tf:"-"`

	// Selector for a Datacenter in compute to populate datacenterId.
	// +kubebuilder:validation:Optional
	DatacenterIDSelector *v1.Selector `json:"datacenterIdSelector,omitempty" tf:"-"`

	// [list] A list of LANs you want this node pool to be part of.
	// A list of LANs you want this node pool to be part of
	Lans []LansInitParameters `json:"lans,omitempty" tf:"lans,omitempty"`

	// [string] Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	// Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	MaintenanceWindow []MaintenanceWindowInitParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"`

	// [string] The name of your cluster. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	// The name of your cluster. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// [int] The version of the Data Platform.
	// The version of the Data Platform.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ClusterInitParameters) DeepCopy

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

func (*ClusterInitParameters) DeepCopyInto

func (in *ClusterInitParameters) DeepCopyInto(out *ClusterInitParameters)

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           []Cluster `json:"items"`
}

ClusterList contains 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.

func (*ClusterList) GetItems

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

GetItems of this ClusterList.

type ClusterObservation

type ClusterObservation struct {

	// [string] The UUID of the virtual data center (VDC) the cluster is provisioned.
	// The UUID of the virtual data center (VDC) in which the cluster is provisioned
	DatacenterID *string `json:"datacenterId,omitempty" tf:"datacenter_id,omitempty"`

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

	// [list] A list of LANs you want this node pool to be part of.
	// A list of LANs you want this node pool to be part of
	Lans []LansObservation `json:"lans,omitempty" tf:"lans,omitempty"`

	// [string] Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	// Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	MaintenanceWindow []MaintenanceWindowObservation `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"`

	// [string] The name of your cluster. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	// The name of your cluster. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// [int] The version of the Data Platform.
	// The version of the Data Platform.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ClusterObservation) DeepCopy

func (in *ClusterObservation) DeepCopy() *ClusterObservation

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

func (*ClusterObservation) DeepCopyInto

func (in *ClusterObservation) DeepCopyInto(out *ClusterObservation)

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

type ClusterParameters

type ClusterParameters struct {

	// [string] The UUID of the virtual data center (VDC) the cluster is provisioned.
	// The UUID of the virtual data center (VDC) in which the cluster is provisioned
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/compute/v1alpha1.Datacenter
	// +kubebuilder:validation:Optional
	DatacenterID *string `json:"datacenterId,omitempty" tf:"datacenter_id,omitempty"`

	// Reference to a Datacenter in compute to populate datacenterId.
	// +kubebuilder:validation:Optional
	DatacenterIDRef *v1.Reference `json:"datacenterIdRef,omitempty" tf:"-"`

	// Selector for a Datacenter in compute to populate datacenterId.
	// +kubebuilder:validation:Optional
	DatacenterIDSelector *v1.Selector `json:"datacenterIdSelector,omitempty" tf:"-"`

	// [list] A list of LANs you want this node pool to be part of.
	// A list of LANs you want this node pool to be part of
	// +kubebuilder:validation:Optional
	Lans []LansParameters `json:"lans,omitempty" tf:"lans,omitempty"`

	// [string] Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	// Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	// +kubebuilder:validation:Optional
	MaintenanceWindow []MaintenanceWindowParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"`

	// [string] The name of your cluster. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	// The name of your cluster. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// [int] The version of the Data Platform.
	// The version of the Data Platform.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ClusterParameters) DeepCopy

func (in *ClusterParameters) DeepCopy() *ClusterParameters

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

func (*ClusterParameters) DeepCopyInto

func (in *ClusterParameters) DeepCopyInto(out *ClusterParameters)

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

type ClusterSpec

type ClusterSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     ClusterParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider ClusterInitParameters `json:"initProvider,omitempty"`
}

ClusterSpec defines the desired state of Cluster

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 ClusterStatus

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

ClusterStatus defines the observed state of Cluster.

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 LansInitParameters

type LansInitParameters struct {

	// [bool] Indicates if the Kubernetes node pool LAN will reserve an IP using DHCP. The default value is 'true'.
	// Indicates if the Kubernetes node pool LAN will reserve an IP using DHCP. The default value is 'true'
	DHCP *bool `json:"dhcp,omitempty" tf:"dhcp,omitempty"`

	// [string] The LAN ID of an existing LAN at the related data center.
	// The LAN ID of an existing LAN at the related data center
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/compute/v1alpha1.Lan
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	LanID *string `json:"lanId,omitempty" tf:"lan_id,omitempty"`

	// Reference to a Lan in compute to populate lanId.
	// +kubebuilder:validation:Optional
	LanIDRef *v1.Reference `json:"lanIdRef,omitempty" tf:"-"`

	// Selector for a Lan in compute to populate lanId.
	// +kubebuilder:validation:Optional
	LanIDSelector *v1.Selector `json:"lanIdSelector,omitempty" tf:"-"`

	// [list] An array of additional LANs attached to worker nodes.
	// An array of additional LANs attached to worker nodes
	Routes []RoutesInitParameters `json:"routes,omitempty" tf:"routes,omitempty"`
}

func (*LansInitParameters) DeepCopy

func (in *LansInitParameters) DeepCopy() *LansInitParameters

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

func (*LansInitParameters) DeepCopyInto

func (in *LansInitParameters) DeepCopyInto(out *LansInitParameters)

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

type LansObservation

type LansObservation struct {

	// [bool] Indicates if the Kubernetes node pool LAN will reserve an IP using DHCP. The default value is 'true'.
	// Indicates if the Kubernetes node pool LAN will reserve an IP using DHCP. The default value is 'true'
	DHCP *bool `json:"dhcp,omitempty" tf:"dhcp,omitempty"`

	// [string] The LAN ID of an existing LAN at the related data center.
	// The LAN ID of an existing LAN at the related data center
	LanID *string `json:"lanId,omitempty" tf:"lan_id,omitempty"`

	// [list] An array of additional LANs attached to worker nodes.
	// An array of additional LANs attached to worker nodes
	Routes []RoutesObservation `json:"routes,omitempty" tf:"routes,omitempty"`
}

func (*LansObservation) DeepCopy

func (in *LansObservation) DeepCopy() *LansObservation

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

func (*LansObservation) DeepCopyInto

func (in *LansObservation) DeepCopyInto(out *LansObservation)

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

type LansParameters

type LansParameters struct {

	// [bool] Indicates if the Kubernetes node pool LAN will reserve an IP using DHCP. The default value is 'true'.
	// Indicates if the Kubernetes node pool LAN will reserve an IP using DHCP. The default value is 'true'
	// +kubebuilder:validation:Optional
	DHCP *bool `json:"dhcp,omitempty" tf:"dhcp,omitempty"`

	// [string] The LAN ID of an existing LAN at the related data center.
	// The LAN ID of an existing LAN at the related data center
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/compute/v1alpha1.Lan
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractResourceID()
	// +kubebuilder:validation:Optional
	LanID *string `json:"lanId,omitempty" tf:"lan_id,omitempty"`

	// Reference to a Lan in compute to populate lanId.
	// +kubebuilder:validation:Optional
	LanIDRef *v1.Reference `json:"lanIdRef,omitempty" tf:"-"`

	// Selector for a Lan in compute to populate lanId.
	// +kubebuilder:validation:Optional
	LanIDSelector *v1.Selector `json:"lanIdSelector,omitempty" tf:"-"`

	// [list] An array of additional LANs attached to worker nodes.
	// An array of additional LANs attached to worker nodes
	// +kubebuilder:validation:Optional
	Routes []RoutesParameters `json:"routes,omitempty" tf:"routes,omitempty"`
}

func (*LansParameters) DeepCopy

func (in *LansParameters) DeepCopy() *LansParameters

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

func (*LansParameters) DeepCopyInto

func (in *LansParameters) DeepCopyInto(out *LansParameters)

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

type MaintenanceWindowInitParameters

type MaintenanceWindowInitParameters struct {

	// [string] Must be set with one the values Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday.
	DayOfTheWeek *string `json:"dayOfTheWeek,omitempty" tf:"day_of_the_week,omitempty"`

	// [string] Time at which the maintenance should start. Must conform to the 'HH:MM:SS' 24-hour format. This pattern matches the "HH:MM:SS 24-hour format with leading 0" format. For more information take a look at this link.
	// Time at which the maintenance should start.
	Time *string `json:"time,omitempty" tf:"time,omitempty"`
}

func (*MaintenanceWindowInitParameters) DeepCopy

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

func (*MaintenanceWindowInitParameters) DeepCopyInto

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

type MaintenanceWindowObservation

type MaintenanceWindowObservation struct {

	// [string] Must be set with one the values Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday.
	DayOfTheWeek *string `json:"dayOfTheWeek,omitempty" tf:"day_of_the_week,omitempty"`

	// [string] Time at which the maintenance should start. Must conform to the 'HH:MM:SS' 24-hour format. This pattern matches the "HH:MM:SS 24-hour format with leading 0" format. For more information take a look at this link.
	// Time at which the maintenance should start.
	Time *string `json:"time,omitempty" tf:"time,omitempty"`
}

func (*MaintenanceWindowObservation) DeepCopy

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

func (*MaintenanceWindowObservation) DeepCopyInto

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

type MaintenanceWindowParameters

type MaintenanceWindowParameters struct {

	// [string] Must be set with one the values Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday.
	// +kubebuilder:validation:Optional
	DayOfTheWeek *string `json:"dayOfTheWeek" tf:"day_of_the_week,omitempty"`

	// [string] Time at which the maintenance should start. Must conform to the 'HH:MM:SS' 24-hour format. This pattern matches the "HH:MM:SS 24-hour format with leading 0" format. For more information take a look at this link.
	// Time at which the maintenance should start.
	// +kubebuilder:validation:Optional
	Time *string `json:"time" tf:"time,omitempty"`
}

func (*MaintenanceWindowParameters) DeepCopy

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

func (*MaintenanceWindowParameters) DeepCopyInto

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

type NodePool

type NodePool struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || (has(self.initProvider) && has(self.initProvider.name))",message="spec.forProvider.name is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.nodeCount) || (has(self.initProvider) && has(self.initProvider.nodeCount))",message="spec.forProvider.nodeCount is a required parameter"
	Spec   NodePoolSpec   `json:"spec"`
	Status NodePoolStatus `json:"status,omitempty"`
}

NodePool is the Schema for the NodePools API. Creates and manages Dataplatform Node Pool objects. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].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:resource:scope=Cluster,categories={crossplane,managed,ionos}

func (*NodePool) DeepCopy

func (in *NodePool) DeepCopy() *NodePool

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

func (*NodePool) DeepCopyInto

func (in *NodePool) DeepCopyInto(out *NodePool)

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

func (*NodePool) DeepCopyObject

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

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

func (*NodePool) GetCondition

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

GetCondition of this NodePool.

func (*NodePool) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this NodePool

func (*NodePool) GetDeletionPolicy

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

GetDeletionPolicy of this NodePool.

func (*NodePool) GetID

func (tr *NodePool) GetID() string

GetID returns ID of underlying Terraform resource of this NodePool

func (*NodePool) GetInitParameters

func (tr *NodePool) GetInitParameters() (map[string]any, error)

GetInitParameters of this NodePool

func (*NodePool) GetManagementPolicies

func (mg *NodePool) GetManagementPolicies() xpv1.ManagementPolicies

GetManagementPolicies of this NodePool.

func (*NodePool) GetMergedParameters

func (tr *NodePool) GetMergedParameters(shouldMergeInitProvider bool) (map[string]any, error)

GetInitParameters of this NodePool

func (*NodePool) GetObservation

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

GetObservation of this NodePool

func (*NodePool) GetParameters

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

GetParameters of this NodePool

func (*NodePool) GetProviderConfigReference

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

GetProviderConfigReference of this NodePool.

func (*NodePool) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this NodePool.

func (*NodePool) GetTerraformResourceType

func (mg *NodePool) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this NodePool

func (*NodePool) GetTerraformSchemaVersion

func (tr *NodePool) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*NodePool) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this NodePool.

func (*NodePool) Hub

func (tr *NodePool) Hub()

Hub marks this type as a conversion hub.

func (*NodePool) LateInitialize

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

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

func (*NodePool) ResolveReferences

func (mg *NodePool) ResolveReferences(ctx context.Context, c client.Reader) error

ResolveReferences of this NodePool.

func (*NodePool) SetConditions

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

SetConditions of this NodePool.

func (*NodePool) SetDeletionPolicy

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

SetDeletionPolicy of this NodePool.

func (*NodePool) SetManagementPolicies

func (mg *NodePool) SetManagementPolicies(r xpv1.ManagementPolicies)

SetManagementPolicies of this NodePool.

func (*NodePool) SetObservation

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

SetObservation for this NodePool

func (*NodePool) SetParameters

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

SetParameters for this NodePool

func (*NodePool) SetProviderConfigReference

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

SetProviderConfigReference of this NodePool.

func (*NodePool) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this NodePool.

func (*NodePool) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this NodePool.

type NodePoolInitParameters

type NodePoolInitParameters struct {

	// [map] Key-value pairs attached to node pool resource as Kubernetes annotations.
	// Key-value pairs attached to node pool resource as [Kubernetes annotations](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/)
	// +mapType=granular
	Annotations map[string]*string `json:"annotations,omitempty" tf:"annotations,omitempty"`

	// [string] The availability zone of the virtual datacenter region where the node pool resources should be provisioned. Must be set with one of the values AUTO, ZONE_1 or ZONE_2. The default value is AUTO.
	// The availability zone of the virtual datacenter region where the node pool resources should be provisioned.
	AvailabilityZone *string `json:"availabilityZone,omitempty" tf:"availability_zone,omitempty"`

	// [string] A valid CPU family name or AUTO if the platform shall choose the best fitting option. Available CPU architectures can be retrieved from the datacenter resource. The default value is AUTO.
	// A valid CPU family name or `AUTO` if the platform shall choose the best fitting option. Available CPU architectures can be retrieved from the datacenter resource.
	CPUFamily *string `json:"cpuFamily,omitempty" tf:"cpu_family,omitempty"`

	// [string] The UUID of an existing Dataplatform cluster.
	// The UUID of an existing Dataplatform cluster.
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/dataplatform/v1alpha1.Cluster
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	// Reference to a Cluster in dataplatform to populate clusterId.
	// +kubebuilder:validation:Optional
	ClusterIDRef *v1.Reference `json:"clusterIdRef,omitempty" tf:"-"`

	// Selector for a Cluster in dataplatform to populate clusterId.
	// +kubebuilder:validation:Optional
	ClusterIDSelector *v1.Selector `json:"clusterIdSelector,omitempty" tf:"-"`

	// [int] The number of CPU cores per node. Must be set with a minimum value of 1. The default value is 4.
	// The number of CPU cores per node.
	CoresCount *float64 `json:"coresCount,omitempty" tf:"cores_count,omitempty"`

	// [map] Key-value pairs attached to the node pool resource as Kubernetes labels.
	// Key-value pairs attached to the node pool resource as [Kubernetes labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/)
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// [string] Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	// Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	MaintenanceWindow []NodePoolMaintenanceWindowInitParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"`

	// [string] The name of your node pool. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	// The name of your node pool. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// [int] The number of nodes that make up the node pool. Must be set with a minimum value of 1.
	// The number of nodes that make up the node pool.
	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	// [int] The RAM size for one node in MB. Must be set in multiples of 1024MB, with a minimum size is of 2048MB. The default value is 4096.
	// The RAM size for one node in MB. Must be set in multiples of 1024 MB, with a minimum size is of 2048 MB.
	RAMSize *float64 `json:"ramSize,omitempty" tf:"ram_size,omitempty"`

	// [int] The size of the volume in GB. The size must be greater than 10GB. The default value is 20.
	// The size of the volume in GB. The size must be greater than 10GB.
	StorageSize *float64 `json:"storageSize,omitempty" tf:"storage_size,omitempty"`

	// [int] The type of hardware for the volume. Must be set with one of the values HDD or SSD. The default value is SSD.
	// The type of hardware for the volume.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`
}

func (*NodePoolInitParameters) DeepCopy

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

func (*NodePoolInitParameters) DeepCopyInto

func (in *NodePoolInitParameters) DeepCopyInto(out *NodePoolInitParameters)

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

type NodePoolList

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

NodePoolList contains a list of NodePools

func (*NodePoolList) DeepCopy

func (in *NodePoolList) DeepCopy() *NodePoolList

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

func (*NodePoolList) DeepCopyInto

func (in *NodePoolList) DeepCopyInto(out *NodePoolList)

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

func (*NodePoolList) DeepCopyObject

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

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

func (*NodePoolList) GetItems

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

GetItems of this NodePoolList.

type NodePoolMaintenanceWindowInitParameters

type NodePoolMaintenanceWindowInitParameters struct {

	// [string] Must be set with one the values Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday.
	DayOfTheWeek *string `json:"dayOfTheWeek,omitempty" tf:"day_of_the_week,omitempty"`

	// [string] Time at which the maintenance should start. Must conform to the 'HH:MM:SS' 24-hour format. This pattern matches the "HH:MM:SS 24-hour format with leading 0" format. For more information take a look at this link.
	// Time at which the maintenance should start.
	Time *string `json:"time,omitempty" tf:"time,omitempty"`
}

func (*NodePoolMaintenanceWindowInitParameters) DeepCopy

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

func (*NodePoolMaintenanceWindowInitParameters) DeepCopyInto

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

type NodePoolMaintenanceWindowObservation

type NodePoolMaintenanceWindowObservation struct {

	// [string] Must be set with one the values Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday.
	DayOfTheWeek *string `json:"dayOfTheWeek,omitempty" tf:"day_of_the_week,omitempty"`

	// [string] Time at which the maintenance should start. Must conform to the 'HH:MM:SS' 24-hour format. This pattern matches the "HH:MM:SS 24-hour format with leading 0" format. For more information take a look at this link.
	// Time at which the maintenance should start.
	Time *string `json:"time,omitempty" tf:"time,omitempty"`
}

func (*NodePoolMaintenanceWindowObservation) DeepCopy

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

func (*NodePoolMaintenanceWindowObservation) DeepCopyInto

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

type NodePoolMaintenanceWindowParameters

type NodePoolMaintenanceWindowParameters struct {

	// [string] Must be set with one the values Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday.
	// +kubebuilder:validation:Optional
	DayOfTheWeek *string `json:"dayOfTheWeek" tf:"day_of_the_week,omitempty"`

	// [string] Time at which the maintenance should start. Must conform to the 'HH:MM:SS' 24-hour format. This pattern matches the "HH:MM:SS 24-hour format with leading 0" format. For more information take a look at this link.
	// Time at which the maintenance should start.
	// +kubebuilder:validation:Optional
	Time *string `json:"time" tf:"time,omitempty"`
}

func (*NodePoolMaintenanceWindowParameters) DeepCopy

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

func (*NodePoolMaintenanceWindowParameters) DeepCopyInto

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

type NodePoolObservation

type NodePoolObservation struct {

	// [map] Key-value pairs attached to node pool resource as Kubernetes annotations.
	// Key-value pairs attached to node pool resource as [Kubernetes annotations](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/)
	// +mapType=granular
	Annotations map[string]*string `json:"annotations,omitempty" tf:"annotations,omitempty"`

	// [string] The availability zone of the virtual datacenter region where the node pool resources should be provisioned. Must be set with one of the values AUTO, ZONE_1 or ZONE_2. The default value is AUTO.
	// The availability zone of the virtual datacenter region where the node pool resources should be provisioned.
	AvailabilityZone *string `json:"availabilityZone,omitempty" tf:"availability_zone,omitempty"`

	// [string] A valid CPU family name or AUTO if the platform shall choose the best fitting option. Available CPU architectures can be retrieved from the datacenter resource. The default value is AUTO.
	// A valid CPU family name or `AUTO` if the platform shall choose the best fitting option. Available CPU architectures can be retrieved from the datacenter resource.
	CPUFamily *string `json:"cpuFamily,omitempty" tf:"cpu_family,omitempty"`

	// [string] The UUID of an existing Dataplatform cluster.
	// The UUID of an existing Dataplatform cluster.
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	// [int] The number of CPU cores per node. Must be set with a minimum value of 1. The default value is 4.
	// The number of CPU cores per node.
	CoresCount *float64 `json:"coresCount,omitempty" tf:"cores_count,omitempty"`

	// The UUID of the virtual data center (VDC) in which the nodepool is provisioned
	DatacenterID *string `json:"datacenterId,omitempty" tf:"datacenter_id,omitempty"`

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

	// [map] Key-value pairs attached to the node pool resource as Kubernetes labels.
	// Key-value pairs attached to the node pool resource as [Kubernetes labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/)
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// [string] Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	// Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	MaintenanceWindow []NodePoolMaintenanceWindowObservation `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"`

	// [string] The name of your node pool. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	// The name of your node pool. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// [int] The number of nodes that make up the node pool. Must be set with a minimum value of 1.
	// The number of nodes that make up the node pool.
	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	// [int] The RAM size for one node in MB. Must be set in multiples of 1024MB, with a minimum size is of 2048MB. The default value is 4096.
	// The RAM size for one node in MB. Must be set in multiples of 1024 MB, with a minimum size is of 2048 MB.
	RAMSize *float64 `json:"ramSize,omitempty" tf:"ram_size,omitempty"`

	// [int] The size of the volume in GB. The size must be greater than 10GB. The default value is 20.
	// The size of the volume in GB. The size must be greater than 10GB.
	StorageSize *float64 `json:"storageSize,omitempty" tf:"storage_size,omitempty"`

	// [int] The type of hardware for the volume. Must be set with one of the values HDD or SSD. The default value is SSD.
	// The type of hardware for the volume.
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`

	// The version of the Data Platform.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NodePoolObservation) DeepCopy

func (in *NodePoolObservation) DeepCopy() *NodePoolObservation

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

func (*NodePoolObservation) DeepCopyInto

func (in *NodePoolObservation) DeepCopyInto(out *NodePoolObservation)

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

type NodePoolParameters

type NodePoolParameters struct {

	// [map] Key-value pairs attached to node pool resource as Kubernetes annotations.
	// Key-value pairs attached to node pool resource as [Kubernetes annotations](https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/)
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Annotations map[string]*string `json:"annotations,omitempty" tf:"annotations,omitempty"`

	// [string] The availability zone of the virtual datacenter region where the node pool resources should be provisioned. Must be set with one of the values AUTO, ZONE_1 or ZONE_2. The default value is AUTO.
	// The availability zone of the virtual datacenter region where the node pool resources should be provisioned.
	// +kubebuilder:validation:Optional
	AvailabilityZone *string `json:"availabilityZone,omitempty" tf:"availability_zone,omitempty"`

	// [string] A valid CPU family name or AUTO if the platform shall choose the best fitting option. Available CPU architectures can be retrieved from the datacenter resource. The default value is AUTO.
	// A valid CPU family name or `AUTO` if the platform shall choose the best fitting option. Available CPU architectures can be retrieved from the datacenter resource.
	// +kubebuilder:validation:Optional
	CPUFamily *string `json:"cpuFamily,omitempty" tf:"cpu_family,omitempty"`

	// [string] The UUID of an existing Dataplatform cluster.
	// The UUID of an existing Dataplatform cluster.
	// +crossplane:generate:reference:type=github.com/ionos-cloud/provider-upjet-ionoscloud/apis/dataplatform/v1alpha1.Cluster
	// +kubebuilder:validation:Optional
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	// Reference to a Cluster in dataplatform to populate clusterId.
	// +kubebuilder:validation:Optional
	ClusterIDRef *v1.Reference `json:"clusterIdRef,omitempty" tf:"-"`

	// Selector for a Cluster in dataplatform to populate clusterId.
	// +kubebuilder:validation:Optional
	ClusterIDSelector *v1.Selector `json:"clusterIdSelector,omitempty" tf:"-"`

	// [int] The number of CPU cores per node. Must be set with a minimum value of 1. The default value is 4.
	// The number of CPU cores per node.
	// +kubebuilder:validation:Optional
	CoresCount *float64 `json:"coresCount,omitempty" tf:"cores_count,omitempty"`

	// [map] Key-value pairs attached to the node pool resource as Kubernetes labels.
	// Key-value pairs attached to the node pool resource as [Kubernetes labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/)
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// [string] Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	// Starting time of a weekly 4 hour-long window, during which maintenance might occur in hh:mm:ss format
	// +kubebuilder:validation:Optional
	MaintenanceWindow []NodePoolMaintenanceWindowParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"`

	// [string] The name of your node pool. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	// The name of your node pool. Must be 63 characters or less and must be empty or begin and end with an alphanumeric character ([a-z0-9A-Z]). It can contain dashes (-), underscores (_), dots (.), and alphanumerics in-between.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// [int] The number of nodes that make up the node pool. Must be set with a minimum value of 1.
	// The number of nodes that make up the node pool.
	// +kubebuilder:validation:Optional
	NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"`

	// [int] The RAM size for one node in MB. Must be set in multiples of 1024MB, with a minimum size is of 2048MB. The default value is 4096.
	// The RAM size for one node in MB. Must be set in multiples of 1024 MB, with a minimum size is of 2048 MB.
	// +kubebuilder:validation:Optional
	RAMSize *float64 `json:"ramSize,omitempty" tf:"ram_size,omitempty"`

	// [int] The size of the volume in GB. The size must be greater than 10GB. The default value is 20.
	// The size of the volume in GB. The size must be greater than 10GB.
	// +kubebuilder:validation:Optional
	StorageSize *float64 `json:"storageSize,omitempty" tf:"storage_size,omitempty"`

	// [int] The type of hardware for the volume. Must be set with one of the values HDD or SSD. The default value is SSD.
	// The type of hardware for the volume.
	// +kubebuilder:validation:Optional
	StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"`
}

func (*NodePoolParameters) DeepCopy

func (in *NodePoolParameters) DeepCopy() *NodePoolParameters

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

func (*NodePoolParameters) DeepCopyInto

func (in *NodePoolParameters) DeepCopyInto(out *NodePoolParameters)

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

type NodePoolSpec

type NodePoolSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     NodePoolParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider NodePoolInitParameters `json:"initProvider,omitempty"`
}

NodePoolSpec defines the desired state of NodePool

func (*NodePoolSpec) DeepCopy

func (in *NodePoolSpec) DeepCopy() *NodePoolSpec

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

func (*NodePoolSpec) DeepCopyInto

func (in *NodePoolSpec) DeepCopyInto(out *NodePoolSpec)

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

type NodePoolStatus

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

NodePoolStatus defines the observed state of NodePool.

func (*NodePoolStatus) DeepCopy

func (in *NodePoolStatus) DeepCopy() *NodePoolStatus

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

func (*NodePoolStatus) DeepCopyInto

func (in *NodePoolStatus) DeepCopyInto(out *NodePoolStatus)

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

type RoutesInitParameters

type RoutesInitParameters struct {

	// [string] IPv4 or IPv6 gateway IP for the route.
	// IPv4 or IPv6 gateway IP for the route
	Gateway *string `json:"gateway,omitempty" tf:"gateway,omitempty"`

	// [string] IPv4 or IPv6 CIDR to be routed via the interface.
	// IPv4 or IPv6 CIDR to be routed via the interface
	Network *string `json:"network,omitempty" tf:"network,omitempty"`
}

func (*RoutesInitParameters) DeepCopy

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

func (*RoutesInitParameters) DeepCopyInto

func (in *RoutesInitParameters) DeepCopyInto(out *RoutesInitParameters)

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

type RoutesObservation

type RoutesObservation struct {

	// [string] IPv4 or IPv6 gateway IP for the route.
	// IPv4 or IPv6 gateway IP for the route
	Gateway *string `json:"gateway,omitempty" tf:"gateway,omitempty"`

	// [string] IPv4 or IPv6 CIDR to be routed via the interface.
	// IPv4 or IPv6 CIDR to be routed via the interface
	Network *string `json:"network,omitempty" tf:"network,omitempty"`
}

func (*RoutesObservation) DeepCopy

func (in *RoutesObservation) DeepCopy() *RoutesObservation

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

func (*RoutesObservation) DeepCopyInto

func (in *RoutesObservation) DeepCopyInto(out *RoutesObservation)

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

type RoutesParameters

type RoutesParameters struct {

	// [string] IPv4 or IPv6 gateway IP for the route.
	// IPv4 or IPv6 gateway IP for the route
	// +kubebuilder:validation:Optional
	Gateway *string `json:"gateway" tf:"gateway,omitempty"`

	// [string] IPv4 or IPv6 CIDR to be routed via the interface.
	// IPv4 or IPv6 CIDR to be routed via the interface
	// +kubebuilder:validation:Optional
	Network *string `json:"network" tf:"network,omitempty"`
}

func (*RoutesParameters) DeepCopy

func (in *RoutesParameters) DeepCopy() *RoutesParameters

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

func (*RoutesParameters) DeepCopyInto

func (in *RoutesParameters) DeepCopyInto(out *RoutesParameters)

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