v1beta1

package
v0.40.0-rc.0 Latest Latest
Warning

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

Go to latest
Published: Nov 21, 2023 License: Apache-2.0 Imports: 12 Imported by: 1

Documentation

Overview

+kubebuilder:object:generate=true +groupName=containeraws.gcp.upbound.io +versionName=v1beta1

Index

Constants

View Source
const (
	CRDGroup   = "containeraws.gcp.upbound.io"
	CRDVersion = "v1beta1"
)

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 AdminUsersInitParameters added in v0.35.0

type AdminUsersInitParameters struct {

	// The name of the user, e.g. my-gcp-id@gmail.com.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*AdminUsersInitParameters) DeepCopy added in v0.35.0

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

func (*AdminUsersInitParameters) DeepCopyInto added in v0.35.0

func (in *AdminUsersInitParameters) DeepCopyInto(out *AdminUsersInitParameters)

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

type AdminUsersObservation

type AdminUsersObservation struct {

	// The name of the user, e.g. my-gcp-id@gmail.com.
	Username *string `json:"username,omitempty" tf:"username,omitempty"`
}

func (*AdminUsersObservation) DeepCopy

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

func (*AdminUsersObservation) DeepCopyInto

func (in *AdminUsersObservation) DeepCopyInto(out *AdminUsersObservation)

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

type AdminUsersParameters

type AdminUsersParameters struct {

	// The name of the user, e.g. my-gcp-id@gmail.com.
	// +kubebuilder:validation:Optional
	Username *string `json:"username" tf:"username,omitempty"`
}

func (*AdminUsersParameters) DeepCopy

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

func (*AdminUsersParameters) DeepCopyInto

func (in *AdminUsersParameters) DeepCopyInto(out *AdminUsersParameters)

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

type AuthorizationInitParameters added in v0.35.0

type AuthorizationInitParameters struct {

	// Users to perform operations as a cluster admin. A managed ClusterRoleBinding will be created to grant the cluster-admin ClusterRole to the users. Up to ten admin users can be provided. For more info on RBAC, see https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles
	AdminUsers []AdminUsersInitParameters `json:"adminUsers,omitempty" tf:"admin_users,omitempty"`
}

func (*AuthorizationInitParameters) DeepCopy added in v0.35.0

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

func (*AuthorizationInitParameters) DeepCopyInto added in v0.35.0

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

type AuthorizationObservation

type AuthorizationObservation struct {

	// Users to perform operations as a cluster admin. A managed ClusterRoleBinding will be created to grant the cluster-admin ClusterRole to the users. Up to ten admin users can be provided. For more info on RBAC, see https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles
	AdminUsers []AdminUsersObservation `json:"adminUsers,omitempty" tf:"admin_users,omitempty"`
}

func (*AuthorizationObservation) DeepCopy

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

func (*AuthorizationObservation) DeepCopyInto

func (in *AuthorizationObservation) DeepCopyInto(out *AuthorizationObservation)

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

type AuthorizationParameters

type AuthorizationParameters struct {

	// Users to perform operations as a cluster admin. A managed ClusterRoleBinding will be created to grant the cluster-admin ClusterRole to the users. Up to ten admin users can be provided. For more info on RBAC, see https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles
	// +kubebuilder:validation:Optional
	AdminUsers []AdminUsersParameters `json:"adminUsers" tf:"admin_users,omitempty"`
}

func (*AuthorizationParameters) DeepCopy

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

func (*AuthorizationParameters) DeepCopyInto

func (in *AuthorizationParameters) DeepCopyInto(out *AuthorizationParameters)

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

type AutoscalingInitParameters added in v0.35.0

type AutoscalingInitParameters struct {

	// Maximum number of nodes in the NodePool. Must be >= min_node_count.
	MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"`

	// Minimum number of nodes in the NodePool. Must be >= 1 and <= max_node_count.
	MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"`
}

func (*AutoscalingInitParameters) DeepCopy added in v0.35.0

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

func (*AutoscalingInitParameters) DeepCopyInto added in v0.35.0

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

type AutoscalingMetricsCollectionInitParameters added in v0.35.0

type AutoscalingMetricsCollectionInitParameters struct {

	// The frequency at which EC2 Auto Scaling sends aggregated data to AWS CloudWatch. The only valid value is "1Minute".
	Granularity *string `json:"granularity,omitempty" tf:"granularity,omitempty"`

	// The metrics to enable. For a list of valid metrics, see https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_EnableMetricsCollection.html. If you specify granularity and don't specify any metrics, all metrics are enabled.
	Metrics []*string `json:"metrics,omitempty" tf:"metrics,omitempty"`
}

func (*AutoscalingMetricsCollectionInitParameters) DeepCopy added in v0.35.0

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

func (*AutoscalingMetricsCollectionInitParameters) DeepCopyInto added in v0.35.0

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

type AutoscalingMetricsCollectionObservation added in v0.27.0

type AutoscalingMetricsCollectionObservation struct {

	// The frequency at which EC2 Auto Scaling sends aggregated data to AWS CloudWatch. The only valid value is "1Minute".
	Granularity *string `json:"granularity,omitempty" tf:"granularity,omitempty"`

	// The metrics to enable. For a list of valid metrics, see https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_EnableMetricsCollection.html. If you specify granularity and don't specify any metrics, all metrics are enabled.
	Metrics []*string `json:"metrics,omitempty" tf:"metrics,omitempty"`
}

func (*AutoscalingMetricsCollectionObservation) DeepCopy added in v0.27.0

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

func (*AutoscalingMetricsCollectionObservation) DeepCopyInto added in v0.27.0

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

type AutoscalingMetricsCollectionParameters added in v0.27.0

type AutoscalingMetricsCollectionParameters struct {

	// The frequency at which EC2 Auto Scaling sends aggregated data to AWS CloudWatch. The only valid value is "1Minute".
	// +kubebuilder:validation:Optional
	Granularity *string `json:"granularity" tf:"granularity,omitempty"`

	// The metrics to enable. For a list of valid metrics, see https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_EnableMetricsCollection.html. If you specify granularity and don't specify any metrics, all metrics are enabled.
	// +kubebuilder:validation:Optional
	Metrics []*string `json:"metrics,omitempty" tf:"metrics,omitempty"`
}

func (*AutoscalingMetricsCollectionParameters) DeepCopy added in v0.27.0

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

func (*AutoscalingMetricsCollectionParameters) DeepCopyInto added in v0.27.0

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

type AutoscalingObservation

type AutoscalingObservation struct {

	// Maximum number of nodes in the NodePool. Must be >= min_node_count.
	MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"`

	// Minimum number of nodes in the NodePool. Must be >= 1 and <= max_node_count.
	MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"`
}

func (*AutoscalingObservation) DeepCopy

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

func (*AutoscalingObservation) DeepCopyInto

func (in *AutoscalingObservation) DeepCopyInto(out *AutoscalingObservation)

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

type AutoscalingParameters

type AutoscalingParameters struct {

	// Maximum number of nodes in the NodePool. Must be >= min_node_count.
	// +kubebuilder:validation:Optional
	MaxNodeCount *float64 `json:"maxNodeCount" tf:"max_node_count,omitempty"`

	// Minimum number of nodes in the NodePool. Must be >= 1 and <= max_node_count.
	// +kubebuilder:validation:Optional
	MinNodeCount *float64 `json:"minNodeCount" tf:"min_node_count,omitempty"`
}

func (*AutoscalingParameters) DeepCopy

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

func (*AutoscalingParameters) DeepCopyInto

func (in *AutoscalingParameters) DeepCopyInto(out *AutoscalingParameters)

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

type AwsServicesAuthenticationInitParameters added in v0.35.0

type AwsServicesAuthenticationInitParameters struct {

	// The Amazon Resource Name (ARN) of the role that the Anthos Multi-Cloud API will assume when managing AWS resources on your account.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Optional. An identifier for the assumed role session. When unspecified, it defaults to multicloud-service-agent.
	RoleSessionName *string `json:"roleSessionName,omitempty" tf:"role_session_name,omitempty"`
}

func (*AwsServicesAuthenticationInitParameters) DeepCopy added in v0.35.0

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

func (*AwsServicesAuthenticationInitParameters) DeepCopyInto added in v0.35.0

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

type AwsServicesAuthenticationObservation

type AwsServicesAuthenticationObservation struct {

	// The Amazon Resource Name (ARN) of the role that the Anthos Multi-Cloud API will assume when managing AWS resources on your account.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Optional. An identifier for the assumed role session. When unspecified, it defaults to multicloud-service-agent.
	RoleSessionName *string `json:"roleSessionName,omitempty" tf:"role_session_name,omitempty"`
}

func (*AwsServicesAuthenticationObservation) DeepCopy

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

func (*AwsServicesAuthenticationObservation) DeepCopyInto

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

type AwsServicesAuthenticationParameters

type AwsServicesAuthenticationParameters struct {

	// The Amazon Resource Name (ARN) of the role that the Anthos Multi-Cloud API will assume when managing AWS resources on your account.
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn" tf:"role_arn,omitempty"`

	// Optional. An identifier for the assumed role session. When unspecified, it defaults to multicloud-service-agent.
	// +kubebuilder:validation:Optional
	RoleSessionName *string `json:"roleSessionName,omitempty" tf:"role_session_name,omitempty"`
}

func (*AwsServicesAuthenticationParameters) DeepCopy

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

func (*AwsServicesAuthenticationParameters) DeepCopyInto

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

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.authorization) || (has(self.initProvider) && has(self.initProvider.authorization))",message="spec.forProvider.authorization is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.awsRegion) || (has(self.initProvider) && has(self.initProvider.awsRegion))",message="spec.forProvider.awsRegion is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.controlPlane) || (has(self.initProvider) && has(self.initProvider.controlPlane))",message="spec.forProvider.controlPlane is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.fleet) || (has(self.initProvider) && has(self.initProvider.fleet))",message="spec.forProvider.fleet is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.networking) || (has(self.initProvider) && has(self.initProvider.networking))",message="spec.forProvider.networking is a required parameter"
	Spec   ClusterSpec   `json:"spec"`
	Status ClusterStatus `json:"status,omitempty"`
}

