v1beta2

package
v1.8.0-rc.0 Latest Latest
Warning

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

Go to latest
Published: Jun 13, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=eks.aws.upbound.io +versionName=v1beta2

Index

Constants

View Source
const (
	CRDGroup   = "eks.aws.upbound.io"
	CRDVersion = "v1beta2"
)

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 (
	IdentityProviderConfig_Kind             = "IdentityProviderConfig"
	IdentityProviderConfig_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: IdentityProviderConfig_Kind}.String()
	IdentityProviderConfig_KindAPIVersion   = IdentityProviderConfig_Kind + "." + CRDGroupVersion.String()
	IdentityProviderConfig_GroupVersionKind = CRDGroupVersion.WithKind(IdentityProviderConfig_Kind)
)

Repository type metadata.

View Source
var (
	NodeGroup_Kind             = "NodeGroup"
	NodeGroup_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: NodeGroup_Kind}.String()
	NodeGroup_KindAPIVersion   = NodeGroup_Kind + "." + CRDGroupVersion.String()
	NodeGroup_GroupVersionKind = CRDGroupVersion.WithKind(NodeGroup_Kind)
)

Repository type metadata.

Functions

func ExternalNameIfClusterActive

func ExternalNameIfClusterActive() reference.ExtractValueFn

ExternalNameIfClusterActive returns the external name only if the EKS cluster is in ACTIVE state.

Types

type AccessConfigInitParameters

type AccessConfigInitParameters struct {

	// The authentication mode for the cluster. Valid values are CONFIG_MAP, API or API_AND_CONFIG_MAP
	AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"`

	// Whether or not to bootstrap the access config values to the cluster. Default is true.
	BootstrapClusterCreatorAdminPermissions *bool `json:"bootstrapClusterCreatorAdminPermissions,omitempty" tf:"bootstrap_cluster_creator_admin_permissions,omitempty"`
}

func (*AccessConfigInitParameters) DeepCopy

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

func (*AccessConfigInitParameters) DeepCopyInto

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

type AccessConfigObservation

type AccessConfigObservation struct {

	// The authentication mode for the cluster. Valid values are CONFIG_MAP, API or API_AND_CONFIG_MAP
	AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"`

	// Whether or not to bootstrap the access config values to the cluster. Default is true.
	BootstrapClusterCreatorAdminPermissions *bool `json:"bootstrapClusterCreatorAdminPermissions,omitempty" tf:"bootstrap_cluster_creator_admin_permissions,omitempty"`
}

func (*AccessConfigObservation) DeepCopy

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

func (*AccessConfigObservation) DeepCopyInto

func (in *AccessConfigObservation) DeepCopyInto(out *AccessConfigObservation)

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

type AccessConfigParameters

type AccessConfigParameters struct {

	// The authentication mode for the cluster. Valid values are CONFIG_MAP, API or API_AND_CONFIG_MAP
	// +kubebuilder:validation:Optional
	AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"`

	// Whether or not to bootstrap the access config values to the cluster. Default is true.
	// +kubebuilder:validation:Optional
	BootstrapClusterCreatorAdminPermissions *bool `json:"bootstrapClusterCreatorAdminPermissions,omitempty" tf:"bootstrap_cluster_creator_admin_permissions,omitempty"`
}

func (*AccessConfigParameters) DeepCopy

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

func (*AccessConfigParameters) DeepCopyInto

func (in *AccessConfigParameters) DeepCopyInto(out *AccessConfigParameters)

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

type AutoscalingGroupsInitParameters

type AutoscalingGroupsInitParameters struct {
}

func (*AutoscalingGroupsInitParameters) DeepCopy

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

func (*AutoscalingGroupsInitParameters) DeepCopyInto

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

type AutoscalingGroupsObservation

type AutoscalingGroupsObservation struct {

	// Name of the AutoScaling Group.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`
}

func (*AutoscalingGroupsObservation) DeepCopy

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

func (*AutoscalingGroupsObservation) DeepCopyInto

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

type AutoscalingGroupsParameters

type AutoscalingGroupsParameters struct {
}

func (*AutoscalingGroupsParameters) DeepCopy

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

func (*AutoscalingGroupsParameters) DeepCopyInto

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

type CertificateAuthorityInitParameters

type CertificateAuthorityInitParameters struct {
}

func (*CertificateAuthorityInitParameters) DeepCopy

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

func (*CertificateAuthorityInitParameters) DeepCopyInto

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

type CertificateAuthorityObservation

type CertificateAuthorityObservation struct {

	// Base64 encoded certificate data required to communicate with your cluster. Add this to the certificate-authority-data section of the kubeconfig file for your cluster.
	Data *string `json:"data,omitempty" tf:"data,omitempty"`
}

func (*CertificateAuthorityObservation) DeepCopy

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

func (*CertificateAuthorityObservation) DeepCopyInto

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

type CertificateAuthorityParameters

type CertificateAuthorityParameters struct {
}

func (*CertificateAuthorityParameters) DeepCopy

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

func (*CertificateAuthorityParameters) 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.vpcConfig) || (has(self.initProvider) && has(self.initProvider.vpcConfig))",message="spec.forProvider.vpcConfig is a required parameter"
	Spec   ClusterSpec   `json:"spec"`
	Status ClusterStatus `json:"status,omitempty"`
}

Cluster is the Schema for the Clusters API. Manages an EKS Cluster +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

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

func (*Cluster) DeepCopyInto

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

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

func (*Cluster) DeepCopyObject

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

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

func (*Cluster) GetCondition

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

GetCondition of this Cluster.

func (*Cluster) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Cluster

func (*Cluster) GetDeletionPolicy

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

GetDeletionPolicy of this Cluster.

func (*Cluster) GetID

func (tr *Cluster) GetID() string

GetID returns ID of underlying Terraform resource of this Cluster

func (*Cluster) GetInitParameters

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

GetInitParameters of this Cluster

func (*Cluster) GetManagementPolicies

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

GetManagementPolicies of this Cluster.

func (*Cluster) GetMergedParameters

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

GetInitParameters of this Cluster

func (*Cluster) GetObservation

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

GetObservation of this Cluster

func (*Cluster) GetParameters

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

GetParameters of this Cluster

func (*Cluster) GetProviderConfigReference

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

GetProviderConfigReference of this Cluster.

func (*Cluster) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Cluster.

func (*Cluster) GetTerraformResourceType

func (mg *Cluster) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Cluster

func (*Cluster) GetTerraformSchemaVersion

func (tr *Cluster) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Cluster) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Cluster.

func (*Cluster) Hub

func (tr *Cluster) Hub()

Hub marks this type as a conversion hub.

func (*Cluster) LateInitialize

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

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

func (*Cluster) ResolveReferences

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

func (*Cluster) SetConditions

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

SetConditions of this Cluster.

func (*Cluster) SetDeletionPolicy

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

SetDeletionPolicy of this Cluster.

func (*Cluster) SetManagementPolicies

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

SetManagementPolicies of this Cluster.

func (*Cluster) SetObservation

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

SetObservation for this Cluster

func (*Cluster) SetParameters

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

SetParameters for this Cluster

func (*Cluster) SetProviderConfigReference

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

SetProviderConfigReference of this Cluster.

func (*Cluster) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Cluster.

func (*Cluster) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Cluster.

type ClusterInitParameters