Cluster is the Schema for the Clusters API. An Anthos cluster running on AWS. +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,gcp}

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 added in v0.35.0

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

GetInitParameters of this Cluster

func (*Cluster) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies 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) 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) 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 added in v0.35.0

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 added in v0.35.0

type ClusterInitParameters struct {

	// Optional. Annotations on the cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix  and name , separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.
	Annotations map[string]*string `json:"annotations,omitempty" tf:"annotations,omitempty"`

	// Configuration related to the cluster RBAC settings.
	Authorization []AuthorizationInitParameters `json:"authorization,omitempty" tf:"authorization,omitempty"`

	// The AWS region where the cluster runs. Each Google Cloud region supports a subset of nearby AWS regions. You can call to list all supported AWS regions within a given Google Cloud region.
	AwsRegion *string `json:"awsRegion,omitempty" tf:"aws_region,omitempty"`

	// Configuration related to the cluster control plane.
	ControlPlane []ControlPlaneInitParameters `json:"controlPlane,omitempty" tf:"control_plane,omitempty"`

	// Optional. A human readable description of this cluster. Cannot be longer than 255 UTF-8 encoded bytes.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Fleet configuration.
	Fleet []FleetInitParameters `json:"fleet,omitempty" tf:"fleet,omitempty"`

	// Cluster-wide networking configuration.
	Networking []NetworkingInitParameters `json:"networking,omitempty" tf:"networking,omitempty"`

	// The project for the resource
	Project *string `json:"project,omitempty" tf:"project,omitempty"`
}

func (*ClusterInitParameters) DeepCopy added in v0.35.0

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

func (*ClusterInitParameters) DeepCopyInto added in v0.35.0

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 {

	// Optional. Annotations on the cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix  and name , separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.
	Annotations map[string]*string `json:"annotations,omitempty" tf:"annotations,omitempty"`

	// Configuration related to the cluster RBAC settings.
	Authorization []AuthorizationObservation `json:"authorization,omitempty" tf:"authorization,omitempty"`

	// The AWS region where the cluster runs. Each Google Cloud region supports a subset of nearby AWS regions. You can call to list all supported AWS regions within a given Google Cloud region.
	AwsRegion *string `json:"awsRegion,omitempty" tf:"aws_region,omitempty"`

	// Configuration related to the cluster control plane.
	ControlPlane []ControlPlaneObservation `json:"controlPlane,omitempty" tf:"control_plane,omitempty"`

	// Output only. The time at which this cluster was created.
	CreateTime *string `json:"createTime,omitempty" tf:"create_time,omitempty"`

	// Optional. A human readable description of this cluster. Cannot be longer than 255 UTF-8 encoded bytes.
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Output only. The endpoint of the cluster's API server.
	Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"`

	// Allows clients to perform consistent read-modify-writes through optimistic concurrency control. May be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.
	Etag *string `json:"etag,omitempty" tf:"etag,omitempty"`

	// Fleet configuration.
	Fleet []FleetObservation `json:"fleet,omitempty" tf:"fleet,omitempty"`

	// an identifier for the resource with format projects/{{project}}/locations/{{location}}/awsClusters/{{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The location for the resource
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// Cluster-wide networking configuration.
	Networking []NetworkingObservation `json:"networking,omitempty" tf:"networking,omitempty"`

	// The project for the resource
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Output only. If set, there are currently changes in flight to the cluster.
	Reconciling *bool `json:"reconciling,omitempty" tf:"reconciling,omitempty"`

	// Output only. The current state of the cluster. Possible values: STATE_UNSPECIFIED, PROVISIONING, RUNNING, RECONCILING, STOPPING, ERROR, DEGRADED
	State *string `json:"state,omitempty" tf:"state,omitempty"`

	// Output only. A globally unique identifier for the cluster.
	UID *string `json:"uid,omitempty" tf:"uid,omitempty"`

	// Output only. The time at which this cluster was last updated.
	UpdateTime *string `json:"updateTime,omitempty" tf:"update_time,omitempty"`

	// Output only. Workload Identity settings.
	WorkloadIdentityConfig []WorkloadIdentityConfigObservation `json:"workloadIdentityConfig,omitempty" tf:"workload_identity_config,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 {

	// Optional. Annotations on the cluster. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix  and name , separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.
	// +kubebuilder:validation:Optional
	Annotations map[string]*string `json:"annotations,omitempty" tf:"annotations,omitempty"`

	// Configuration related to the cluster RBAC settings.
	// +kubebuilder:validation:Optional
	Authorization []AuthorizationParameters `json:"authorization,omitempty" tf:"authorization,omitempty"`

	// The AWS region where the cluster runs. Each Google Cloud region supports a subset of nearby AWS regions. You can call to list all supported AWS regions within a given Google Cloud region.
	// +kubebuilder:validation:Optional
	AwsRegion *string `json:"awsRegion,omitempty" tf:"aws_region,omitempty"`

	// Configuration related to the cluster control plane.
	// +kubebuilder:validation:Optional
	ControlPlane []ControlPlaneParameters `json:"controlPlane,omitempty" tf:"control_plane,omitempty"`

	// Optional. A human readable description of this cluster. Cannot be longer than 255 UTF-8 encoded bytes.
	// +kubebuilder:validation:Optional
	Description *string `json:"description,omitempty" tf:"description,omitempty"`

	// Fleet configuration.
	// +kubebuilder:validation:Optional
	Fleet []FleetParameters `json:"fleet,omitempty" tf:"fleet,omitempty"`

	// The location for the resource
	// +kubebuilder:validation:Required
	Location *string `json:"location" tf:"location,omitempty"`

	// Cluster-wide networking configuration.
	// +kubebuilder:validation:Optional
	Networking []NetworkingParameters `json:"networking,omitempty" tf:"networking,omitempty"`

	// The project for the resource
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,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 ConfigConfigEncryptionInitParameters added in v0.35.0

type ConfigConfigEncryptionInitParameters struct {

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`
}

func (*ConfigConfigEncryptionInitParameters) DeepCopy added in v0.35.0

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

func (*ConfigConfigEncryptionInitParameters) DeepCopyInto added in v0.35.0

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

type ConfigConfigEncryptionObservation

type ConfigConfigEncryptionObservation struct {

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`
}

func (*ConfigConfigEncryptionObservation) DeepCopy

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

func (*ConfigConfigEncryptionObservation) DeepCopyInto

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

type ConfigConfigEncryptionParameters

type ConfigConfigEncryptionParameters struct {

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn" tf:"kms_key_arn,omitempty"`
}

func (*ConfigConfigEncryptionParameters) DeepCopy

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

func (*ConfigConfigEncryptionParameters) DeepCopyInto

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

type ConfigEncryptionInitParameters added in v0.35.0

type ConfigEncryptionInitParameters struct {

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`
}

func (*ConfigEncryptionInitParameters) DeepCopy added in v0.35.0

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

func (*ConfigEncryptionInitParameters) DeepCopyInto added in v0.35.0

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

type ConfigEncryptionObservation

type ConfigEncryptionObservation struct {

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`
}

func (*ConfigEncryptionObservation) DeepCopy

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

func (*ConfigEncryptionObservation) DeepCopyInto

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

type ConfigEncryptionParameters

type ConfigEncryptionParameters struct {

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn" tf:"kms_key_arn,omitempty"`
}

func (*ConfigEncryptionParameters) DeepCopy

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

func (*ConfigEncryptionParameters) DeepCopyInto

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

type ConfigInitParameters added in v0.35.0

type ConfigInitParameters struct {

	// Optional. Configuration related to CloudWatch metrics collection on the Auto Scaling group of the node pool. When unspecified, metrics collection is disabled.
	AutoscalingMetricsCollection []AutoscalingMetricsCollectionInitParameters `json:"autoscalingMetricsCollection,omitempty" tf:"autoscaling_metrics_collection,omitempty"`

	// The ARN of the AWS KMS key used to encrypt node pool configuration.
	ConfigEncryption []ConfigConfigEncryptionInitParameters `json:"configEncryption,omitempty" tf:"config_encryption,omitempty"`

	// The name of the AWS IAM role assigned to nodes in the pool.
	IAMInstanceProfile *string `json:"iamInstanceProfile,omitempty" tf:"iam_instance_profile,omitempty"`

	// Optional. The AWS instance type. When unspecified, it defaults to m5.large.
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// Optional. The initial labels assigned to nodes of this node pool. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Proxy configuration for outbound HTTP(S) traffic.
	ProxyConfig []ConfigProxyConfigInitParameters `json:"proxyConfig,omitempty" tf:"proxy_config,omitempty"`

	// Optional. Template for the root volume provisioned for node pool nodes. Volumes will be provisioned in the availability zone assigned to the node pool subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.
	RootVolume []ConfigRootVolumeInitParameters `json:"rootVolume,omitempty" tf:"root_volume,omitempty"`

	// Optional. The SSH configuration.
	SSHConfig []ConfigSSHConfigInitParameters `json:"sshConfig,omitempty" tf:"ssh_config,omitempty"`

	// Optional. The IDs of additional security groups to add to nodes in this pool. The manager will automatically create security groups with minimum rules needed for a functioning cluster.
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// Optional. Key/value metadata to assign to each underlying AWS resource. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Optional. The initial taints assigned to nodes of this node pool.
	Taints []TaintsInitParameters `json:"taints,omitempty" tf:"taints,omitempty"`
}

func (*ConfigInitParameters) DeepCopy added in v0.35.0

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

func (*ConfigInitParameters) DeepCopyInto added in v0.35.0

func (in *ConfigInitParameters) DeepCopyInto(out *ConfigInitParameters)

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

type ConfigObservation

type ConfigObservation struct {

	// Optional. Configuration related to CloudWatch metrics collection on the Auto Scaling group of the node pool. When unspecified, metrics collection is disabled.
	AutoscalingMetricsCollection []AutoscalingMetricsCollectionObservation `json:"autoscalingMetricsCollection,omitempty" tf:"autoscaling_metrics_collection,omitempty"`

	// The ARN of the AWS KMS key used to encrypt node pool configuration.
	ConfigEncryption []ConfigConfigEncryptionObservation `json:"configEncryption,omitempty" tf:"config_encryption,omitempty"`

	// The name of the AWS IAM role assigned to nodes in the pool.
	IAMInstanceProfile *string `json:"iamInstanceProfile,omitempty" tf:"iam_instance_profile,omitempty"`

	// Optional. The AWS instance type. When unspecified, it defaults to m5.large.
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// Optional. The initial labels assigned to nodes of this node pool. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Proxy configuration for outbound HTTP(S) traffic.
	ProxyConfig []ConfigProxyConfigObservation `json:"proxyConfig,omitempty" tf:"proxy_config,omitempty"`

	// Optional. Template for the root volume provisioned for node pool nodes. Volumes will be provisioned in the availability zone assigned to the node pool subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.
	RootVolume []ConfigRootVolumeObservation `json:"rootVolume,omitempty" tf:"root_volume,omitempty"`

	// Optional. The SSH configuration.
	SSHConfig []ConfigSSHConfigObservation `json:"sshConfig,omitempty" tf:"ssh_config,omitempty"`

	// Optional. The IDs of additional security groups to add to nodes in this pool. The manager will automatically create security groups with minimum rules needed for a functioning cluster.
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// Optional. Key/value metadata to assign to each underlying AWS resource. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Optional. The initial taints assigned to nodes of this node pool.
	Taints []TaintsObservation `json:"taints,omitempty" tf:"taints,omitempty"`
}

func (*ConfigObservation) DeepCopy

func (in *ConfigObservation) DeepCopy() *ConfigObservation

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

func (*ConfigObservation) DeepCopyInto

func (in *ConfigObservation) DeepCopyInto(out *ConfigObservation)

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

type ConfigParameters