type ClusterInitParameters struct {

	// Configuration block for the access config associated with your cluster, see Amazon EKS Access Entries.
	AccessConfig *AccessConfigInitParameters `json:"accessConfig,omitempty" tf:"access_config,omitempty"`

	// List of the desired control plane logging to enable. For more information, see Amazon EKS Control Plane Logging.
	// +listType=set
	EnabledClusterLogTypes []*string `json:"enabledClusterLogTypes,omitempty" tf:"enabled_cluster_log_types,omitempty"`

	// Configuration block with encryption configuration for the cluster. Only available on Kubernetes 1.13 and above clusters created after March 6, 2020. Detailed below.
	EncryptionConfig *EncryptionConfigInitParameters `json:"encryptionConfig,omitempty" tf:"encryption_config,omitempty"`

	// Configuration block with kubernetes network configuration for the cluster. Detailed below.
	KubernetesNetworkConfig *KubernetesNetworkConfigInitParameters `json:"kubernetesNetworkConfig,omitempty" tf:"kubernetes_network_config,omitempty"`

	// Configuration block representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This block isn't available for creating Amazon EKS clusters on the AWS cloud.
	OutpostConfig *OutpostConfigInitParameters `json:"outpostConfig,omitempty" tf:"outpost_config,omitempty"`

	// ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Ensure the resource configuration includes explicit dependencies on the IAM Role permissions by adding depends_on if using the aws_iam_role_policy resource or aws_iam_role_policy_attachment resource, otherwise EKS cannot delete EKS managed EC2 infrastructure such as Security Groups on EKS Cluster deletion.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Configuration block for the VPC associated with your cluster. Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see Cluster VPC Considerations and Cluster Security Group Considerations in the Amazon EKS User Guide. Detailed below. Also contains attributes detailed in the Attributes section.
	VPCConfig *VPCConfigInitParameters `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`

	// –  Desired Kubernetes master version. If you do not specify a value, the latest available version at resource creation is used and no upgrades will occur except those automatically triggered by EKS. The value must be configured and increased to upgrade the version when desired. Downgrades are not supported by EKS.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ClusterInitParameters) DeepCopy

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

func (*ClusterInitParameters) DeepCopyInto

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

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

type ClusterList

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

ClusterList contains a list of Clusters

func (*ClusterList) DeepCopy

func (in *ClusterList) DeepCopy() *ClusterList

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

func (*ClusterList) DeepCopyInto

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

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

func (*ClusterList) DeepCopyObject

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

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

func (*ClusterList) GetItems

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

GetItems of this ClusterList.

type ClusterObservation

type ClusterObservation struct {

	// Configuration block for the access config associated with your cluster, see Amazon EKS Access Entries.
	AccessConfig *AccessConfigObservation `json:"accessConfig,omitempty" tf:"access_config,omitempty"`

	// ARN of the cluster.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// Attribute block containing certificate-authority-data for your cluster. Detailed below.
	CertificateAuthority []CertificateAuthorityObservation `json:"certificateAuthority,omitempty" tf:"certificate_authority,omitempty"`

	// The ID of your local Amazon EKS cluster on the AWS Outpost. This attribute isn't available for an AWS EKS cluster on AWS cloud.
	ClusterID *string `json:"clusterId,omitempty" tf:"cluster_id,omitempty"`

	// Unix epoch timestamp in seconds for when the cluster was created.
	CreatedAt *string `json:"createdAt,omitempty" tf:"created_at,omitempty"`

	// List of the desired control plane logging to enable. For more information, see Amazon EKS Control Plane Logging.
	// +listType=set
	EnabledClusterLogTypes []*string `json:"enabledClusterLogTypes,omitempty" tf:"enabled_cluster_log_types,omitempty"`

	// Configuration block with encryption configuration for the cluster. Only available on Kubernetes 1.13 and above clusters created after March 6, 2020. Detailed below.
	EncryptionConfig *EncryptionConfigObservation `json:"encryptionConfig,omitempty" tf:"encryption_config,omitempty"`

	// Endpoint for your Kubernetes API server.
	Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"`

	// Name of the cluster.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Attribute block containing identity provider information for your cluster. Only available on Kubernetes version 1.13 and 1.14 clusters created or upgraded on or after September 3, 2019. Detailed below.
	Identity []IdentityObservation `json:"identity,omitempty" tf:"identity,omitempty"`

	// Configuration block with kubernetes network configuration for the cluster. Detailed below.
	KubernetesNetworkConfig *KubernetesNetworkConfigObservation `json:"kubernetesNetworkConfig,omitempty" tf:"kubernetes_network_config,omitempty"`

	// Configuration block representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This block isn't available for creating Amazon EKS clusters on the AWS cloud.
	OutpostConfig *OutpostConfigObservation `json:"outpostConfig,omitempty" tf:"outpost_config,omitempty"`

	// Platform version for the cluster.
	PlatformVersion *string `json:"platformVersion,omitempty" tf:"platform_version,omitempty"`

	// ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Ensure the resource configuration includes explicit dependencies on the IAM Role permissions by adding depends_on if using the aws_iam_role_policy resource or aws_iam_role_policy_attachment resource, otherwise EKS cannot delete EKS managed EC2 infrastructure such as Security Groups on EKS Cluster deletion.
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Status of the EKS cluster. One of CREATING, ACTIVE, DELETING, FAILED.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +mapType=granular
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`

	// Configuration block for the VPC associated with your cluster. Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see Cluster VPC Considerations and Cluster Security Group Considerations in the Amazon EKS User Guide. Detailed below. Also contains attributes detailed in the Attributes section.
	VPCConfig *VPCConfigObservation `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`

	// –  Desired Kubernetes master version. If you do not specify a value, the latest available version at resource creation is used and no upgrades will occur except those automatically triggered by EKS. The value must be configured and increased to upgrade the version when desired. Downgrades are not supported by EKS.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ClusterObservation) DeepCopy

func (in *ClusterObservation) DeepCopy() *ClusterObservation

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

func (*ClusterObservation) DeepCopyInto

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

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

type ClusterParameters

type ClusterParameters struct {

	// Configuration block for the access config associated with your cluster, see Amazon EKS Access Entries.
	// +kubebuilder:validation:Optional
	AccessConfig *AccessConfigParameters `json:"accessConfig,omitempty" tf:"access_config,omitempty"`

	// List of the desired control plane logging to enable. For more information, see Amazon EKS Control Plane Logging.
	// +kubebuilder:validation:Optional
	// +listType=set
	EnabledClusterLogTypes []*string `json:"enabledClusterLogTypes,omitempty" tf:"enabled_cluster_log_types,omitempty"`

	// Configuration block with encryption configuration for the cluster. Only available on Kubernetes 1.13 and above clusters created after March 6, 2020. Detailed below.
	// +kubebuilder:validation:Optional
	EncryptionConfig *EncryptionConfigParameters `json:"encryptionConfig,omitempty" tf:"encryption_config,omitempty"`

	// Configuration block with kubernetes network configuration for the cluster. Detailed below.
	// +kubebuilder:validation:Optional
	KubernetesNetworkConfig *KubernetesNetworkConfigParameters `json:"kubernetesNetworkConfig,omitempty" tf:"kubernetes_network_config,omitempty"`

	// Configuration block representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This block isn't available for creating Amazon EKS clusters on the AWS cloud.
	// +kubebuilder:validation:Optional
	OutpostConfig *OutpostConfigParameters `json:"outpostConfig,omitempty" tf:"outpost_config,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Ensure the resource configuration includes explicit dependencies on the IAM Role permissions by adding depends_on if using the aws_iam_role_policy resource or aws_iam_role_policy_attachment resource, otherwise EKS cannot delete EKS managed EC2 infrastructure such as Security Groups on EKS Cluster deletion.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	RoleArn *string `json:"roleArn,omitempty" tf:"role_arn,omitempty"`

	// Reference to a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnRef *v1.Reference `json:"roleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate roleArn.
	// +kubebuilder:validation:Optional
	RoleArnSelector *v1.Selector `json:"roleArnSelector,omitempty" tf:"-"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// Configuration block for the VPC associated with your cluster. Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see Cluster VPC Considerations and Cluster Security Group Considerations in the Amazon EKS User Guide. Detailed below. Also contains attributes detailed in the Attributes section.
	// +kubebuilder:validation:Optional
	VPCConfig *VPCConfigParameters `json:"vpcConfig,omitempty" tf:"vpc_config,omitempty"`

	// –  Desired Kubernetes master version. If you do not specify a value, the latest available version at resource creation is used and no upgrades will occur except those automatically triggered by EKS. The value must be configured and increased to upgrade the version when desired. Downgrades are not supported by EKS.
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*ClusterParameters) DeepCopy

func (in *ClusterParameters) DeepCopy() *ClusterParameters

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

func (*ClusterParameters) DeepCopyInto

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

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

type ClusterSpec

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

ClusterSpec defines the desired state of Cluster

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

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

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

type ClusterStatus

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

ClusterStatus defines the observed state of Cluster.

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

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

func (*ClusterStatus) DeepCopyInto

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

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

type ControlPlanePlacementInitParameters

type ControlPlanePlacementInitParameters struct {

	// The name of the placement group for the Kubernetes control plane instances. This setting can't be changed after cluster creation.
	GroupName *string `json:"groupName,omitempty" tf:"group_name,omitempty"`
}

func (*ControlPlanePlacementInitParameters) DeepCopy

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

func (*ControlPlanePlacementInitParameters) DeepCopyInto

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

type ControlPlanePlacementObservation

type ControlPlanePlacementObservation struct {

	// The name of the placement group for the Kubernetes control plane instances. This setting can't be changed after cluster creation.
	GroupName *string `json:"groupName,omitempty" tf:"group_name,omitempty"`
}

func (*ControlPlanePlacementObservation) DeepCopy

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

func (*ControlPlanePlacementObservation) DeepCopyInto

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

type ControlPlanePlacementParameters

type ControlPlanePlacementParameters struct {

	// The name of the placement group for the Kubernetes control plane instances. This setting can't be changed after cluster creation.
	// +kubebuilder:validation:Optional
	GroupName *string `json:"groupName" tf:"group_name,omitempty"`
}

func (*ControlPlanePlacementParameters) DeepCopy

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

func (*ControlPlanePlacementParameters) DeepCopyInto

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

type EncryptionConfigInitParameters

type EncryptionConfigInitParameters struct {

	// Configuration block with provider for encryption. Detailed below.
	Provider *ProviderInitParameters `json:"provider,omitempty" tf:"provider,omitempty"`

	// List of strings with resources to be encrypted. Valid values: secrets.
	// +listType=set
	Resources []*string `json:"resources,omitempty" tf:"resources,omitempty"`
}

func (*EncryptionConfigInitParameters) DeepCopy

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

func (*EncryptionConfigInitParameters) DeepCopyInto

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

type EncryptionConfigObservation

type EncryptionConfigObservation struct {

	// Configuration block with provider for encryption. Detailed below.
	Provider *ProviderObservation `json:"provider,omitempty" tf:"provider,omitempty"`

	// List of strings with resources to be encrypted. Valid values: secrets.
	// +listType=set
	Resources []*string `json:"resources,omitempty" tf:"resources,omitempty"`
}

func (*EncryptionConfigObservation) DeepCopy

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

func (*EncryptionConfigObservation) DeepCopyInto

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

type EncryptionConfigParameters

type EncryptionConfigParameters struct {

	// Configuration block with provider for encryption. Detailed below.
	// +kubebuilder:validation:Optional
	Provider *ProviderParameters `json:"provider" tf:"provider,omitempty"`

	// List of strings with resources to be encrypted. Valid values: secrets.
	// +kubebuilder:validation:Optional
	// +listType=set
	Resources []*string `json:"resources" tf:"resources,omitempty"`
}

func (*EncryptionConfigParameters) DeepCopy

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

func (*EncryptionConfigParameters) DeepCopyInto

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

type IdentityInitParameters

type IdentityInitParameters struct {
}

func (*IdentityInitParameters) DeepCopy

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

func (*IdentityInitParameters) DeepCopyInto

func (in *IdentityInitParameters) DeepCopyInto(out *IdentityInitParameters)

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

type IdentityObservation

type IdentityObservation struct {

	// Nested block containing OpenID Connect identity provider information for the cluster. Detailed below.
	Oidc []OidcObservation `json:"oidc,omitempty" tf:"oidc,omitempty"`
}

func (*IdentityObservation) DeepCopy

func (in *IdentityObservation) DeepCopy() *IdentityObservation

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

func (*IdentityObservation) DeepCopyInto

func (in *IdentityObservation) DeepCopyInto(out *IdentityObservation)

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

type IdentityParameters

type IdentityParameters struct {
}

func (*IdentityParameters) DeepCopy

func (in *IdentityParameters) DeepCopy() *IdentityParameters

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

func (*IdentityParameters) DeepCopyInto

func (in *IdentityParameters) DeepCopyInto(out *IdentityParameters)

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

type IdentityProviderConfig

type IdentityProviderConfig 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.oidc) || (has(self.initProvider) && has(self.initProvider.oidc))",message="spec.forProvider.oidc is a required parameter"
	Spec   IdentityProviderConfigSpec   `json:"spec"`
	Status IdentityProviderConfigStatus `json:"status,omitempty"`
}

IdentityProviderConfig is the Schema for the IdentityProviderConfigs API. Manages an EKS Identity Provider Configuration. +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}

func (*IdentityProviderConfig) DeepCopy

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

func (*IdentityProviderConfig) DeepCopyInto

func (in *IdentityProviderConfig) DeepCopyInto(out *IdentityProviderConfig)

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

func (*IdentityProviderConfig) DeepCopyObject

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

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

func (*IdentityProviderConfig) GetCondition

GetCondition of this IdentityProviderConfig.

func (*IdentityProviderConfig) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this IdentityProviderConfig

func (*IdentityProviderConfig) GetDeletionPolicy

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

GetDeletionPolicy of this IdentityProviderConfig.

func (*IdentityProviderConfig) GetID

func (tr *IdentityProviderConfig) GetID() string

GetID returns ID of underlying Terraform resource of this IdentityProviderConfig

func (*IdentityProviderConfig) GetInitParameters

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

GetInitParameters of this IdentityProviderConfig

func (*IdentityProviderConfig) GetManagementPolicies

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

GetManagementPolicies of this IdentityProviderConfig.

func (*IdentityProviderConfig) GetMergedParameters

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

GetInitParameters of this IdentityProviderConfig

func (*IdentityProviderConfig) GetObservation

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

GetObservation of this IdentityProviderConfig

func (*IdentityProviderConfig) GetParameters

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

GetParameters of this IdentityProviderConfig

func (*IdentityProviderConfig) GetProviderConfigReference

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

GetProviderConfigReference of this IdentityProviderConfig.

func (*IdentityProviderConfig) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this IdentityProviderConfig.

func (*IdentityProviderConfig) GetTerraformResourceType

func (mg *IdentityProviderConfig) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this IdentityProviderConfig

func (*IdentityProviderConfig) GetTerraformSchemaVersion

func (tr *IdentityProviderConfig) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*IdentityProviderConfig) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this IdentityProviderConfig.

func (*IdentityProviderConfig) Hub

func (tr *IdentityProviderConfig) Hub()

Hub marks this type as a conversion hub.

func (*IdentityProviderConfig) LateInitialize

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

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

func (*IdentityProviderConfig) ResolveReferences

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

ResolveReferences of this IdentityProviderConfig.

func (*IdentityProviderConfig) SetConditions

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

SetConditions of this IdentityProviderConfig.

func (*IdentityProviderConfig) SetDeletionPolicy

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

SetDeletionPolicy of this IdentityProviderConfig.

func (*IdentityProviderConfig) SetManagementPolicies

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

SetManagementPolicies of this IdentityProviderConfig.

func (*IdentityProviderConfig) SetObservation

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

SetObservation for this IdentityProviderConfig

func (*IdentityProviderConfig) SetParameters

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

SetParameters for this IdentityProviderConfig

func (*IdentityProviderConfig) SetProviderConfigReference

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

SetProviderConfigReference of this IdentityProviderConfig.

func (*IdentityProviderConfig) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this IdentityProviderConfig.

func (*IdentityProviderConfig) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this IdentityProviderConfig.

type IdentityProviderConfigInitParameters

type IdentityProviderConfigInitParameters struct {

	// –  Name of the EKS Cluster.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/eks/v1beta2.Cluster
	ClusterName *string `json:"clusterName,omitempty" tf:"cluster_name,omitempty"`

	// Reference to a Cluster in eks to populate clusterName.
	// +kubebuilder:validation:Optional
	ClusterNameRef *v1.Reference `json:"clusterNameRef,omitempty" tf:"-"`

	// Selector for a Cluster in eks to populate clusterName.
	// +kubebuilder:validation:Optional
	ClusterNameSelector *v1.Selector `json:"clusterNameSelector,omitempty" tf:"-"`

	// Nested attribute containing OpenID Connect identity provider information for the cluster. Detailed below.
	Oidc *IdentityProviderConfigOidcInitParameters `json:"oidc,omitempty" tf:"oidc,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*IdentityProviderConfigInitParameters) DeepCopy

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

func (*IdentityProviderConfigInitParameters) DeepCopyInto

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

type IdentityProviderConfigList

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

IdentityProviderConfigList contains a list of IdentityProviderConfigs

func (*IdentityProviderConfigList) DeepCopy

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

func (*IdentityProviderConfigList) DeepCopyInto

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

func (*IdentityProviderConfigList) DeepCopyObject

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

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

func (*IdentityProviderConfigList) GetItems

GetItems of this IdentityProviderConfigList.

type IdentityProviderConfigObservation

type IdentityProviderConfigObservation struct {

	// Amazon Resource Name (ARN) of the EKS Identity Provider Configuration.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// –  Name of the EKS Cluster.
	ClusterName *string `json:"clusterName,omitempty" tf:"cluster_name,omitempty"`

	// EKS Cluster name and EKS Identity Provider Configuration name separated by a colon (:).
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Nested attribute containing OpenID Connect identity provider information for the cluster. Detailed below.
	Oidc *IdentityProviderConfigOidcObservation `json:"oidc,omitempty" tf:"oidc,omitempty"`

	// Status of the EKS Identity Provider Configuration.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +mapType=granular
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`
}

func (*IdentityProviderConfigObservation) DeepCopy

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

func (*IdentityProviderConfigObservation) DeepCopyInto

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

type IdentityProviderConfigOidcInitParameters

type IdentityProviderConfigOidcInitParameters struct {

	// –  Client ID for the OpenID Connect identity provider.
	ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"`

	// The JWT claim that the provider will use to return groups.
	GroupsClaim *string `json:"groupsClaim,omitempty" tf:"groups_claim,omitempty"`

	// A prefix that is prepended to group claims e.g., oidc:.
	GroupsPrefix *string `json:"groupsPrefix,omitempty" tf:"groups_prefix,omitempty"`

	// Issuer URL for the OpenID Connect identity provider.
	IssuerURL *string `json:"issuerUrl,omitempty" tf:"issuer_url,omitempty"`

	// The key value pairs that describe required claims in the identity token.
	// +mapType=granular
	RequiredClaims map[string]*string `json:"requiredClaims,omitempty" tf:"required_claims,omitempty"`

	// The JWT claim that the provider will use as the username.
	UsernameClaim *string `json:"usernameClaim,omitempty" tf:"username_claim,omitempty"`

	// A prefix that is prepended to username claims.
	UsernamePrefix *string `json:"usernamePrefix,omitempty" tf:"username_prefix,omitempty"`
}

func (*IdentityProviderConfigOidcInitParameters) DeepCopy

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

func (*IdentityProviderConfigOidcInitParameters) DeepCopyInto

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

type IdentityProviderConfigOidcObservation

type IdentityProviderConfigOidcObservation struct {

	// –  Client ID for the OpenID Connect identity provider.
	ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"`

	// The JWT claim that the provider will use to return groups.
	GroupsClaim *string `json:"groupsClaim,omitempty" tf:"groups_claim,omitempty"`

	// A prefix that is prepended to group claims e.g., oidc:.
	GroupsPrefix *string `json:"groupsPrefix,omitempty" tf:"groups_prefix,omitempty"`

	// Issuer URL for the OpenID Connect identity provider.
	IssuerURL *string `json:"issuerUrl,omitempty" tf:"issuer_url,omitempty"`

	// The key value pairs that describe required claims in the identity token.
	// +mapType=granular
	RequiredClaims map[string]*string `json:"requiredClaims,omitempty" tf:"required_claims,omitempty"`

	// The JWT claim that the provider will use as the username.
	UsernameClaim *string `json:"usernameClaim,omitempty" tf:"username_claim,omitempty"`

	// A prefix that is prepended to username claims.
	UsernamePrefix *string `json:"usernamePrefix,omitempty" tf:"username_prefix,omitempty"`
}

func (*IdentityProviderConfigOidcObservation) DeepCopy

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

func (*IdentityProviderConfigOidcObservation) DeepCopyInto

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

type IdentityProviderConfigOidcParameters

type IdentityProviderConfigOidcParameters struct {

	// –  Client ID for the OpenID Connect identity provider.
	// +kubebuilder:validation:Optional
	ClientID *string `json:"clientId" tf:"client_id,omitempty"`

	// The JWT claim that the provider will use to return groups.
	// +kubebuilder:validation:Optional
	GroupsClaim *string `json:"groupsClaim,omitempty" tf:"groups_claim,omitempty"`

	// A prefix that is prepended to group claims e.g., oidc:.
	// +kubebuilder:validation:Optional
	GroupsPrefix *string `json:"groupsPrefix,omitempty" tf:"groups_prefix,omitempty"`

	// Issuer URL for the OpenID Connect identity provider.
	// +kubebuilder:validation:Optional
	IssuerURL *string `json:"issuerUrl" tf:"issuer_url,omitempty"`

	// The key value pairs that describe required claims in the identity token.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	RequiredClaims map[string]*string `json:"requiredClaims,omitempty" tf:"required_claims,omitempty"`

	// The JWT claim that the provider will use as the username.
	// +kubebuilder:validation:Optional
	UsernameClaim *string `json:"usernameClaim,omitempty" tf:"username_claim,omitempty"`

	// A prefix that is prepended to username claims.
	// +kubebuilder:validation:Optional
	UsernamePrefix *string `json:"usernamePrefix,omitempty" tf:"username_prefix,omitempty"`
}

func (*IdentityProviderConfigOidcParameters) DeepCopy

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

func (*IdentityProviderConfigOidcParameters) DeepCopyInto

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

type IdentityProviderConfigParameters

type IdentityProviderConfigParameters struct {

	// –  Name of the EKS Cluster.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/eks/v1beta2.Cluster
	// +kubebuilder:validation:Optional
	ClusterName *string `json:"clusterName,omitempty" tf:"cluster_name,omitempty"`

	// Reference to a Cluster in eks to populate clusterName.
	// +kubebuilder:validation:Optional
	ClusterNameRef *v1.Reference `json:"clusterNameRef,omitempty" tf:"-"`

	// Selector for a Cluster in eks to populate clusterName.
	// +kubebuilder:validation:Optional
	ClusterNameSelector *v1.Selector `json:"clusterNameSelector,omitempty" tf:"-"`

	// Nested attribute containing OpenID Connect identity provider information for the cluster. Detailed below.
	// +kubebuilder:validation:Optional
	Oidc *IdentityProviderConfigOidcParameters `json:"oidc,omitempty" tf:"oidc,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`
}

func (*IdentityProviderConfigParameters) DeepCopy

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

func (*IdentityProviderConfigParameters) DeepCopyInto

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

type IdentityProviderConfigSpec

type IdentityProviderConfigSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     IdentityProviderConfigParameters `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 IdentityProviderConfigInitParameters `json:"initProvider,omitempty"`
}

IdentityProviderConfigSpec defines the desired state of IdentityProviderConfig

func (*IdentityProviderConfigSpec) DeepCopy

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

func (*IdentityProviderConfigSpec) DeepCopyInto

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

type IdentityProviderConfigStatus

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

IdentityProviderConfigStatus defines the observed state of IdentityProviderConfig.

func (*IdentityProviderConfigStatus) DeepCopy

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

func (*IdentityProviderConfigStatus) DeepCopyInto

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

type KubernetesNetworkConfigInitParameters

type KubernetesNetworkConfigInitParameters struct {

	// The IP family used to assign Kubernetes pod and service addresses. Valid values are ipv4 (default) and ipv6. You can only specify an IP family when you create a cluster, changing this value will force a new cluster to be created.
	IPFamily *string `json:"ipFamily,omitempty" tf:"ip_family,omitempty"`

	// The CIDR block to assign Kubernetes pod and service IP addresses from. If you don't specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. We recommend that you specify a block that does not overlap with resources in other networks that are peered or connected to your VPC. You can only specify a custom CIDR block when you create a cluster, changing this value will force a new cluster to be created. The block must meet the following requirements:
	ServiceIPv4Cidr *string `json:"serviceIpv4Cidr,omitempty" tf:"service_ipv4_cidr,omitempty"`
}

func (*KubernetesNetworkConfigInitParameters) DeepCopy

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

func (*KubernetesNetworkConfigInitParameters) DeepCopyInto

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

type KubernetesNetworkConfigObservation

type KubernetesNetworkConfigObservation struct {

	// The IP family used to assign Kubernetes pod and service addresses. Valid values are ipv4 (default) and ipv6. You can only specify an IP family when you create a cluster, changing this value will force a new cluster to be created.
	IPFamily *string `json:"ipFamily,omitempty" tf:"ip_family,omitempty"`

	// The CIDR block to assign Kubernetes pod and service IP addresses from. If you don't specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. We recommend that you specify a block that does not overlap with resources in other networks that are peered or connected to your VPC. You can only specify a custom CIDR block when you create a cluster, changing this value will force a new cluster to be created. The block must meet the following requirements:
	ServiceIPv4Cidr *string `json:"serviceIpv4Cidr,omitempty" tf:"service_ipv4_cidr,omitempty"`

	// The CIDR block that Kubernetes pod and service IP addresses are assigned from if you specified ipv6 for ipFamily when you created the cluster. Kubernetes assigns service addresses from the unique local address range (fc00::/7) because you can't specify a custom IPv6 CIDR block when you create the cluster.
	ServiceIPv6Cidr *string `json:"serviceIpv6Cidr,omitempty" tf:"service_ipv6_cidr,omitempty"`
}

func (*KubernetesNetworkConfigObservation) DeepCopy

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

func (*KubernetesNetworkConfigObservation) DeepCopyInto

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

type KubernetesNetworkConfigParameters

type KubernetesNetworkConfigParameters struct {

	// The IP family used to assign Kubernetes pod and service addresses. Valid values are ipv4 (default) and ipv6. You can only specify an IP family when you create a cluster, changing this value will force a new cluster to be created.
	// +kubebuilder:validation:Optional
	IPFamily *string `json:"ipFamily,omitempty" tf:"ip_family,omitempty"`

	// The CIDR block to assign Kubernetes pod and service IP addresses from. If you don't specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. We recommend that you specify a block that does not overlap with resources in other networks that are peered or connected to your VPC. You can only specify a custom CIDR block when you create a cluster, changing this value will force a new cluster to be created. The block must meet the following requirements:
	// +kubebuilder:validation:Optional
	ServiceIPv4Cidr *string `json:"serviceIpv4Cidr,omitempty" tf:"service_ipv4_cidr,omitempty"`
}

func (*KubernetesNetworkConfigParameters) DeepCopy

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

func (*KubernetesNetworkConfigParameters) DeepCopyInto

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

type LaunchTemplateInitParameters

type LaunchTemplateInitParameters struct {

	// Identifier of the EC2 Launch Template. Conflicts with name.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Name of the EC2 Launch Template. Conflicts with id.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// EC2 Launch Template version number. While the API accepts values like $Default and $Latest, the API will convert the value to the associated version number (e.g., 1). Using the default_version or latest_version attribute of the aws_launch_template resource or data source is recommended for this argument.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*LaunchTemplateInitParameters) DeepCopy

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

func (*LaunchTemplateInitParameters) DeepCopyInto

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

type LaunchTemplateObservation

type LaunchTemplateObservation struct {

	// Identifier of the EC2 Launch Template. Conflicts with name.
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Name of the EC2 Launch Template. Conflicts with id.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// EC2 Launch Template version number. While the API accepts values like $Default and $Latest, the API will convert the value to the associated version number (e.g., 1). Using the default_version or latest_version attribute of the aws_launch_template resource or data source is recommended for this argument.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*LaunchTemplateObservation) DeepCopy

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

func (*LaunchTemplateObservation) DeepCopyInto

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

type LaunchTemplateParameters

type LaunchTemplateParameters struct {

	// Identifier of the EC2 Launch Template. Conflicts with name.
	// +kubebuilder:validation:Optional
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Name of the EC2 Launch Template. Conflicts with id.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// EC2 Launch Template version number. While the API accepts values like $Default and $Latest, the API will convert the value to the associated version number (e.g., 1). Using the default_version or latest_version attribute of the aws_launch_template resource or data source is recommended for this argument.
	// +kubebuilder:validation:Optional
	Version *string `json:"version" tf:"version,omitempty"`
}

func (*LaunchTemplateParameters) DeepCopy

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

func (*LaunchTemplateParameters) DeepCopyInto

func (in *LaunchTemplateParameters) DeepCopyInto(out *LaunchTemplateParameters)

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

type NodeGroup

type NodeGroup 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.scalingConfig) || (has(self.initProvider) && has(self.initProvider.scalingConfig))",message="spec.forProvider.scalingConfig is a required parameter"
	Spec   NodeGroupSpec   `json:"spec"`
	Status NodeGroupStatus `json:"status,omitempty"`
}

NodeGroup is the Schema for the NodeGroups API. Manages an EKS Node Group +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}

func (*NodeGroup) DeepCopy

func (in *NodeGroup) DeepCopy() *NodeGroup

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

func (*NodeGroup) DeepCopyInto

func (in *NodeGroup) DeepCopyInto(out *NodeGroup)

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

func (*NodeGroup) DeepCopyObject

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

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

func (*NodeGroup) GetCondition

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

GetCondition of this NodeGroup.

func (*NodeGroup) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this NodeGroup

func (*NodeGroup) GetDeletionPolicy

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

GetDeletionPolicy of this NodeGroup.

func (*NodeGroup) GetID

func (tr *NodeGroup) GetID() string

GetID returns ID of underlying Terraform resource of this NodeGroup

func (*NodeGroup) GetInitParameters

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

GetInitParameters of this NodeGroup

func (*NodeGroup) GetManagementPolicies

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

GetManagementPolicies of this NodeGroup.

func (*NodeGroup) GetMergedParameters

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

GetInitParameters of this NodeGroup

func (*NodeGroup) GetObservation

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

GetObservation of this NodeGroup

func (*NodeGroup) GetParameters

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

GetParameters of this NodeGroup

func (*NodeGroup) GetProviderConfigReference

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

GetProviderConfigReference of this NodeGroup.

func (*NodeGroup) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this NodeGroup.

func (*NodeGroup) GetTerraformResourceType

func (mg *NodeGroup) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this NodeGroup

func (*NodeGroup) GetTerraformSchemaVersion

func (tr *NodeGroup) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*NodeGroup) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this NodeGroup.

func (*NodeGroup) Hub

func (tr *NodeGroup) Hub()

Hub marks this type as a conversion hub.

func (*NodeGroup) LateInitialize

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

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

func (*NodeGroup) ResolveReferences

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

ResolveReferences of this NodeGroup.

func (*NodeGroup) SetConditions

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

SetConditions of this NodeGroup.

func (*NodeGroup) SetDeletionPolicy

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

SetDeletionPolicy of this NodeGroup.

func (*NodeGroup) SetManagementPolicies

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

SetManagementPolicies of this NodeGroup.

func (*NodeGroup) SetObservation

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

SetObservation for this NodeGroup

func (*NodeGroup) SetParameters

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

SetParameters for this NodeGroup

func (*NodeGroup) SetProviderConfigReference

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

SetProviderConfigReference of this NodeGroup.

func (*NodeGroup) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this NodeGroup.

func (*NodeGroup) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this NodeGroup.

type NodeGroupInitParameters

type NodeGroupInitParameters struct {

	// Type of Amazon Machine Image (AMI) associated with the EKS Node Group. See the AWS documentation for valid values.
	AMIType *string `json:"amiType,omitempty" tf:"ami_type,omitempty"`

	// Type of capacity associated with the EKS Node Group. Valid values: ON_DEMAND, SPOT.
	CapacityType *string `json:"capacityType,omitempty" tf:"capacity_type,omitempty"`

	// Disk size in GiB for worker nodes. Defaults to 50 for Windows, 20 all other node groups.
	DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"`

	// Force version update if existing pods are unable to be drained due to a pod disruption budget issue.
	ForceUpdateVersion *bool `json:"forceUpdateVersion,omitempty" tf:"force_update_version,omitempty"`

	// List of instance types associated with the EKS Node Group. Defaults to ["t3.medium"].
	InstanceTypes []*string `json:"instanceTypes,omitempty" tf:"instance_types,omitempty"`

	// Key-value map of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed.
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Configuration block with Launch Template settings. See launch_template below for details. Conflicts with remote_access.
	LaunchTemplate *LaunchTemplateInitParameters `json:"launchTemplate,omitempty" tf:"launch_template,omitempty"`

	// –  Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	NodeRoleArn *string `json:"nodeRoleArn,omitempty" tf:"node_role_arn,omitempty"`

	// Reference to a Role in iam to populate nodeRoleArn.
	// +kubebuilder:validation:Optional
	NodeRoleArnRef *v1.Reference `json:"nodeRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate nodeRoleArn.
	// +kubebuilder:validation:Optional
	NodeRoleArnSelector *v1.Selector `json:"nodeRoleArnSelector,omitempty" tf:"-"`

	// –  AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version.
	ReleaseVersion *string `json:"releaseVersion,omitempty" tf:"release_version,omitempty"`

	// Configuration block with remote access settings. See remote_access below for details. Conflicts with launch_template.
	RemoteAccess *RemoteAccessInitParameters `json:"remoteAccess,omitempty" tf:"remote_access,omitempty"`

	// Configuration block with scaling settings. See scaling_config below for details.
	ScalingConfig *ScalingConfigInitParameters `json:"scalingConfig,omitempty" tf:"scaling_config,omitempty"`

	// References to Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDRefs []v1.Reference `json:"subnetIdRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// Identifiers of EC2 Subnets to associate with the EKS Node Group. Amazon EKS managed node groups can be launched in both public and private subnets. If you plan to deploy load balancers to a subnet, the private subnet must have tag kubernetes.io/role/internal-elb, the public subnet must have tag kubernetes.io/role/elb.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:refFieldName=SubnetIDRefs
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The Kubernetes taints to be applied to the nodes in the node group. Maximum of 50 taints per node group. See taint below for details.
	Taint []TaintInitParameters `json:"taint,omitempty" tf:"taint,omitempty"`

	// Configuration block with update settings. See update_config below for details.
	UpdateConfig *UpdateConfigInitParameters `json:"updateConfig,omitempty" tf:"update_config,omitempty"`

	// –  Kubernetes version. Defaults to EKS Cluster Kubernetes version.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/eks/v1beta2.Cluster
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("version",false)
	Version *string `json:"version,omitempty" tf:"version,omitempty"`

	// Reference to a Cluster in eks to populate version.
	// +kubebuilder:validation:Optional
	VersionRef *v1.Reference `json:"versionRef,omitempty" tf:"-"`

	// Selector for a Cluster in eks to populate version.
	// +kubebuilder:validation:Optional
	VersionSelector *v1.Selector `json:"versionSelector,omitempty" tf:"-"`
}

func (*NodeGroupInitParameters) DeepCopy

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

func (*NodeGroupInitParameters) DeepCopyInto

func (in *NodeGroupInitParameters) DeepCopyInto(out *NodeGroupInitParameters)

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

type NodeGroupList

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

NodeGroupList contains a list of NodeGroups

func (*NodeGroupList) DeepCopy

func (in *NodeGroupList) DeepCopy() *NodeGroupList

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

func (*NodeGroupList) DeepCopyInto

func (in *NodeGroupList) DeepCopyInto(out *NodeGroupList)

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

func (*NodeGroupList) DeepCopyObject

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

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

func (*NodeGroupList) GetItems

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

GetItems of this NodeGroupList.

type NodeGroupObservation

type NodeGroupObservation struct {

	// Type of Amazon Machine Image (AMI) associated with the EKS Node Group. See the AWS documentation for valid values.
	AMIType *string `json:"amiType,omitempty" tf:"ami_type,omitempty"`

	// Amazon Resource Name (ARN) of the EKS Node Group.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// Type of capacity associated with the EKS Node Group. Valid values: ON_DEMAND, SPOT.
	CapacityType *string `json:"capacityType,omitempty" tf:"capacity_type,omitempty"`

	// –  Name of the EKS Cluster.
	ClusterName *string `json:"clusterName,omitempty" tf:"cluster_name,omitempty"`

	// Disk size in GiB for worker nodes. Defaults to 50 for Windows, 20 all other node groups.
	DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"`

	// Force version update if existing pods are unable to be drained due to a pod disruption budget issue.
	ForceUpdateVersion *bool `json:"forceUpdateVersion,omitempty" tf:"force_update_version,omitempty"`

	// EKS Cluster name and EKS Node Group name separated by a colon (:).
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// List of instance types associated with the EKS Node Group. Defaults to ["t3.medium"].
	InstanceTypes []*string `json:"instanceTypes,omitempty" tf:"instance_types,omitempty"`

	// Key-value map of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed.
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Configuration block with Launch Template settings. See launch_template below for details. Conflicts with remote_access.
	LaunchTemplate *LaunchTemplateObservation `json:"launchTemplate,omitempty" tf:"launch_template,omitempty"`

	// –  Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group.
	NodeRoleArn *string `json:"nodeRoleArn,omitempty" tf:"node_role_arn,omitempty"`

	// –  AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version.
	ReleaseVersion *string `json:"releaseVersion,omitempty" tf:"release_version,omitempty"`

	// Configuration block with remote access settings. See remote_access below for details. Conflicts with launch_template.
	RemoteAccess *RemoteAccessObservation `json:"remoteAccess,omitempty" tf:"remote_access,omitempty"`

	// List of objects containing information about underlying resources.
	Resources []ResourcesObservation `json:"resources,omitempty" tf:"resources,omitempty"`

	// Configuration block with scaling settings. See scaling_config below for details.
	ScalingConfig *ScalingConfigObservation `json:"scalingConfig,omitempty" tf:"scaling_config,omitempty"`

	// Status of the EKS Node Group.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// Identifiers of EC2 Subnets to associate with the EKS Node Group. Amazon EKS managed node groups can be launched in both public and private subnets. If you plan to deploy load balancers to a subnet, the private subnet must have tag kubernetes.io/role/internal-elb, the public subnet must have tag kubernetes.io/role/elb.
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +mapType=granular
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`

	// The Kubernetes taints to be applied to the nodes in the node group. Maximum of 50 taints per node group. See taint below for details.
	Taint []TaintObservation `json:"taint,omitempty" tf:"taint,omitempty"`

	// Configuration block with update settings. See update_config below for details.
	UpdateConfig *UpdateConfigObservation `json:"updateConfig,omitempty" tf:"update_config,omitempty"`

	// –  Kubernetes version. Defaults to EKS Cluster Kubernetes version.
	Version *string `json:"version,omitempty" tf:"version,omitempty"`
}

func (*NodeGroupObservation) DeepCopy

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

func (*NodeGroupObservation) DeepCopyInto

func (in *NodeGroupObservation) DeepCopyInto(out *NodeGroupObservation)

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

type NodeGroupParameters

type NodeGroupParameters struct {

	// Type of Amazon Machine Image (AMI) associated with the EKS Node Group. See the AWS documentation for valid values.
	// +kubebuilder:validation:Optional
	AMIType *string `json:"amiType,omitempty" tf:"ami_type,omitempty"`

	// Type of capacity associated with the EKS Node Group. Valid values: ON_DEMAND, SPOT.
	// +kubebuilder:validation:Optional
	CapacityType *string `json:"capacityType,omitempty" tf:"capacity_type,omitempty"`

	// –  Name of the EKS Cluster.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/eks/v1beta2.Cluster
	// +crossplane:generate:reference:extractor=ExternalNameIfClusterActive()
	// +kubebuilder:validation:Optional
	ClusterName *string `json:"clusterName,omitempty" tf:"cluster_name,omitempty"`

	// Reference to a Cluster in eks to populate clusterName.
	// +kubebuilder:validation:Optional
	ClusterNameRef *v1.Reference `json:"clusterNameRef,omitempty" tf:"-"`

	// Selector for a Cluster in eks to populate clusterName.
	// +kubebuilder:validation:Optional
	ClusterNameSelector *v1.Selector `json:"clusterNameSelector,omitempty" tf:"-"`

	// Disk size in GiB for worker nodes. Defaults to 50 for Windows, 20 all other node groups.
	// +kubebuilder:validation:Optional
	DiskSize *float64 `json:"diskSize,omitempty" tf:"disk_size,omitempty"`

	// Force version update if existing pods are unable to be drained due to a pod disruption budget issue.
	// +kubebuilder:validation:Optional
	ForceUpdateVersion *bool `json:"forceUpdateVersion,omitempty" tf:"force_update_version,omitempty"`

	// List of instance types associated with the EKS Node Group. Defaults to ["t3.medium"].
	// +kubebuilder:validation:Optional
	InstanceTypes []*string `json:"instanceTypes,omitempty" tf:"instance_types,omitempty"`

	// Key-value map of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Labels map[string]*string `json:"labels,omitempty" tf:"labels,omitempty"`

	// Configuration block with Launch Template settings. See launch_template below for details. Conflicts with remote_access.
	// +kubebuilder:validation:Optional
	LaunchTemplate *LaunchTemplateParameters `json:"launchTemplate,omitempty" tf:"launch_template,omitempty"`

	// –  Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/iam/v1beta1.Role
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	NodeRoleArn *string `json:"nodeRoleArn,omitempty" tf:"node_role_arn,omitempty"`

	// Reference to a Role in iam to populate nodeRoleArn.
	// +kubebuilder:validation:Optional
	NodeRoleArnRef *v1.Reference `json:"nodeRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate nodeRoleArn.
	// +kubebuilder:validation:Optional
	NodeRoleArnSelector *v1.Selector `json:"nodeRoleArnSelector,omitempty" tf:"-"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// –  AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version.
	// +kubebuilder:validation:Optional
	ReleaseVersion *string `json:"releaseVersion,omitempty" tf:"release_version,omitempty"`

	// Configuration block with remote access settings. See remote_access below for details. Conflicts with launch_template.
	// +kubebuilder:validation:Optional
	RemoteAccess *RemoteAccessParameters `json:"remoteAccess,omitempty" tf:"remote_access,omitempty"`

	// Configuration block with scaling settings. See scaling_config below for details.
	// +kubebuilder:validation:Optional
	ScalingConfig *ScalingConfigParameters `json:"scalingConfig,omitempty" tf:"scaling_config,omitempty"`

	// References to Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDRefs []v1.Reference `json:"subnetIdRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// Identifiers of EC2 Subnets to associate with the EKS Node Group. Amazon EKS managed node groups can be launched in both public and private subnets. If you plan to deploy load balancers to a subnet, the private subnet must have tag kubernetes.io/role/internal-elb, the public subnet must have tag kubernetes.io/role/elb.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:refFieldName=SubnetIDRefs
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	// +kubebuilder:validation:Optional
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// Key-value map of resource tags.
	// +kubebuilder:validation:Optional
	// +mapType=granular
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// The Kubernetes taints to be applied to the nodes in the node group. Maximum of 50 taints per node group. See taint below for details.
	// +kubebuilder:validation:Optional
	Taint []TaintParameters `json:"taint,omitempty" tf:"taint,omitempty"`

	// Configuration block with update settings. See update_config below for details.
	// +kubebuilder:validation:Optional
	UpdateConfig *UpdateConfigParameters `json:"updateConfig,omitempty" tf:"update_config,omitempty"`

	// –  Kubernetes version. Defaults to EKS Cluster Kubernetes version.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/eks/v1beta2.Cluster
	// +crossplane:generate:reference:extractor=github.com/crossplane/upjet/pkg/resource.ExtractParamPath("version",false)
	// +kubebuilder:validation:Optional
	Version *string `json:"version,omitempty" tf:"version,omitempty"`

	// Reference to a Cluster in eks to populate version.
	// +kubebuilder:validation:Optional
	VersionRef *v1.Reference `json:"versionRef,omitempty" tf:"-"`

	// Selector for a Cluster in eks to populate version.
	// +kubebuilder:validation:Optional
	VersionSelector *v1.Selector `json:"versionSelector,omitempty" tf:"-"`
}

func (*NodeGroupParameters) DeepCopy

func (in *NodeGroupParameters) DeepCopy() *NodeGroupParameters

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

func (*NodeGroupParameters) DeepCopyInto

func (in *NodeGroupParameters) DeepCopyInto(out *NodeGroupParameters)

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

type NodeGroupSpec

type NodeGroupSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     NodeGroupParameters `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 NodeGroupInitParameters `json:"initProvider,omitempty"`
}

NodeGroupSpec defines the desired state of NodeGroup

func (*NodeGroupSpec) DeepCopy

func (in *NodeGroupSpec) DeepCopy() *NodeGroupSpec

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

func (*NodeGroupSpec) DeepCopyInto

func (in *NodeGroupSpec) DeepCopyInto(out *NodeGroupSpec)

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

type NodeGroupStatus

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

NodeGroupStatus defines the observed state of NodeGroup.

func (*NodeGroupStatus) DeepCopy

func (in *NodeGroupStatus) DeepCopy() *NodeGroupStatus

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

func (*NodeGroupStatus) DeepCopyInto

func (in *NodeGroupStatus) DeepCopyInto(out *NodeGroupStatus)

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

type OidcInitParameters

type OidcInitParameters struct {
}

func (*OidcInitParameters) DeepCopy

func (in *OidcInitParameters) DeepCopy() *OidcInitParameters

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

func (*OidcInitParameters) DeepCopyInto

func (in *OidcInitParameters) DeepCopyInto(out *OidcInitParameters)

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

type OidcObservation

type OidcObservation struct {

	// Issuer URL for the OpenID Connect identity provider.
	Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"`
}