type ConfigParameters struct {

	// Optional. Configuration related to CloudWatch metrics collection on the Auto Scaling group of the node pool. When unspecified, metrics collection is disabled.
	// +kubebuilder:validation:Optional
	AutoscalingMetricsCollection []AutoscalingMetricsCollectionParameters `json:"autoscalingMetricsCollection,omitempty" tf:"autoscaling_metrics_collection,omitempty"`

	// The ARN of the AWS KMS key used to encrypt node pool configuration.
	// +kubebuilder:validation:Optional
	ConfigEncryption []ConfigConfigEncryptionParameters `json:"configEncryption" tf:"config_encryption,omitempty"`

	// The name of the AWS IAM role assigned to nodes in the pool.
	// +kubebuilder:validation:Optional
	IAMInstanceProfile *string `json:"iamInstanceProfile" tf:"iam_instance_profile,omitempty"`

	// Optional. The AWS instance type. When unspecified, it defaults to m5.large.
	// +kubebuilder:validation:Optional
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// Optional. The initial labels assigned to nodes of this node pool. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	// +kubebuilder:validation:Optional
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Proxy configuration for outbound HTTP(S) traffic.
	// +kubebuilder:validation:Optional
	ProxyConfig []ConfigProxyConfigParameters `json:"proxyConfig,omitempty" tf:"proxy_config,omitempty"`

	// Optional. Template for the root volume provisioned for node pool nodes. Volumes will be provisioned in the availability zone assigned to the node pool subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.
	// +kubebuilder:validation:Optional
	RootVolume []ConfigRootVolumeParameters `json:"rootVolume,omitempty" tf:"root_volume,omitempty"`

	// Optional. The SSH configuration.
	// +kubebuilder:validation:Optional
	SSHConfig []ConfigSSHConfigParameters `json:"sshConfig,omitempty" tf:"ssh_config,omitempty"`

	// Optional. The IDs of additional security groups to add to nodes in this pool. The manager will automatically create security groups with minimum rules needed for a functioning cluster.
	// +kubebuilder:validation:Optional
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// Optional. Key/value metadata to assign to each underlying AWS resource. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.
	// +kubebuilder:validation:Optional
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Optional. The initial taints assigned to nodes of this node pool.
	// +kubebuilder:validation:Optional
	Taints []TaintsParameters `json:"taints,omitempty" tf:"taints,omitempty"`
}

func (*ConfigParameters) DeepCopy

func (in *ConfigParameters) DeepCopy() *ConfigParameters

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

func (*ConfigParameters) DeepCopyInto

func (in *ConfigParameters) DeepCopyInto(out *ConfigParameters)

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

type ConfigProxyConfigInitParameters added in v0.35.0

type ConfigProxyConfigInitParameters struct {

	// The ARN of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	SecretArn *string `json:"secretArn,omitempty" tf:"secret_arn,omitempty"`

	// The version string of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	SecretVersion *string `json:"secretVersion,omitempty" tf:"secret_version,omitempty"`
}

func (*ConfigProxyConfigInitParameters) DeepCopy added in v0.35.0

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

func (*ConfigProxyConfigInitParameters) DeepCopyInto added in v0.35.0

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

type ConfigProxyConfigObservation

type ConfigProxyConfigObservation struct {

	// The ARN of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	SecretArn *string `json:"secretArn,omitempty" tf:"secret_arn,omitempty"`

	// The version string of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	SecretVersion *string `json:"secretVersion,omitempty" tf:"secret_version,omitempty"`
}

func (*ConfigProxyConfigObservation) DeepCopy

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

func (*ConfigProxyConfigObservation) DeepCopyInto

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

type ConfigProxyConfigParameters

type ConfigProxyConfigParameters struct {

	// The ARN of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	// +kubebuilder:validation:Optional
	SecretArn *string `json:"secretArn" tf:"secret_arn,omitempty"`

	// The version string of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	// +kubebuilder:validation:Optional
	SecretVersion *string `json:"secretVersion" tf:"secret_version,omitempty"`
}

func (*ConfigProxyConfigParameters) DeepCopy

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

func (*ConfigProxyConfigParameters) DeepCopyInto

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

type ConfigRootVolumeInitParameters added in v0.35.0

type ConfigRootVolumeInitParameters struct {

	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	SizeGib *float64 `json:"sizeGib,omitempty" tf:"size_gib,omitempty"`

	// Optional. The throughput to provision for the volume, in MiB/s. Only valid if the volume type is GP3.
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*ConfigRootVolumeInitParameters) DeepCopy added in v0.35.0

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

func (*ConfigRootVolumeInitParameters) DeepCopyInto added in v0.35.0

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

type ConfigRootVolumeObservation

type ConfigRootVolumeObservation struct {

	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	SizeGib *float64 `json:"sizeGib,omitempty" tf:"size_gib,omitempty"`

	// Optional. The throughput to provision for the volume, in MiB/s. Only valid if the volume type is GP3.
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*ConfigRootVolumeObservation) DeepCopy

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

func (*ConfigRootVolumeObservation) DeepCopyInto

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

type ConfigRootVolumeParameters

type ConfigRootVolumeParameters struct {

	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	// +kubebuilder:validation:Optional
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	// +kubebuilder:validation:Optional
	SizeGib *float64 `json:"sizeGib,omitempty" tf:"size_gib,omitempty"`

	// Optional. The throughput to provision for the volume, in MiB/s. Only valid if the volume type is GP3.
	// +kubebuilder:validation:Optional
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	// +kubebuilder:validation:Optional
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*ConfigRootVolumeParameters) DeepCopy

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

func (*ConfigRootVolumeParameters) DeepCopyInto

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

type ConfigSSHConfigInitParameters added in v0.35.0

type ConfigSSHConfigInitParameters struct {

	// The name of the EC2 key pair used to login into cluster machines.
	EC2KeyPair *string `json:"ec2KeyPair,omitempty" tf:"ec2_key_pair,omitempty"`
}

func (*ConfigSSHConfigInitParameters) DeepCopy added in v0.35.0

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

func (*ConfigSSHConfigInitParameters) DeepCopyInto added in v0.35.0

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

type ConfigSSHConfigObservation

type ConfigSSHConfigObservation struct {

	// The name of the EC2 key pair used to login into cluster machines.
	EC2KeyPair *string `json:"ec2KeyPair,omitempty" tf:"ec2_key_pair,omitempty"`
}

func (*ConfigSSHConfigObservation) DeepCopy

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

func (*ConfigSSHConfigObservation) DeepCopyInto

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

type ConfigSSHConfigParameters

type ConfigSSHConfigParameters struct {

	// The name of the EC2 key pair used to login into cluster machines.
	// +kubebuilder:validation:Optional
	EC2KeyPair *string `json:"ec2KeyPair" tf:"ec2_key_pair,omitempty"`
}

func (*ConfigSSHConfigParameters) DeepCopy

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

func (*ConfigSSHConfigParameters) DeepCopyInto

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

type ControlPlaneInitParameters added in v0.35.0

type ControlPlaneInitParameters struct {

	// Authentication configuration for management of AWS resources.
	AwsServicesAuthentication []AwsServicesAuthenticationInitParameters `json:"awsServicesAuthentication,omitempty" tf:"aws_services_authentication,omitempty"`

	// The ARN of the AWS KMS key used to encrypt cluster configuration.
	ConfigEncryption []ConfigEncryptionInitParameters `json:"configEncryption,omitempty" tf:"config_encryption,omitempty"`

	// The ARN of the AWS KMS key used to encrypt cluster secrets.
	DatabaseEncryption []DatabaseEncryptionInitParameters `json:"databaseEncryption,omitempty" tf:"database_encryption,omitempty"`

	// The name of the AWS IAM instance pofile to assign to each control plane replica.
	IAMInstanceProfile *string `json:"iamInstanceProfile,omitempty" tf:"iam_instance_profile,omitempty"`

	// Optional. The AWS instance type. When unspecified, it defaults to m5.large.
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// Optional. Configuration related to the main volume provisioned for each control plane replica. The main volume is in charge of storing all of the cluster's etcd state. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 8 GiB with the GP2 volume type.
	MainVolume []MainVolumeInitParameters `json:"mainVolume,omitempty" tf:"main_volume,omitempty"`

	// Proxy configuration for outbound HTTP(S) traffic.
	ProxyConfig []ProxyConfigInitParameters `json:"proxyConfig,omitempty" tf:"proxy_config,omitempty"`

	// Optional. Configuration related to the root volume provisioned for each control plane replica. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.
	RootVolume []RootVolumeInitParameters `json:"rootVolume,omitempty" tf:"root_volume,omitempty"`

	// Optional. SSH configuration for how to access the underlying control plane machines.
	SSHConfig []SSHConfigInitParameters `json:"sshConfig,omitempty" tf:"ssh_config,omitempty"`

	// Optional. The IDs of additional security groups to add to control plane replicas. The Anthos Multi-Cloud API will automatically create and manage security groups with the minimum rules needed for a functioning cluster.
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// The list of subnets where control plane replicas will run. A replica will be provisioned on each subnet and up to three values can be provided. Each subnet must be in a different AWS Availability Zone (AZ).
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Optional. A set of AWS resource tags to propagate to all underlying managed AWS resources. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The Kubernetes version to run on control plane replicas (e.g. 1.19.10-gke.1000). You can list all supported versions on a given Google Cloud region by calling .
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ControlPlaneInitParameters) DeepCopy added in v0.35.0

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

func (*ControlPlaneInitParameters) DeepCopyInto added in v0.35.0

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

type ControlPlaneObservation

type ControlPlaneObservation struct {

	// Authentication configuration for management of AWS resources.
	AwsServicesAuthentication []AwsServicesAuthenticationObservation `json:"awsServicesAuthentication,omitempty" tf:"aws_services_authentication,omitempty"`

	// The ARN of the AWS KMS key used to encrypt cluster configuration.
	ConfigEncryption []ConfigEncryptionObservation `json:"configEncryption,omitempty" tf:"config_encryption,omitempty"`

	// The ARN of the AWS KMS key used to encrypt cluster secrets.
	DatabaseEncryption []DatabaseEncryptionObservation `json:"databaseEncryption,omitempty" tf:"database_encryption,omitempty"`

	// The name of the AWS IAM instance pofile to assign to each control plane replica.
	IAMInstanceProfile *string `json:"iamInstanceProfile,omitempty" tf:"iam_instance_profile,omitempty"`

	// Optional. The AWS instance type. When unspecified, it defaults to m5.large.
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// Optional. Configuration related to the main volume provisioned for each control plane replica. The main volume is in charge of storing all of the cluster's etcd state. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 8 GiB with the GP2 volume type.
	MainVolume []MainVolumeObservation `json:"mainVolume,omitempty" tf:"main_volume,omitempty"`

	// Proxy configuration for outbound HTTP(S) traffic.
	ProxyConfig []ProxyConfigObservation `json:"proxyConfig,omitempty" tf:"proxy_config,omitempty"`

	// Optional. Configuration related to the root volume provisioned for each control plane replica. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.
	RootVolume []RootVolumeObservation `json:"rootVolume,omitempty" tf:"root_volume,omitempty"`

	// Optional. SSH configuration for how to access the underlying control plane machines.
	SSHConfig []SSHConfigObservation `json:"sshConfig,omitempty" tf:"ssh_config,omitempty"`

	// Optional. The IDs of additional security groups to add to control plane replicas. The Anthos Multi-Cloud API will automatically create and manage security groups with the minimum rules needed for a functioning cluster.
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// The list of subnets where control plane replicas will run. A replica will be provisioned on each subnet and up to three values can be provided. Each subnet must be in a different AWS Availability Zone (AZ).
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Optional. A set of AWS resource tags to propagate to all underlying managed AWS resources. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The Kubernetes version to run on control plane replicas (e.g. 1.19.10-gke.1000). You can list all supported versions on a given Google Cloud region by calling .
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ControlPlaneObservation) DeepCopy

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

func (*ControlPlaneObservation) DeepCopyInto

func (in *ControlPlaneObservation) DeepCopyInto(out *ControlPlaneObservation)

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

type ControlPlaneParameters

type ControlPlaneParameters struct {

	// Authentication configuration for management of AWS resources.
	// +kubebuilder:validation:Optional
	AwsServicesAuthentication []AwsServicesAuthenticationParameters `json:"awsServicesAuthentication" tf:"aws_services_authentication,omitempty"`

	// The ARN of the AWS KMS key used to encrypt cluster configuration.
	// +kubebuilder:validation:Optional
	ConfigEncryption []ConfigEncryptionParameters `json:"configEncryption" tf:"config_encryption,omitempty"`

	// The ARN of the AWS KMS key used to encrypt cluster secrets.
	// +kubebuilder:validation:Optional
	DatabaseEncryption []DatabaseEncryptionParameters `json:"databaseEncryption" tf:"database_encryption,omitempty"`

	// The name of the AWS IAM instance pofile to assign to each control plane replica.
	// +kubebuilder:validation:Optional
	IAMInstanceProfile *string `json:"iamInstanceProfile" tf:"iam_instance_profile,omitempty"`

	// Optional. The AWS instance type. When unspecified, it defaults to m5.large.
	// +kubebuilder:validation:Optional
	InstanceType *string `json:"instanceType,omitempty" tf:"instance_type,omitempty"`

	// Optional. Configuration related to the main volume provisioned for each control plane replica. The main volume is in charge of storing all of the cluster's etcd state. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 8 GiB with the GP2 volume type.
	// +kubebuilder:validation:Optional
	MainVolume []MainVolumeParameters `json:"mainVolume,omitempty" tf:"main_volume,omitempty"`

	// Proxy configuration for outbound HTTP(S) traffic.
	// +kubebuilder:validation:Optional
	ProxyConfig []ProxyConfigParameters `json:"proxyConfig,omitempty" tf:"proxy_config,omitempty"`

	// Optional. Configuration related to the root volume provisioned for each control plane replica. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.
	// +kubebuilder:validation:Optional
	RootVolume []RootVolumeParameters `json:"rootVolume,omitempty" tf:"root_volume,omitempty"`

	// Optional. SSH configuration for how to access the underlying control plane machines.
	// +kubebuilder:validation:Optional
	SSHConfig []SSHConfigParameters `json:"sshConfig,omitempty" tf:"ssh_config,omitempty"`

	// Optional. The IDs of additional security groups to add to control plane replicas. The Anthos Multi-Cloud API will automatically create and manage security groups with the minimum rules needed for a functioning cluster.
	// +kubebuilder:validation:Optional
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// The list of subnets where control plane replicas will run. A replica will be provisioned on each subnet and up to three values can be provided. Each subnet must be in a different AWS Availability Zone (AZ).
	// +kubebuilder:validation:Optional
	SubnetIds []*string `json:"subnetIds" tf:"subnet_ids,omitempty"`

	// Optional. A set of AWS resource tags to propagate to all underlying managed AWS resources. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.
	// +kubebuilder:validation:Optional
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The Kubernetes version to run on control plane replicas (e.g. 1.19.10-gke.1000). You can list all supported versions on a given Google Cloud region by calling .
	// +kubebuilder:validation:Optional
	Version *string `json:"version" tf:"version,omitempty"`
}

func (*ControlPlaneParameters) DeepCopy

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

func (*ControlPlaneParameters) DeepCopyInto

func (in *ControlPlaneParameters) DeepCopyInto(out *ControlPlaneParameters)

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

type DatabaseEncryptionInitParameters added in v0.35.0

type DatabaseEncryptionInitParameters struct {

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`
}

func (*DatabaseEncryptionInitParameters) DeepCopy added in v0.35.0

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

func (*DatabaseEncryptionInitParameters) DeepCopyInto added in v0.35.0

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

type DatabaseEncryptionObservation

type DatabaseEncryptionObservation struct {

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`
}

func (*DatabaseEncryptionObservation) DeepCopy

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

func (*DatabaseEncryptionObservation) DeepCopyInto

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

type DatabaseEncryptionParameters

type DatabaseEncryptionParameters struct {

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn" tf:"kms_key_arn,omitempty"`
}

func (*DatabaseEncryptionParameters) DeepCopy

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

func (*DatabaseEncryptionParameters) DeepCopyInto

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

type FleetInitParameters added in v0.35.0

type FleetInitParameters struct {

	// The number of the Fleet host project where this cluster will be registered.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`
}