func (*OidcObservation) DeepCopy

func (in *OidcObservation) DeepCopy() *OidcObservation

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

func (*OidcObservation) DeepCopyInto

func (in *OidcObservation) DeepCopyInto(out *OidcObservation)

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

type OidcParameters

type OidcParameters struct {
}

func (*OidcParameters) DeepCopy

func (in *OidcParameters) DeepCopy() *OidcParameters

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

func (*OidcParameters) DeepCopyInto

func (in *OidcParameters) DeepCopyInto(out *OidcParameters)

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

type OutpostConfigInitParameters

type OutpostConfigInitParameters struct {

	// The Amazon EC2 instance type that you want to use for your local Amazon EKS cluster on Outposts. The instance type that you specify is used for all Kubernetes control plane instances. The instance type can't be changed after cluster creation. Choose an instance type based on the number of nodes that your cluster will have. If your cluster will have:
	ControlPlaneInstanceType *string `json:"controlPlaneInstanceType,omitempty" tf:"control_plane_instance_type,omitempty"`

	// An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on AWS Outpost.
	// The control_plane_placement configuration block supports the following arguments:
	ControlPlanePlacement *ControlPlanePlacementInitParameters `json:"controlPlanePlacement,omitempty" tf:"control_plane_placement,omitempty"`

	// The ARN of the Outpost that you want to use for your local Amazon EKS cluster on Outposts. This argument is a list of arns, but only a single Outpost ARN is supported currently.
	// +listType=set
	OutpostArns []*string `json:"outpostArns,omitempty" tf:"outpost_arns,omitempty"`
}

func (*OutpostConfigInitParameters) DeepCopy

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

func (*OutpostConfigInitParameters) DeepCopyInto

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

type OutpostConfigObservation

type OutpostConfigObservation struct {

	// The Amazon EC2 instance type that you want to use for your local Amazon EKS cluster on Outposts. The instance type that you specify is used for all Kubernetes control plane instances. The instance type can't be changed after cluster creation. Choose an instance type based on the number of nodes that your cluster will have. If your cluster will have:
	ControlPlaneInstanceType *string `json:"controlPlaneInstanceType,omitempty" tf:"control_plane_instance_type,omitempty"`

	// An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on AWS Outpost.
	// The control_plane_placement configuration block supports the following arguments:
	ControlPlanePlacement *ControlPlanePlacementObservation `json:"controlPlanePlacement,omitempty" tf:"control_plane_placement,omitempty"`

	// The ARN of the Outpost that you want to use for your local Amazon EKS cluster on Outposts. This argument is a list of arns, but only a single Outpost ARN is supported currently.
	// +listType=set
	OutpostArns []*string `json:"outpostArns,omitempty" tf:"outpost_arns,omitempty"`
}

func (*OutpostConfigObservation) DeepCopy

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

func (*OutpostConfigObservation) DeepCopyInto

func (in *OutpostConfigObservation) DeepCopyInto(out *OutpostConfigObservation)

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