func (*FleetInitParameters) DeepCopy added in v0.35.0

func (in *FleetInitParameters) DeepCopy() *FleetInitParameters

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

func (*FleetInitParameters) DeepCopyInto added in v0.35.0

func (in *FleetInitParameters) DeepCopyInto(out *FleetInitParameters)

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

type FleetObservation

type FleetObservation struct {

	// The name of the managed Hub Membership resource associated to this cluster. Membership names are formatted as projects//locations/global/membership/.
	Membership *string `json:"membership,omitempty" tf:"membership,omitempty"`

	// The number of the Fleet host project where this cluster will be registered.
	Project *string `json:"project,omitempty" tf:"project,omitempty"`
}

func (*FleetObservation) DeepCopy

func (in *FleetObservation) DeepCopy() *FleetObservation

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

func (*FleetObservation) DeepCopyInto

func (in *FleetObservation) DeepCopyInto(out *FleetObservation)

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

type FleetParameters

type FleetParameters struct {

	// The number of the Fleet host project where this cluster will be registered.
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`
}

func (*FleetParameters) DeepCopy

func (in *FleetParameters) DeepCopy() *FleetParameters

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

func (*FleetParameters) DeepCopyInto

func (in *FleetParameters) DeepCopyInto(out *FleetParameters)

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

type MainVolumeInitParameters added in v0.35.0

type MainVolumeInitParameters struct {

	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	SizeGib *float64 `json:"sizeGib,omitempty" tf:"size_gib,omitempty"`

	// Optional. The throughput to provision for the volume, in MiB/s. Only valid if the volume type is GP3.
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*MainVolumeInitParameters) DeepCopy added in v0.35.0

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

func (*MainVolumeInitParameters) DeepCopyInto added in v0.35.0

func (in *MainVolumeInitParameters) DeepCopyInto(out *MainVolumeInitParameters)

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

type MainVolumeObservation

type MainVolumeObservation struct {

	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	SizeGib *float64 `json:"sizeGib,omitempty" tf:"size_gib,omitempty"`

	// Optional. The throughput to provision for the volume, in MiB/s. Only valid if the volume type is GP3.
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*MainVolumeObservation) DeepCopy

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

func (*MainVolumeObservation) DeepCopyInto

func (in *MainVolumeObservation) DeepCopyInto(out *MainVolumeObservation)

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

type MainVolumeParameters

type MainVolumeParameters struct {

	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	// +kubebuilder:validation:Optional
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	// +kubebuilder:validation:Optional
	SizeGib *float64 `json:"sizeGib,omitempty" tf:"size_gib,omitempty"`

	// Optional. The throughput to provision for the volume, in MiB/s. Only valid if the volume type is GP3.
	// +kubebuilder:validation:Optional
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	// +kubebuilder:validation:Optional
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*MainVolumeParameters) DeepCopy

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

func (*MainVolumeParameters) DeepCopyInto

func (in *MainVolumeParameters) DeepCopyInto(out *MainVolumeParameters)

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

type MaxPodsConstraintInitParameters added in v0.35.0

type MaxPodsConstraintInitParameters struct {

	// The maximum number of pods to schedule on a single node.
	MaxPodsPerNode *float64 `json:"maxPodsPerNode,omitempty" tf:"max_pods_per_node,omitempty"`
}

func (*MaxPodsConstraintInitParameters) DeepCopy added in v0.35.0

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

func (*MaxPodsConstraintInitParameters) DeepCopyInto added in v0.35.0

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

type MaxPodsConstraintObservation

type MaxPodsConstraintObservation struct {

	// The maximum number of pods to schedule on a single node.
	MaxPodsPerNode *float64 `json:"maxPodsPerNode,omitempty" tf:"max_pods_per_node,omitempty"`
}

func (*MaxPodsConstraintObservation) DeepCopy

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

func (*MaxPodsConstraintObservation) DeepCopyInto

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

type MaxPodsConstraintParameters

type MaxPodsConstraintParameters struct {

	// The maximum number of pods to schedule on a single node.
	// +kubebuilder:validation:Optional
	MaxPodsPerNode *float64 `json:"maxPodsPerNode" tf:"max_pods_per_node,omitempty"`
}

func (*MaxPodsConstraintParameters) DeepCopy

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

func (*MaxPodsConstraintParameters) DeepCopyInto

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

type NetworkingInitParameters added in v0.35.0

type NetworkingInitParameters struct {

	// Disable the per node pool subnet security group rules on the control plane security group. When set to true, you must also provide one or more security groups that ensure node pools are able to send requests to the control plane on TCP/443 and TCP/8132. Failure to do so may result in unavailable node pools.
	PerNodePoolSgRulesDisabled *bool `json:"perNodePoolSgRulesDisabled,omitempty" tf:"per_node_pool_sg_rules_disabled,omitempty"`

	// All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
	PodAddressCidrBlocks []*string `json:"podAddressCidrBlocks,omitempty" tf:"pod_address_cidr_blocks,omitempty"`

	// All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
	ServiceAddressCidrBlocks []*string `json:"serviceAddressCidrBlocks,omitempty" tf:"service_address_cidr_blocks,omitempty"`

	// The VPC associated with the cluster. All component clusters (i.e. control plane and node pools) run on a single VPC. This field cannot be changed after creation.
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`
}

func (*NetworkingInitParameters) DeepCopy added in v0.35.0

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

func (*NetworkingInitParameters) DeepCopyInto added in v0.35.0

func (in *NetworkingInitParameters) DeepCopyInto(out *NetworkingInitParameters)

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

type NetworkingObservation