type OutpostConfigParameters

type OutpostConfigParameters struct {

	// The Amazon EC2 instance type that you want to use for your local Amazon EKS cluster on Outposts. The instance type that you specify is used for all Kubernetes control plane instances. The instance type can't be changed after cluster creation. Choose an instance type based on the number of nodes that your cluster will have. If your cluster will have:
	// +kubebuilder:validation:Optional
	ControlPlaneInstanceType *string `json:"controlPlaneInstanceType" tf:"control_plane_instance_type,omitempty"`

	// An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on AWS Outpost.
	// The control_plane_placement configuration block supports the following arguments:
	// +kubebuilder:validation:Optional
	ControlPlanePlacement *ControlPlanePlacementParameters `json:"controlPlanePlacement,omitempty" tf:"control_plane_placement,omitempty"`

	// The ARN of the Outpost that you want to use for your local Amazon EKS cluster on Outposts. This argument is a list of arns, but only a single Outpost ARN is supported currently.
	// +kubebuilder:validation:Optional
	// +listType=set
	OutpostArns []*string `json:"outpostArns" tf:"outpost_arns,omitempty"`
}

func (*OutpostConfigParameters) DeepCopy

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

func (*OutpostConfigParameters) DeepCopyInto

func (in *OutpostConfigParameters) DeepCopyInto(out *OutpostConfigParameters)

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