type NetworkingObservation struct {

	// Disable the per node pool subnet security group rules on the control plane security group. When set to true, you must also provide one or more security groups that ensure node pools are able to send requests to the control plane on TCP/443 and TCP/8132. Failure to do so may result in unavailable node pools.
	PerNodePoolSgRulesDisabled *bool `json:"perNodePoolSgRulesDisabled,omitempty" tf:"per_node_pool_sg_rules_disabled,omitempty"`

	// All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
	PodAddressCidrBlocks []*string `json:"podAddressCidrBlocks,omitempty" tf:"pod_address_cidr_blocks,omitempty"`

	// All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
	ServiceAddressCidrBlocks []*string `json:"serviceAddressCidrBlocks,omitempty" tf:"service_address_cidr_blocks,omitempty"`

	// The VPC associated with the cluster. All component clusters (i.e. control plane and node pools) run on a single VPC. This field cannot be changed after creation.
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`
}

func (*NetworkingObservation) DeepCopy

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

func (*NetworkingObservation) DeepCopyInto

func (in *NetworkingObservation) DeepCopyInto(out *NetworkingObservation)

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

type NetworkingParameters

type NetworkingParameters struct {

	// Disable the per node pool subnet security group rules on the control plane security group. When set to true, you must also provide one or more security groups that ensure node pools are able to send requests to the control plane on TCP/443 and TCP/8132. Failure to do so may result in unavailable node pools.
	// +kubebuilder:validation:Optional
	PerNodePoolSgRulesDisabled *bool `json:"perNodePoolSgRulesDisabled,omitempty" tf:"per_node_pool_sg_rules_disabled,omitempty"`

	// All pods in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
	// +kubebuilder:validation:Optional
	PodAddressCidrBlocks []*string `json:"podAddressCidrBlocks" tf:"pod_address_cidr_blocks,omitempty"`

	// All services in the cluster are assigned an RFC1918 IPv4 address from these ranges. Only a single range is supported. This field cannot be changed after creation.
	// +kubebuilder:validation:Optional
	ServiceAddressCidrBlocks []*string `json:"serviceAddressCidrBlocks" tf:"service_address_cidr_blocks,omitempty"`

	// The VPC associated with the cluster. All component clusters (i.e. control plane and node pools) run on a single VPC. This field cannot be changed after creation.
	// +kubebuilder:validation:Optional
	VPCID *string `json:"vpcId" tf:"vpc_id,omitempty"`
}

func (*NetworkingParameters) DeepCopy

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

func (*NetworkingParameters) DeepCopyInto

func (in *NetworkingParameters) DeepCopyInto(out *NetworkingParameters)

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.autoscaling) || (has(self.initProvider) && has(self.initProvider.autoscaling))",message="spec.forProvider.autoscaling is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.config) || (has(self.initProvider) && has(self.initProvider.config))",message="spec.forProvider.config is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.maxPodsConstraint) || (has(self.initProvider) && has(self.initProvider.maxPodsConstraint))",message="spec.forProvider.maxPodsConstraint is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.subnetId) || (has(self.initProvider) && has(self.initProvider.subnetId))",message="spec.forProvider.subnetId is a required parameter"
	// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.version) || (has(self.initProvider) && has(self.initProvider.version))",message="spec.forProvider.version is a required parameter"
	Spec   NodePoolSpec   `json:"spec"`
	Status NodePoolStatus `json:"status,omitempty"`
}

NodePool is the Schema for the NodePools API. An Anthos node pool running on AWS. +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,gcp}

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 added in v0.35.0

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

GetInitParameters of this NodePool

func (*NodePool) GetManagementPolicies added in v0.35.0

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

GetManagementPolicies 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) 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 added in v0.35.0

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 added in v0.35.0

type NodePoolInitParameters struct {

	// Optional. Annotations on the node pool. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix  and name , separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.
	Annotations map[string]*string `json:"annotations,omitempty" tf:"annotations,omitempty"`

	// Autoscaler configuration for this node pool.
	Autoscaling []AutoscalingInitParameters `json:"autoscaling,omitempty" tf:"autoscaling,omitempty"`

	// The configuration of the node pool.
	Config []ConfigInitParameters `json:"config,omitempty" tf:"config,omitempty"`

	// The constraint on the maximum number of pods that can be run simultaneously on a node in the node pool.
	MaxPodsConstraint []MaxPodsConstraintInitParameters `json:"maxPodsConstraint,omitempty" tf:"max_pods_constraint,omitempty"`

	// The project for the resource
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The subnet where the node pool node run.
	SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"`

	// The Kubernetes version to run on this node pool (e.g. 1.19.10-gke.1000). You can list all supported versions on a given Google Cloud region by calling GetAwsServerConfig.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NodePoolInitParameters) DeepCopy added in v0.35.0

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

func (*NodePoolInitParameters) DeepCopyInto added in v0.35.0

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 NodePoolObservation

type NodePoolObservation struct {

	// Optional. Annotations on the node pool. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix  and name , separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.
	Annotations map[string]*string `json:"annotations,omitempty" tf:"annotations,omitempty"`

	// Autoscaler configuration for this node pool.
	Autoscaling []AutoscalingObservation `json:"autoscaling,omitempty" tf:"autoscaling,omitempty"`

	// The awsCluster for the resource
	Cluster *string `json:"cluster,omitempty" tf:"cluster,omitempty"`

	// The configuration of the node pool.
	Config []ConfigObservation `json:"config,omitempty" tf:"config,omitempty"`

	// Output only. The time at which this node pool was created.
	CreateTime *string `json:"createTime,omitempty" tf:"create_time,omitempty"`

	// Allows clients to perform consistent read-modify-writes through optimistic concurrency control. May be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.
	Etag *string `json:"etag,omitempty" tf:"etag,omitempty"`

	// an identifier for the resource with format projects/{{project}}/locations/{{location}}/awsClusters/{{cluster}}/awsNodePools/{{name}}
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The location for the resource
	Location *string `json:"location,omitempty" tf:"location,omitempty"`

	// The constraint on the maximum number of pods that can be run simultaneously on a node in the node pool.
	MaxPodsConstraint []MaxPodsConstraintObservation `json:"maxPodsConstraint,omitempty" tf:"max_pods_constraint,omitempty"`

	// The project for the resource
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// Output only. If set, there are currently changes in flight to the node pool.
	Reconciling *bool `json:"reconciling,omitempty" tf:"reconciling,omitempty"`

	// Output only. The lifecycle state of the node pool. Possible values: STATE_UNSPECIFIED, PROVISIONING, RUNNING, RECONCILING, STOPPING, ERROR, DEGRADED
	State *string `json:"state,omitempty" tf:"state,omitempty"`

	// The subnet where the node pool node run.
	SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"`

	// Output only. A globally unique identifier for the node pool.
	UID *string `json:"uid,omitempty" tf:"uid,omitempty"`

	// Output only. The time at which this node pool was last updated.
	UpdateTime *string `json:"updateTime,omitempty" tf:"update_time,omitempty"`

	// The Kubernetes version to run on this node pool (e.g. 1.19.10-gke.1000). You can list all supported versions on a given Google Cloud region by calling GetAwsServerConfig.
	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 {

	// Optional. Annotations on the node pool. This field has the same restrictions as Kubernetes annotations. The total size of all keys and values combined is limited to 256k. Key can have 2 segments: prefix  and name , separated by a slash (/). Prefix must be a DNS subdomain. Name must be 63 characters or less, begin and end with alphanumerics, with dashes (-), underscores (_), dots (.), and alphanumerics between.
	// +kubebuilder:validation:Optional
	Annotations map[string]*string `json:"annotations,omitempty" tf:"annotations,omitempty"`

	// Autoscaler configuration for this node pool.
	// +kubebuilder:validation:Optional
	Autoscaling []AutoscalingParameters `json:"autoscaling,omitempty" tf:"autoscaling,omitempty"`

	// The awsCluster for the resource
	// +crossplane:generate:reference:type=Cluster
	// +kubebuilder:validation:Optional
	Cluster *string `json:"cluster,omitempty" tf:"cluster,omitempty"`

	// Reference to a Cluster to populate cluster.
	// +kubebuilder:validation:Optional
	ClusterRef *v1.Reference `json:"clusterRef,omitempty" tf:"-"`

	// Selector for a Cluster to populate cluster.
	// +kubebuilder:validation:Optional
	ClusterSelector *v1.Selector `json:"clusterSelector,omitempty" tf:"-"`

	// The configuration of the node pool.
	// +kubebuilder:validation:Optional
	Config []ConfigParameters `json:"config,omitempty" tf:"config,omitempty"`

	// The location for the resource
	// +kubebuilder:validation:Required
	Location *string `json:"location" tf:"location,omitempty"`

	// The constraint on the maximum number of pods that can be run simultaneously on a node in the node pool.
	// +kubebuilder:validation:Optional
	MaxPodsConstraint []MaxPodsConstraintParameters `json:"maxPodsConstraint,omitempty" tf:"max_pods_constraint,omitempty"`

	// The project for the resource
	// +kubebuilder:validation:Optional
	Project *string `json:"project,omitempty" tf:"project,omitempty"`

	// The subnet where the node pool node run.
	// +kubebuilder:validation:Optional
	SubnetID *string `json:"subnetId,omitempty" tf:"subnet_id,omitempty"`

	// The Kubernetes version to run on this node pool (e.g. 1.19.10-gke.1000). You can list all supported versions on a given Google Cloud region by calling GetAwsServerConfig.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,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 ProxyConfigInitParameters added in v0.35.0

type ProxyConfigInitParameters struct {

	// The ARN of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	SecretArn *string `json:"secretArn,omitempty" tf:"secret_arn,omitempty"`

	// The version string of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	SecretVersion *string `json:"secretVersion,omitempty" tf:"secret_version,omitempty"`
}

func (*ProxyConfigInitParameters) DeepCopy added in v0.35.0

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

func (*ProxyConfigInitParameters) DeepCopyInto added in v0.35.0

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

type ProxyConfigObservation

type ProxyConfigObservation struct {

	// The ARN of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	SecretArn *string `json:"secretArn,omitempty" tf:"secret_arn,omitempty"`

	// The version string of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	SecretVersion *string `json:"secretVersion,omitempty" tf:"secret_version,omitempty"`
}

func (*ProxyConfigObservation) DeepCopy

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

func (*ProxyConfigObservation) DeepCopyInto

func (in *ProxyConfigObservation) DeepCopyInto(out *ProxyConfigObservation)

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

type ProxyConfigParameters

type ProxyConfigParameters struct {

	// The ARN of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	// +kubebuilder:validation:Optional
	SecretArn *string `json:"secretArn" tf:"secret_arn,omitempty"`

	// The version string of the AWS Secret Manager secret that contains the HTTP(S) proxy configuration.
	// +kubebuilder:validation:Optional
	SecretVersion *string `json:"secretVersion" tf:"secret_version,omitempty"`
}

func (*ProxyConfigParameters) DeepCopy

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

func (*ProxyConfigParameters) DeepCopyInto

func (in *ProxyConfigParameters) DeepCopyInto(out *ProxyConfigParameters)

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

type RootVolumeInitParameters added in v0.35.0

type RootVolumeInitParameters struct {

	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	SizeGib *float64 `json:"sizeGib,omitempty" tf:"size_gib,omitempty"`

	// Optional. The throughput to provision for the volume, in MiB/s. Only valid if the volume type is GP3.
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*RootVolumeInitParameters) DeepCopy added in v0.35.0

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

func (*RootVolumeInitParameters) DeepCopyInto added in v0.35.0

func (in *RootVolumeInitParameters) DeepCopyInto(out *RootVolumeInitParameters)

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

type RootVolumeObservation

type RootVolumeObservation struct {

	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	SizeGib *float64 `json:"sizeGib,omitempty" tf:"size_gib,omitempty"`

	// Optional. The throughput to provision for the volume, in MiB/s. Only valid if the volume type is GP3.
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*RootVolumeObservation) DeepCopy

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

func (*RootVolumeObservation) DeepCopyInto

func (in *RootVolumeObservation) DeepCopyInto(out *RootVolumeObservation)

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

type RootVolumeParameters

type RootVolumeParameters struct {

	// Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
	// +kubebuilder:validation:Optional
	Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"`

	// Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to encrypt AWS EBS volumes. If not specified, the default Amazon managed key associated to the AWS region where this cluster runs will be used.
	// +kubebuilder:validation:Optional
	KMSKeyArn *string `json:"kmsKeyArn,omitempty" tf:"kms_key_arn,omitempty"`

	// Optional. The size of the volume, in GiBs. When unspecified, a default value is provided. See the specific reference in the parent resource.
	// +kubebuilder:validation:Optional
	SizeGib *float64 `json:"sizeGib,omitempty" tf:"size_gib,omitempty"`

	// Optional. The throughput to provision for the volume, in MiB/s. Only valid if the volume type is GP3.
	// +kubebuilder:validation:Optional
	Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"`

	// Optional. Type of the EBS volume. When unspecified, it defaults to GP2 volume. Possible values: VOLUME_TYPE_UNSPECIFIED, GP2, GP3
	// +kubebuilder:validation:Optional
	VolumeType *string `json:"volumeType,omitempty" tf:"volume_type,omitempty"`
}

func (*RootVolumeParameters) DeepCopy

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

func (*RootVolumeParameters) DeepCopyInto

func (in *RootVolumeParameters) DeepCopyInto(out *RootVolumeParameters)

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

type SSHConfigInitParameters added in v0.35.0

type SSHConfigInitParameters struct {

	// The name of the EC2 key pair used to login into cluster machines.
	EC2KeyPair *string `json:"ec2KeyPair,omitempty" tf:"ec2_key_pair,omitempty"`
}

func (*SSHConfigInitParameters) DeepCopy added in v0.35.0

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

func (*SSHConfigInitParameters) DeepCopyInto added in v0.35.0

func (in *SSHConfigInitParameters) DeepCopyInto(out *SSHConfigInitParameters)

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

type SSHConfigObservation

type SSHConfigObservation struct {

	// The name of the EC2 key pair used to login into cluster machines.
	EC2KeyPair *string `json:"ec2KeyPair,omitempty" tf:"ec2_key_pair,omitempty"`
}

func (*SSHConfigObservation) DeepCopy

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

func (*SSHConfigObservation) DeepCopyInto

func (in *SSHConfigObservation) DeepCopyInto(out *SSHConfigObservation)

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

type SSHConfigParameters

type SSHConfigParameters struct {

	// The name of the EC2 key pair used to login into cluster machines.
	// +kubebuilder:validation:Optional
	EC2KeyPair *string `json:"ec2KeyPair" tf:"ec2_key_pair,omitempty"`
}

func (*SSHConfigParameters) DeepCopy

func (in *SSHConfigParameters) DeepCopy() *SSHConfigParameters

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

func (*SSHConfigParameters) DeepCopyInto

func (in *SSHConfigParameters) DeepCopyInto(out *SSHConfigParameters)

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

type TaintsInitParameters added in v0.35.0

type TaintsInitParameters struct {

	// The taint effect. Possible values: EFFECT_UNSPECIFIED, NO_SCHEDULE, PREFER_NO_SCHEDULE, NO_EXECUTE
	Effect *string `json:"effect,omitempty" tf:"effect,omitempty"`

	// Key for the taint.
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// Value for the taint.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*TaintsInitParameters) DeepCopy added in v0.35.0

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

func (*TaintsInitParameters) DeepCopyInto added in v0.35.0

func (in *TaintsInitParameters) DeepCopyInto(out *TaintsInitParameters)

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

type TaintsObservation

type TaintsObservation struct {

	// The taint effect. Possible values: EFFECT_UNSPECIFIED, NO_SCHEDULE, PREFER_NO_SCHEDULE, NO_EXECUTE
	Effect *string `json:"effect,omitempty" tf:"effect,omitempty"`

	// Key for the taint.
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// Value for the taint.
	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 {

	// The taint effect. Possible values: EFFECT_UNSPECIFIED, NO_SCHEDULE, PREFER_NO_SCHEDULE, NO_EXECUTE
	// +kubebuilder:validation:Optional
	Effect *string `json:"effect" tf:"effect,omitempty"`

	// Key for the taint.
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// Value for the taint.
	// +kubebuilder:validation:Optional
	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.

type WorkloadIdentityConfigInitParameters added in v0.35.0

type WorkloadIdentityConfigInitParameters struct {
}

func (*WorkloadIdentityConfigInitParameters) DeepCopy added in v0.35.0

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

func (*WorkloadIdentityConfigInitParameters) DeepCopyInto added in v0.35.0

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

type WorkloadIdentityConfigObservation

type WorkloadIdentityConfigObservation struct {
	IdentityProvider *string `json:"identityProvider,omitempty" tf:"identity_provider,omitempty"`

	IssuerURI *string `json:"issuerUri,omitempty" tf:"issuer_uri,omitempty"`

	WorkloadPool *string `json:"workloadPool,omitempty" tf:"workload_pool,omitempty"`
}

func (*WorkloadIdentityConfigObservation) DeepCopy

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

func (*WorkloadIdentityConfigObservation) DeepCopyInto

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

type WorkloadIdentityConfigParameters

type WorkloadIdentityConfigParameters struct {
}

func (*WorkloadIdentityConfigParameters) DeepCopy

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

func (*WorkloadIdentityConfigParameters) DeepCopyInto

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

Jump to

Keyboard shortcuts

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