type ProviderInitParameters

type ProviderInitParameters struct {

	// ARN of the Key Management Service (KMS) customer master key (CMK). The CMK must be symmetric, created in the same region as the cluster, and if the CMK was created in a different account, the user must have access to the CMK. For more information, see Allowing Users in Other Accounts to Use a CMK in the AWS Key Management Service Developer Guide.
	KeyArn *string `json:"keyArn,omitempty" tf:"key_arn,omitempty"`
}

func (*ProviderInitParameters) DeepCopy

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

func (*ProviderInitParameters) DeepCopyInto

func (in *ProviderInitParameters) DeepCopyInto(out *ProviderInitParameters)

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

type ProviderObservation

type ProviderObservation struct {

	// ARN of the Key Management Service (KMS) customer master key (CMK). The CMK must be symmetric, created in the same region as the cluster, and if the CMK was created in a different account, the user must have access to the CMK. For more information, see Allowing Users in Other Accounts to Use a CMK in the AWS Key Management Service Developer Guide.
	KeyArn *string `json:"keyArn,omitempty" tf:"key_arn,omitempty"`
}

func (*ProviderObservation) DeepCopy

func (in *ProviderObservation) DeepCopy() *ProviderObservation

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

func (*ProviderObservation) DeepCopyInto

func (in *ProviderObservation) DeepCopyInto(out *ProviderObservation)

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

type ProviderParameters

type ProviderParameters struct {

	// ARN of the Key Management Service (KMS) customer master key (CMK). The CMK must be symmetric, created in the same region as the cluster, and if the CMK was created in a different account, the user must have access to the CMK. For more information, see Allowing Users in Other Accounts to Use a CMK in the AWS Key Management Service Developer Guide.
	// +kubebuilder:validation:Optional
	KeyArn *string `json:"keyArn" tf:"key_arn,omitempty"`
}

func (*ProviderParameters) DeepCopy

func (in *ProviderParameters) DeepCopy() *ProviderParameters

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

func (*ProviderParameters) DeepCopyInto

func (in *ProviderParameters) DeepCopyInto(out *ProviderParameters)

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

type RemoteAccessInitParameters

type RemoteAccessInitParameters struct {

	// EC2 Key Pair name that provides access for remote communication with the worker nodes in the EKS Node Group. If you specify this configuration, but do not specify source_security_group_ids when you create an EKS Node Group, either port 3389 for Windows, or port 22 for all other operating systems is opened on the worker nodes to the Internet (0.0.0.0/0). For Windows nodes, this will allow you to use RDP, for all others this allows you to SSH into the worker nodes.
	EC2SSHKey *string `json:"ec2SshKey,omitempty" tf:"ec2_ssh_key,omitempty"`

	// References to SecurityGroup in ec2 to populate sourceSecurityGroupIds.
	// +kubebuilder:validation:Optional
	SourceSecurityGroupIDRefs []v1.Reference `json:"sourceSecurityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in ec2 to populate sourceSecurityGroupIds.
	// +kubebuilder:validation:Optional
	SourceSecurityGroupIDSelector *v1.Selector `json:"sourceSecurityGroupIdSelector,omitempty" tf:"-"`

	// Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes. If you specify ec2_ssh_key, but do not specify this configuration when you create an EKS Node Group, port 22 on the worker nodes is opened to the Internet (0.0.0.0/0).
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SourceSecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SourceSecurityGroupIDSelector
	// +listType=set
	SourceSecurityGroupIds []*string `json:"sourceSecurityGroupIds,omitempty" tf:"source_security_group_ids,omitempty"`
}

func (*RemoteAccessInitParameters) DeepCopy

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

func (*RemoteAccessInitParameters) DeepCopyInto

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

type RemoteAccessObservation

type RemoteAccessObservation struct {

	// EC2 Key Pair name that provides access for remote communication with the worker nodes in the EKS Node Group. If you specify this configuration, but do not specify source_security_group_ids when you create an EKS Node Group, either port 3389 for Windows, or port 22 for all other operating systems is opened on the worker nodes to the Internet (0.0.0.0/0). For Windows nodes, this will allow you to use RDP, for all others this allows you to SSH into the worker nodes.
	EC2SSHKey *string `json:"ec2SshKey,omitempty" tf:"ec2_ssh_key,omitempty"`

	// Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes. If you specify ec2_ssh_key, but do not specify this configuration when you create an EKS Node Group, port 22 on the worker nodes is opened to the Internet (0.0.0.0/0).
	// +listType=set
	SourceSecurityGroupIds []*string `json:"sourceSecurityGroupIds,omitempty" tf:"source_security_group_ids,omitempty"`
}

func (*RemoteAccessObservation) DeepCopy

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

func (*RemoteAccessObservation) DeepCopyInto

func (in *RemoteAccessObservation) DeepCopyInto(out *RemoteAccessObservation)

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

type RemoteAccessParameters

type RemoteAccessParameters struct {

	// EC2 Key Pair name that provides access for remote communication with the worker nodes in the EKS Node Group. If you specify this configuration, but do not specify source_security_group_ids when you create an EKS Node Group, either port 3389 for Windows, or port 22 for all other operating systems is opened on the worker nodes to the Internet (0.0.0.0/0). For Windows nodes, this will allow you to use RDP, for all others this allows you to SSH into the worker nodes.
	// +kubebuilder:validation:Optional
	EC2SSHKey *string `json:"ec2SshKey,omitempty" tf:"ec2_ssh_key,omitempty"`

	// References to SecurityGroup in ec2 to populate sourceSecurityGroupIds.
	// +kubebuilder:validation:Optional
	SourceSecurityGroupIDRefs []v1.Reference `json:"sourceSecurityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in ec2 to populate sourceSecurityGroupIds.
	// +kubebuilder:validation:Optional
	SourceSecurityGroupIDSelector *v1.Selector `json:"sourceSecurityGroupIdSelector,omitempty" tf:"-"`

	// Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes. If you specify ec2_ssh_key, but do not specify this configuration when you create an EKS Node Group, port 22 on the worker nodes is opened to the Internet (0.0.0.0/0).
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SourceSecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SourceSecurityGroupIDSelector
	// +kubebuilder:validation:Optional
	// +listType=set
	SourceSecurityGroupIds []*string `json:"sourceSecurityGroupIds,omitempty" tf:"source_security_group_ids,omitempty"`
}

func (*RemoteAccessParameters) DeepCopy

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

func (*RemoteAccessParameters) DeepCopyInto

func (in *RemoteAccessParameters) DeepCopyInto(out *RemoteAccessParameters)

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

type ResourcesInitParameters

type ResourcesInitParameters struct {
}

func (*ResourcesInitParameters) DeepCopy

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

func (*ResourcesInitParameters) DeepCopyInto

func (in *ResourcesInitParameters) DeepCopyInto(out *ResourcesInitParameters)

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

type ResourcesObservation

type ResourcesObservation struct {

	// List of objects containing information about AutoScaling Groups.
	AutoscalingGroups []AutoscalingGroupsObservation `json:"autoscalingGroups,omitempty" tf:"autoscaling_groups,omitempty"`

	// Identifier of the remote access EC2 Security Group.
	RemoteAccessSecurityGroupID *string `json:"remoteAccessSecurityGroupId,omitempty" tf:"remote_access_security_group_id,omitempty"`
}

func (*ResourcesObservation) DeepCopy

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

func (*ResourcesObservation) DeepCopyInto

func (in *ResourcesObservation) DeepCopyInto(out *ResourcesObservation)

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

type ResourcesParameters

type ResourcesParameters struct {
}

func (*ResourcesParameters) DeepCopy

func (in *ResourcesParameters) DeepCopy() *ResourcesParameters

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

func (*ResourcesParameters) DeepCopyInto

func (in *ResourcesParameters) DeepCopyInto(out *ResourcesParameters)

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

type ScalingConfigInitParameters

type ScalingConfigInitParameters struct {

	// Desired number of worker nodes.
	DesiredSize *float64 `json:"desiredSize,omitempty" tf:"desired_size,omitempty"`

	// Maximum number of worker nodes.
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// Minimum number of worker nodes.
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`
}

func (*ScalingConfigInitParameters) DeepCopy

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

func (*ScalingConfigInitParameters) DeepCopyInto

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

type ScalingConfigObservation

type ScalingConfigObservation struct {

	// Desired number of worker nodes.
	DesiredSize *float64 `json:"desiredSize,omitempty" tf:"desired_size,omitempty"`

	// Maximum number of worker nodes.
	MaxSize *float64 `json:"maxSize,omitempty" tf:"max_size,omitempty"`

	// Minimum number of worker nodes.
	MinSize *float64 `json:"minSize,omitempty" tf:"min_size,omitempty"`
}

func (*ScalingConfigObservation) DeepCopy

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

func (*ScalingConfigObservation) DeepCopyInto

func (in *ScalingConfigObservation) DeepCopyInto(out *ScalingConfigObservation)

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

type ScalingConfigParameters

type ScalingConfigParameters struct {

	// Desired number of worker nodes.
	// +kubebuilder:validation:Optional
	DesiredSize *float64 `json:"desiredSize" tf:"desired_size,omitempty"`

	// Maximum number of worker nodes.
	// +kubebuilder:validation:Optional
	MaxSize *float64 `json:"maxSize" tf:"max_size,omitempty"`

	// Minimum number of worker nodes.
	// +kubebuilder:validation:Optional
	MinSize *float64 `json:"minSize" tf:"min_size,omitempty"`
}

func (*ScalingConfigParameters) DeepCopy

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

func (*ScalingConfigParameters) DeepCopyInto

func (in *ScalingConfigParameters) DeepCopyInto(out *ScalingConfigParameters)

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

type TaintInitParameters

type TaintInitParameters struct {

	// The effect of the taint. Valid values: NO_SCHEDULE, NO_EXECUTE, PREFER_NO_SCHEDULE.
	Effect *string `json:"effect,omitempty" tf:"effect,omitempty"`

	// The key of the taint. Maximum length of 63.
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// The value of the taint. Maximum length of 63.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*TaintInitParameters) DeepCopy

func (in *TaintInitParameters) DeepCopy() *TaintInitParameters

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

func (*TaintInitParameters) DeepCopyInto

func (in *TaintInitParameters) DeepCopyInto(out *TaintInitParameters)

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

type TaintObservation

type TaintObservation struct {

	// The effect of the taint. Valid values: NO_SCHEDULE, NO_EXECUTE, PREFER_NO_SCHEDULE.
	Effect *string `json:"effect,omitempty" tf:"effect,omitempty"`

	// The key of the taint. Maximum length of 63.
	Key *string `json:"key,omitempty" tf:"key,omitempty"`

	// The value of the taint. Maximum length of 63.
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*TaintObservation) DeepCopy

func (in *TaintObservation) DeepCopy() *TaintObservation

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

func (*TaintObservation) DeepCopyInto

func (in *TaintObservation) DeepCopyInto(out *TaintObservation)

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

type TaintParameters

type TaintParameters struct {

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

	// The key of the taint. Maximum length of 63.
	// +kubebuilder:validation:Optional
	Key *string `json:"key" tf:"key,omitempty"`

	// The value of the taint. Maximum length of 63.
	// +kubebuilder:validation:Optional
	Value *string `json:"value,omitempty" tf:"value,omitempty"`
}

func (*TaintParameters) DeepCopy

func (in *TaintParameters) DeepCopy() *TaintParameters

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

func (*TaintParameters) DeepCopyInto

func (in *TaintParameters) DeepCopyInto(out *TaintParameters)

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

type UpdateConfigInitParameters

type UpdateConfigInitParameters struct {

	// Desired max number of unavailable worker nodes during node group update.
	MaxUnavailable *float64 `json:"maxUnavailable,omitempty" tf:"max_unavailable,omitempty"`

	// Desired max percentage of unavailable worker nodes during node group update.
	MaxUnavailablePercentage *float64 `json:"maxUnavailablePercentage,omitempty" tf:"max_unavailable_percentage,omitempty"`
}

func (*UpdateConfigInitParameters) DeepCopy

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

func (*UpdateConfigInitParameters) DeepCopyInto

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

type UpdateConfigObservation

type UpdateConfigObservation struct {

	// Desired max number of unavailable worker nodes during node group update.
	MaxUnavailable *float64 `json:"maxUnavailable,omitempty" tf:"max_unavailable,omitempty"`

	// Desired max percentage of unavailable worker nodes during node group update.
	MaxUnavailablePercentage *float64 `json:"maxUnavailablePercentage,omitempty" tf:"max_unavailable_percentage,omitempty"`
}

func (*UpdateConfigObservation) DeepCopy

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

func (*UpdateConfigObservation) DeepCopyInto

func (in *UpdateConfigObservation) DeepCopyInto(out *UpdateConfigObservation)

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

type UpdateConfigParameters

type UpdateConfigParameters struct {

	// Desired max number of unavailable worker nodes during node group update.
	// +kubebuilder:validation:Optional
	MaxUnavailable *float64 `json:"maxUnavailable,omitempty" tf:"max_unavailable,omitempty"`

	// Desired max percentage of unavailable worker nodes during node group update.
	// +kubebuilder:validation:Optional
	MaxUnavailablePercentage *float64 `json:"maxUnavailablePercentage,omitempty" tf:"max_unavailable_percentage,omitempty"`
}

func (*UpdateConfigParameters) DeepCopy

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

func (*UpdateConfigParameters) DeepCopyInto

func (in *UpdateConfigParameters) DeepCopyInto(out *UpdateConfigParameters)

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

type VPCConfigInitParameters

type VPCConfigInitParameters struct {

	// Whether the Amazon EKS private API server endpoint is enabled. Default is false.
	EndpointPrivateAccess *bool `json:"endpointPrivateAccess,omitempty" tf:"endpoint_private_access,omitempty"`

	// Whether the Amazon EKS public API server endpoint is enabled. Default is true.
	EndpointPublicAccess *bool `json:"endpointPublicAccess,omitempty" tf:"endpoint_public_access,omitempty"`

	// List of CIDR blocks. Indicates which CIDR blocks can access the Amazon EKS public API server endpoint when enabled. EKS defaults this to a list with 0.0.0.0/0.
	// +listType=set
	PublicAccessCidrs []*string `json:"publicAccessCidrs,omitempty" tf:"public_access_cidrs,omitempty"`

	// References to SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDRefs []v1.Reference `json:"securityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDSelector *v1.Selector `json:"securityGroupIdSelector,omitempty" tf:"-"`

	// account elastic network interfaces that Amazon EKS creates to use to allow communication between your worker nodes and the Kubernetes control plane.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SecurityGroupIDSelector
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// References to Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDRefs []v1.Reference `json:"subnetIdRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// account elastic network interfaces in these subnets to allow communication between your worker nodes and the Kubernetes control plane.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:refFieldName=SubnetIDRefs
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`
}

func (*VPCConfigInitParameters) DeepCopy

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

func (*VPCConfigInitParameters) DeepCopyInto

func (in *VPCConfigInitParameters) DeepCopyInto(out *VPCConfigInitParameters)

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

type VPCConfigObservation

type VPCConfigObservation struct {

	// Cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control-plane-to-data-plane communication.
	ClusterSecurityGroupID *string `json:"clusterSecurityGroupId,omitempty" tf:"cluster_security_group_id,omitempty"`

	// Whether the Amazon EKS private API server endpoint is enabled. Default is false.
	EndpointPrivateAccess *bool `json:"endpointPrivateAccess,omitempty" tf:"endpoint_private_access,omitempty"`

	// Whether the Amazon EKS public API server endpoint is enabled. Default is true.
	EndpointPublicAccess *bool `json:"endpointPublicAccess,omitempty" tf:"endpoint_public_access,omitempty"`

	// List of CIDR blocks. Indicates which CIDR blocks can access the Amazon EKS public API server endpoint when enabled. EKS defaults this to a list with 0.0.0.0/0.
	// +listType=set
	PublicAccessCidrs []*string `json:"publicAccessCidrs,omitempty" tf:"public_access_cidrs,omitempty"`

	// account elastic network interfaces that Amazon EKS creates to use to allow communication between your worker nodes and the Kubernetes control plane.
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// account elastic network interfaces in these subnets to allow communication between your worker nodes and the Kubernetes control plane.
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`

	// ID of the VPC associated with your cluster.
	VPCID *string `json:"vpcId,omitempty" tf:"vpc_id,omitempty"`
}

func (*VPCConfigObservation) DeepCopy

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

func (*VPCConfigObservation) DeepCopyInto

func (in *VPCConfigObservation) DeepCopyInto(out *VPCConfigObservation)

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

type VPCConfigParameters

type VPCConfigParameters struct {

	// Whether the Amazon EKS private API server endpoint is enabled. Default is false.
	// +kubebuilder:validation:Optional
	EndpointPrivateAccess *bool `json:"endpointPrivateAccess,omitempty" tf:"endpoint_private_access,omitempty"`

	// Whether the Amazon EKS public API server endpoint is enabled. Default is true.
	// +kubebuilder:validation:Optional
	EndpointPublicAccess *bool `json:"endpointPublicAccess,omitempty" tf:"endpoint_public_access,omitempty"`

	// List of CIDR blocks. Indicates which CIDR blocks can access the Amazon EKS public API server endpoint when enabled. EKS defaults this to a list with 0.0.0.0/0.
	// +kubebuilder:validation:Optional
	// +listType=set
	PublicAccessCidrs []*string `json:"publicAccessCidrs,omitempty" tf:"public_access_cidrs,omitempty"`

	// References to SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDRefs []v1.Reference `json:"securityGroupIdRefs,omitempty" tf:"-"`

	// Selector for a list of SecurityGroup in ec2 to populate securityGroupIds.
	// +kubebuilder:validation:Optional
	SecurityGroupIDSelector *v1.Selector `json:"securityGroupIdSelector,omitempty" tf:"-"`

	// account elastic network interfaces that Amazon EKS creates to use to allow communication between your worker nodes and the Kubernetes control plane.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.SecurityGroup
	// +crossplane:generate:reference:refFieldName=SecurityGroupIDRefs
	// +crossplane:generate:reference:selectorFieldName=SecurityGroupIDSelector
	// +kubebuilder:validation:Optional
	// +listType=set
	SecurityGroupIds []*string `json:"securityGroupIds,omitempty" tf:"security_group_ids,omitempty"`

	// References to Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDRefs []v1.Reference `json:"subnetIdRefs,omitempty" tf:"-"`

	// Selector for a list of Subnet in ec2 to populate subnetIds.
	// +kubebuilder:validation:Optional
	SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"`

	// account elastic network interfaces in these subnets to allow communication between your worker nodes and the Kubernetes control plane.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/ec2/v1beta1.Subnet
	// +crossplane:generate:reference:refFieldName=SubnetIDRefs
	// +crossplane:generate:reference:selectorFieldName=SubnetIDSelector
	// +kubebuilder:validation:Optional
	// +listType=set
	SubnetIds []*string `json:"subnetIds,omitempty" tf:"subnet_ids,omitempty"`
}

func (*VPCConfigParameters) DeepCopy

func (in *VPCConfigParameters) DeepCopy() *VPCConfigParameters

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

func (*VPCConfigParameters) DeepCopyInto

func (in *VPCConfigParameters) DeepCopyInto(out *VPCConfigParameters)

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