v1alpha1

package
v1.5.1 Latest Latest
Warning

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

Go to latest
Published: Oct 11, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

+k8s:deepcopy-gen=package Package v1alpha1 is the v1alpha1 version of the eks.services.k8s.aws API. +groupName=eks.services.k8s.aws

Index

Constants

View Source
const (
	// DesiredSizeManagedByExternalAutoscaler is the value of the DesiredSizeManagedByAnnotation
	// annotation that indicates that the desired size of a nodegroup is managed by an external
	// autoscaler.
	DesiredSizeManagedByExternalAutoscaler = "external-autoscaler"
	// DesiredSizeManagedByACKController is the value of the DesiredSizeManagedByAnnotation
	// annotation that indicates that the desired size of a nodegroup is managed by the ACK
	// controller.
	DesiredSizeManagedByACKController = "ack-eks-controller"
)

Variables

View Source
var (
	// DesiredSizeManagedByAnnotation is the annotation key used to set the management style for the
	// desired size of a nodegroup scaling configuration. This annotation can only be set on a
	// nodegroup custom resource.
	//
	// The value of this annotation must be one of the following:
	//
	// - 'external-autoscaler': The desired size is managed by an external entity. Causing the
	//                          controller to completly ignore the `scalingConfig.desiredSize` field
	// 						    and not reconcile the desired size of a nodegroup.
	//
	// - 'ack-eks-controller':  The desired size is managed by the ACK controller. Causing the
	//                          controller to reconcile the desired size of the nodegroup with the
	//                          value of the `spec.scalingConfig.desiredSize` field.
	//
	// By default the desired size is managed by the controller. If the annotation is not set, or
	// the value is not one of the above, the controller will default to managing the desired size
	// as if the annotation was set to "controller".
	DesiredSizeManagedByAnnotation = fmt.Sprintf("%s/desired-size-managed-by", GroupVersion.Group)
	// ForceNodeGroupUpdateVersionAnnotation is the annotation key used to force an update of the
	// nodegroup version. This annotation can only be set on a nodegroup custom resource.
	// The value of this annotation must be a boolean value. If the value is "true", the controller
	// will force an update of the nodegroup version to the value specified in the `version` field
	// of the `spec` object. If the value is "false", the controller will not force an update of the
	// nodegroup version.
	ForceNodeGroupUpdateVersionAnnotation = fmt.Sprintf("%s/force-update-version", GroupVersion.Group)
)
View Source
var (
	// GroupVersion is the API Group Version used to register the objects
	GroupVersion = schema.GroupVersion{Group: "eks.services.k8s.aws", Version: "v1alpha1"}

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type AMITypes

type AMITypes string
const (
	AMITypes_AL2_x86_64                 AMITypes = "AL2_x86_64"
	AMITypes_AL2_x86_64_GPU             AMITypes = "AL2_x86_64_GPU"
	AMITypes_AL2_ARM_64                 AMITypes = "AL2_ARM_64"
	AMITypes_CUSTOM                     AMITypes = "CUSTOM"
	AMITypes_BOTTLEROCKET_ARM_64        AMITypes = "BOTTLEROCKET_ARM_64"
	AMITypes_BOTTLEROCKET_x86_64        AMITypes = "BOTTLEROCKET_x86_64"
	AMITypes_BOTTLEROCKET_ARM_64_NVIDIA AMITypes = "BOTTLEROCKET_ARM_64_NVIDIA"
	AMITypes_BOTTLEROCKET_x86_64_NVIDIA AMITypes = "BOTTLEROCKET_x86_64_NVIDIA"
	AMITypes_WINDOWS_CORE_2019_x86_64   AMITypes = "WINDOWS_CORE_2019_x86_64"
	AMITypes_WINDOWS_FULL_2019_x86_64   AMITypes = "WINDOWS_FULL_2019_x86_64"
	AMITypes_WINDOWS_CORE_2022_x86_64   AMITypes = "WINDOWS_CORE_2022_x86_64"
	AMITypes_WINDOWS_FULL_2022_x86_64   AMITypes = "WINDOWS_FULL_2022_x86_64"
	AMITypes_AL2023_x86_64_STANDARD     AMITypes = "AL2023_x86_64_STANDARD"
	AMITypes_AL2023_ARM_64_STANDARD     AMITypes = "AL2023_ARM_64_STANDARD"
)

type AccessConfigResponse added in v1.1.3

type AccessConfigResponse struct {
	AuthenticationMode                      *string `json:"authenticationMode,omitempty"`
	BootstrapClusterCreatorAdminPermissions *bool   `json:"bootstrapClusterCreatorAdminPermissions,omitempty"`
}

The access configuration for the cluster.

func (*AccessConfigResponse) DeepCopy added in v1.1.3

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

func (*AccessConfigResponse) DeepCopyInto added in v1.1.3

func (in *AccessConfigResponse) DeepCopyInto(out *AccessConfigResponse)

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

type AccessEntry added in v1.1.3

type AccessEntry struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AccessEntrySpec   `json:"spec,omitempty"`
	Status            AccessEntryStatus `json:"status,omitempty"`
}

AccessEntry is the Schema for the AccessEntries API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="CLUSTER",type=string,priority=0,JSONPath=`.spec.clusterName` +kubebuilder:printcolumn:name="TYPE",type=string,priority=0,JSONPath=`.spec.type` +kubebuilder:printcolumn:name="USERNAME",type=string,priority=0,JSONPath=`.spec.username` +kubebuilder:printcolumn:name="PRINCIPALARN",type=string,priority=1,JSONPath=`.spec.principalARN` +kubebuilder:printcolumn:name="Synced",type="string",priority=0,JSONPath=".status.conditions[?(@.type==\"ACK.ResourceSynced\")].status" +kubebuilder:printcolumn:name="Age",type="date",priority=0,JSONPath=".metadata.creationTimestamp"

func (*AccessEntry) DeepCopy added in v1.1.3

func (in *AccessEntry) DeepCopy() *AccessEntry

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

func (*AccessEntry) DeepCopyInto added in v1.1.3

func (in *AccessEntry) DeepCopyInto(out *AccessEntry)

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

func (*AccessEntry) DeepCopyObject added in v1.2.0

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

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

type AccessEntryList added in v1.2.0

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

AccessEntryList contains a list of AccessEntry +kubebuilder:object:root=true

func (*AccessEntryList) DeepCopy added in v1.2.0

func (in *AccessEntryList) DeepCopy() *AccessEntryList

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

func (*AccessEntryList) DeepCopyInto added in v1.2.0

func (in *AccessEntryList) DeepCopyInto(out *AccessEntryList)

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

func (*AccessEntryList) DeepCopyObject added in v1.2.0

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

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

type AccessEntrySpec added in v1.2.0

type AccessEntrySpec struct {
	AccessPolicies []*AssociateAccessPolicyInput `json:"accessPolicies,omitempty"`
	// The name of your cluster.
	ClusterName *string                                  `json:"clusterName,omitempty"`
	ClusterRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"clusterRef,omitempty"`
	// The value for name that you've specified for kind: Group as a subject in
	// a Kubernetes RoleBinding or ClusterRoleBinding object. Amazon EKS doesn't
	// confirm that the value for name exists in any bindings on your cluster. You
	// can specify one or more names.
	//
	// Kubernetes authorizes the principalArn of the access entry to access any
	// cluster objects that you've specified in a Kubernetes Role or ClusterRole
	// object that is also specified in a binding's roleRef. For more information
	// about creating Kubernetes RoleBinding, ClusterRoleBinding, Role, or ClusterRole
	// objects, see Using RBAC Authorization in the Kubernetes documentation (https://kubernetes.io/docs/reference/access-authn-authz/rbac/).
	//
	// If you want Amazon EKS to authorize the principalArn (instead of, or in addition
	// to Kubernetes authorizing the principalArn), you can associate one or more
	// access policies to the access entry using AssociateAccessPolicy. If you associate
	// any access policies, the principalARN has all permissions assigned in the
	// associated access policies and all permissions in any Kubernetes Role or
	// ClusterRole objects that the group names are bound to.
	KubernetesGroups []*string `json:"kubernetesGroups,omitempty"`
	// The ARN of the IAM principal for the AccessEntry. You can specify one ARN
	// for each access entry. You can't specify the same ARN in more than one access
	// entry. This value can't be changed after access entry creation.
	//
	// The valid principals differ depending on the type of the access entry in
	// the type field. The only valid ARN is IAM roles for the types of access entries
	// for nodes: . You can use every IAM principal type for STANDARD access entries.
	// You can't use the STS session principal type with access entries because
	// this is a temporary principal for each session and not a permanent identity
	// that can be assigned permissions.
	//
	// IAM best practices (https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp)
	// recommend using IAM roles with temporary credentials, rather than IAM users
	// with long-term credentials.
	// +kubebuilder:validation:Required
	PrincipalARN *string `json:"principalARN"`
	// Metadata that assists with categorization and organization. Each tag consists
	// of a key and an optional value. You define both. Tags don't propagate to
	// any other cluster or Amazon Web Services resources.
	Tags map[string]*string `json:"tags,omitempty"`
	// The type of the new access entry. Valid values are Standard, FARGATE_LINUX,
	// EC2_LINUX, and EC2_WINDOWS.
	//
	// If the principalArn is for an IAM role that's used for self-managed Amazon
	// EC2 nodes, specify EC2_LINUX or EC2_WINDOWS. Amazon EKS grants the necessary
	// permissions to the node for you. If the principalArn is for any other purpose,
	// specify STANDARD. If you don't specify a value, Amazon EKS sets the value
	// to STANDARD. It's unnecessary to create access entries for IAM roles used
	// with Fargate profiles or managed Amazon EC2 nodes, because Amazon EKS creates
	// entries in the aws-auth ConfigMap for the roles. You can't change this value
	// once you've created the access entry.
	//
	// If you set the value to EC2_LINUX or EC2_WINDOWS, you can't specify values
	// for kubernetesGroups, or associate an AccessPolicy to the access entry.
	Type *string `json:"type,omitempty"`
	// The username to authenticate to Kubernetes with. We recommend not specifying
	// a username and letting Amazon EKS specify it for you. For more information
	// about the value Amazon EKS specifies for you, or constraints before specifying
	// your own username, see Creating access entries (https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html#creating-access-entries)
	// in the Amazon EKS User Guide.
	Username *string `json:"username,omitempty"`
}

AccessEntrySpec defines the desired state of AccessEntry.

An access entry allows an IAM principal (user or role) to access your cluster. Access entries can replace the need to maintain the aws-auth ConfigMap for authentication. For more information about access entries, see Access entries (https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html) in the Amazon EKS User Guide.

func (*AccessEntrySpec) DeepCopy added in v1.2.0

func (in *AccessEntrySpec) DeepCopy() *AccessEntrySpec

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

func (*AccessEntrySpec) DeepCopyInto added in v1.2.0

func (in *AccessEntrySpec) DeepCopyInto(out *AccessEntrySpec)

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

type AccessEntryStatus added in v1.2.0

type AccessEntryStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// The Unix epoch timestamp at object creation.
	// +kubebuilder:validation:Optional
	CreatedAt *metav1.Time `json:"createdAt,omitempty"`
	// The Unix epoch timestamp for the last modification to the object.
	// +kubebuilder:validation:Optional
	ModifiedAt *metav1.Time `json:"modifiedAt,omitempty"`
}

AccessEntryStatus defines the observed state of AccessEntry

func (*AccessEntryStatus) DeepCopy added in v1.2.0

func (in *AccessEntryStatus) DeepCopy() *AccessEntryStatus

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

func (*AccessEntryStatus) DeepCopyInto added in v1.2.0

func (in *AccessEntryStatus) DeepCopyInto(out *AccessEntryStatus)

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

type AccessEntry_SDK added in v1.2.0

type AccessEntry_SDK struct {
	AccessEntryARN   *string      `json:"accessEntryARN,omitempty"`
	ClusterName      *string      `json:"clusterName,omitempty"`
	CreatedAt        *metav1.Time `json:"createdAt,omitempty"`
	KubernetesGroups []*string    `json:"kubernetesGroups,omitempty"`
	ModifiedAt       *metav1.Time `json:"modifiedAt,omitempty"`
	PrincipalARN     *string      `json:"principalARN,omitempty"`
	// The metadata that you apply to a resource to help you categorize and organize
	// them. Each tag consists of a key and an optional value. You define them.
	//
	// The following basic restrictions apply to tags:
	//
	//    * Maximum number of tags per resource – 50
	//
	//    * For each resource, each tag key must be unique, and each tag key can
	//    have only one value.
	//
	//    * Maximum key length – 128 Unicode characters in UTF-8
	//
	//    * Maximum value length – 256 Unicode characters in UTF-8
	//
	//    * If your tagging schema is used across multiple services and resources,
	//    remember that other services may have restrictions on allowed characters.
	//    Generally allowed characters are: letters, numbers, and spaces representable
	//    in UTF-8, and the following characters: + - = . _ : / @.
	//
	//    * Tag keys and values are case-sensitive.
	//
	//    * Do not use aws:, AWS:, or any upper or lowercase combination of such
	//    as a prefix for either keys or values as it is reserved for Amazon Web
	//    Services use. You cannot edit or delete tag keys or values with this prefix.
	//    Tags with this prefix do not count against your tags per resource limit.
	Tags     map[string]*string `json:"tags,omitempty"`
	Type     *string            `json:"type_,omitempty"`
	Username *string            `json:"username,omitempty"`
}

An access entry allows an IAM principal (user or role) to access your cluster. Access entries can replace the need to maintain the aws-auth ConfigMap for authentication. For more information about access entries, see Access entries (https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html) in the Amazon EKS User Guide.

func (*AccessEntry_SDK) DeepCopy added in v1.2.0

func (in *AccessEntry_SDK) DeepCopy() *AccessEntry_SDK

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

func (*AccessEntry_SDK) DeepCopyInto added in v1.2.0

func (in *AccessEntry_SDK) DeepCopyInto(out *AccessEntry_SDK)

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

type AccessPolicy added in v1.1.3

type AccessPolicy struct {
	ARN  *string `json:"arn,omitempty"`
	Name *string `json:"name,omitempty"`
}

An access policy includes permissions that allow Amazon EKS to authorize an IAM principal to work with Kubernetes objects on your cluster. The policies are managed by Amazon EKS, but they're not IAM policies. You can't view the permissions in the policies using the API. The permissions for many of the policies are similar to the Kubernetes cluster-admin, admin, edit, and view cluster roles. For more information about these cluster roles, see User-facing roles (https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles) in the Kubernetes documentation. To view the contents of the policies, see Access policy permissions (https://docs.aws.amazon.com/eks/latest/userguide/access-policies.html#access-policy-permissions) in the Amazon EKS User Guide.

func (*AccessPolicy) DeepCopy added in v1.1.3

func (in *AccessPolicy) DeepCopy() *AccessPolicy

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

func (*AccessPolicy) DeepCopyInto added in v1.1.3

func (in *AccessPolicy) DeepCopyInto(out *AccessPolicy)

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

type AccessScope added in v1.1.3

type AccessScope struct {
	Namespaces []*string `json:"namespaces,omitempty"`
	Type       *string   `json:"type,omitempty"`
}

The scope of an AccessPolicy that's associated to an AccessEntry.

func (*AccessScope) DeepCopy added in v1.1.3

func (in *AccessScope) DeepCopy() *AccessScope

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

func (*AccessScope) DeepCopyInto added in v1.1.3

func (in *AccessScope) DeepCopyInto(out *AccessScope)

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

type AccessScopeType added in v1.1.3

type AccessScopeType string
const (
	AccessScopeType_cluster   AccessScopeType = "cluster"
	AccessScopeType_namespace AccessScopeType = "namespace"
)

type Addon

type Addon struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AddonSpec   `json:"spec,omitempty"`
	Status            AddonStatus `json:"status,omitempty"`
}

Addon is the Schema for the Addons API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="CLUSTER",type=string,priority=0,JSONPath=`.spec.clusterName` +kubebuilder:printcolumn:name="ADDONVERSION",type=string,priority=0,JSONPath=`.spec.addonVersion` +kubebuilder:printcolumn:name="RESOLVECONFLICTS",type=string,priority=0,JSONPath=`.spec.resolveConflicts` +kubebuilder:printcolumn:name="STATUS",type=string,priority=1,JSONPath=`.status.status` +kubebuilder:printcolumn:name="SERVICEACCOUNTROLEARN",type=string,priority=1,JSONPath=`.spec.serviceAccountRoleARN` +kubebuilder:printcolumn:name="Synced",type="string",priority=0,JSONPath=".status.conditions[?(@.type==\"ACK.ResourceSynced\")].status" +kubebuilder:printcolumn:name="Age",type="date",priority=0,JSONPath=".metadata.creationTimestamp"

func (*Addon) DeepCopy

func (in *Addon) DeepCopy() *Addon

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

func (*Addon) DeepCopyInto

func (in *Addon) DeepCopyInto(out *Addon)

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

func (*Addon) DeepCopyObject

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

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

type AddonHealth

type AddonHealth struct {
	Issues []*AddonIssue `json:"issues,omitempty"`
}

The health of the add-on.

func (*AddonHealth) DeepCopy

func (in *AddonHealth) DeepCopy() *AddonHealth

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

func (*AddonHealth) DeepCopyInto

func (in *AddonHealth) DeepCopyInto(out *AddonHealth)

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

type AddonInfo

type AddonInfo struct {
	AddonName *string `json:"addonName,omitempty"`
	// Information about an Amazon EKS add-on from the Amazon Web Services Marketplace.
	MarketplaceInformation *MarketplaceInformation `json:"marketplaceInformation,omitempty"`
	Owner                  *string                 `json:"owner,omitempty"`
	Publisher              *string                 `json:"publisher,omitempty"`
	Type                   *string                 `json:"type_,omitempty"`
}

Information about an add-on.

func (*AddonInfo) DeepCopy

func (in *AddonInfo) DeepCopy() *AddonInfo

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

func (*AddonInfo) DeepCopyInto

func (in *AddonInfo) DeepCopyInto(out *AddonInfo)

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

type AddonIssue

type AddonIssue struct {
	Code        *string   `json:"code,omitempty"`
	Message     *string   `json:"message,omitempty"`
	ResourceIDs []*string `json:"resourceIDs,omitempty"`
}

An issue related to an add-on.

func (*AddonIssue) DeepCopy

func (in *AddonIssue) DeepCopy() *AddonIssue

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

func (*AddonIssue) DeepCopyInto

func (in *AddonIssue) DeepCopyInto(out *AddonIssue)

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

type AddonIssueCode

type AddonIssueCode string
const (
	AddonIssueCode_AccessDenied                 AddonIssueCode = "AccessDenied"
	AddonIssueCode_InternalFailure              AddonIssueCode = "InternalFailure"
	AddonIssueCode_ClusterUnreachable           AddonIssueCode = "ClusterUnreachable"
	AddonIssueCode_InsufficientNumberOfReplicas AddonIssueCode = "InsufficientNumberOfReplicas"
	AddonIssueCode_ConfigurationConflict        AddonIssueCode = "ConfigurationConflict"
	AddonIssueCode_AdmissionRequestDenied       AddonIssueCode = "AdmissionRequestDenied"
	AddonIssueCode_UnsupportedAddonModification AddonIssueCode = "UnsupportedAddonModification"
	AddonIssueCode_K8sResourceNotFound          AddonIssueCode = "K8sResourceNotFound"
	AddonIssueCode_AddonSubscriptionNeeded      AddonIssueCode = "AddonSubscriptionNeeded"
	AddonIssueCode_AddonPermissionFailure       AddonIssueCode = "AddonPermissionFailure"
)

type AddonList

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

AddonList contains a list of Addon +kubebuilder:object:root=true

func (*AddonList) DeepCopy

func (in *AddonList) DeepCopy() *AddonList

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

func (*AddonList) DeepCopyInto

func (in *AddonList) DeepCopyInto(out *AddonList)

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

func (*AddonList) DeepCopyObject

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

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

type AddonPodIdentityAssociations added in v1.5.0

type AddonPodIdentityAssociations struct {
	RoleARN        *string `json:"roleARN,omitempty"`
	ServiceAccount *string `json:"serviceAccount,omitempty"`
}

A type of Pod Identity Association owned by an Amazon EKS Add-on.

Each EKS Pod Identity Association maps a role to a service account in a namespace in the cluster.

For more information, see Attach an IAM Role to an Amazon EKS add-on using Pod Identity (https://docs.aws.amazon.com/eks/latest/userguide/add-ons-iam.html) in the EKS User Guide.

func (*AddonPodIdentityAssociations) DeepCopy added in v1.5.0

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

func (*AddonPodIdentityAssociations) DeepCopyInto added in v1.5.0

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

type AddonPodIdentityConfiguration added in v1.5.0

type AddonPodIdentityConfiguration struct {
	RecommendedManagedPolicies []*string `json:"recommendedManagedPolicies,omitempty"`
	ServiceAccount             *string   `json:"serviceAccount,omitempty"`
}

Information about how to configure IAM for an Addon.

func (*AddonPodIdentityConfiguration) DeepCopy added in v1.5.0

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

func (*AddonPodIdentityConfiguration) DeepCopyInto added in v1.5.0

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

type AddonSpec

type AddonSpec struct {

	// The version of the add-on. The version must match one of the versions returned
	// by DescribeAddonVersions (https://docs.aws.amazon.com/eks/latest/APIReference/API_DescribeAddonVersions.html).
	AddonVersion *string `json:"addonVersion,omitempty"`
	// A unique, case-sensitive identifier that you provide to ensure the idempotency
	// of the request.
	ClientRequestToken *string `json:"clientRequestToken,omitempty"`
	// The name of your cluster.
	ClusterName *string                                  `json:"clusterName,omitempty"`
	ClusterRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"clusterRef,omitempty"`
	// The set of configuration values for the add-on that's created. The values
	// that you provide are validated against the schema returned by DescribeAddonConfiguration.
	ConfigurationValues *string `json:"configurationValues,omitempty"`
	// The name of the add-on. The name must match one of the names returned by
	// DescribeAddonVersions.
	// +kubebuilder:validation:Required
	Name *string `json:"name"`
	// An array of Pod Identity Assocations to be created. Each EKS Pod Identity
	// association maps a Kubernetes service account to an IAM Role.
	//
	// For more information, see Attach an IAM Role to an Amazon EKS add-on using
	// Pod Identity (https://docs.aws.amazon.com/eks/latest/userguide/add-ons-iam.html)
	// in the EKS User Guide.
	PodIdentityAssociations []*AddonPodIdentityAssociations `json:"podIdentityAssociations,omitempty"`
	// How to resolve field value conflicts for an Amazon EKS add-on. Conflicts
	// are handled based on the value you choose:
	//
	//   - None – If the self-managed version of the add-on is installed on your
	//     cluster, Amazon EKS doesn't change the value. Creation of the add-on might
	//     fail.
	//
	//   - Overwrite – If the self-managed version of the add-on is installed
	//     on your cluster and the Amazon EKS default value is different than the
	//     existing value, Amazon EKS changes the value to the Amazon EKS default
	//     value.
	//
	//   - Preserve – This is similar to the NONE option. If the self-managed
	//     version of the add-on is installed on your cluster Amazon EKS doesn't
	//     change the add-on resource properties. Creation of the add-on might fail
	//     if conflicts are detected. This option works differently during the update
	//     operation. For more information, see UpdateAddon (https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html).
	//
	// If you don't currently have the self-managed version of the add-on installed
	// on your cluster, the Amazon EKS add-on is installed. Amazon EKS sets all
	// values to default values, regardless of the option that you specify.
	ResolveConflicts *string `json:"resolveConflicts,omitempty"`
	// The Amazon Resource Name (ARN) of an existing IAM role to bind to the add-on's
	// service account. The role must be assigned the IAM permissions required by
	// the add-on. If you don't specify an existing IAM role, then the add-on uses
	// the permissions assigned to the node IAM role. For more information, see
	// Amazon EKS node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html)
	// in the Amazon EKS User Guide.
	//
	// To specify an existing IAM role, you must have an IAM OpenID Connect (OIDC)
	// provider created for your cluster. For more information, see Enabling IAM
	// roles for service accounts on your cluster (https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html)
	// in the Amazon EKS User Guide.
	ServiceAccountRoleARN *string                                  `json:"serviceAccountRoleARN,omitempty"`
	ServiceAccountRoleRef *ackv1alpha1.AWSResourceReferenceWrapper `json:"serviceAccountRoleRef,omitempty"`
	// Metadata that assists with categorization and organization. Each tag consists
	// of a key and an optional value. You define both. Tags don't propagate to
	// any other cluster or Amazon Web Services resources.
	Tags map[string]*string `json:"tags,omitempty"`
}

AddonSpec defines the desired state of Addon.

An Amazon EKS add-on. For more information, see Amazon EKS add-ons (https://docs.aws.amazon.com/eks/latest/userguide/eks-add-ons.html) in the Amazon EKS User Guide.

func (*AddonSpec) DeepCopy

func (in *AddonSpec) DeepCopy() *AddonSpec

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

func (*AddonSpec) DeepCopyInto

func (in *AddonSpec) DeepCopyInto(out *AddonSpec)

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

type AddonStatus

type AddonStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// The Unix epoch timestamp at object creation.
	// +kubebuilder:validation:Optional
	CreatedAt *metav1.Time `json:"createdAt,omitempty"`
	// An object that represents the health of the add-on.
	// +kubebuilder:validation:Optional
	Health *AddonHealth `json:"health,omitempty"`
	// Information about an Amazon EKS add-on from the Amazon Web Services Marketplace.
	// +kubebuilder:validation:Optional
	MarketplaceInformation *MarketplaceInformation `json:"marketplaceInformation,omitempty"`
	// The Unix epoch timestamp for the last modification to the object.
	// +kubebuilder:validation:Optional
	ModifiedAt *metav1.Time `json:"modifiedAt,omitempty"`
	// The owner of the add-on.
	// +kubebuilder:validation:Optional
	Owner *string `json:"owner,omitempty"`
	// The publisher of the add-on.
	// +kubebuilder:validation:Optional
	Publisher *string `json:"publisher,omitempty"`
	// The status of the add-on.
	// +kubebuilder:validation:Optional
	Status *string `json:"status,omitempty"`
}

AddonStatus defines the observed state of Addon

func (*AddonStatus) DeepCopy

func (in *AddonStatus) DeepCopy() *AddonStatus

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

func (*AddonStatus) DeepCopyInto

func (in *AddonStatus) DeepCopyInto(out *AddonStatus)

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

type AddonStatus_SDK

type AddonStatus_SDK string
const (
	AddonStatus_SDK_CREATING      AddonStatus_SDK = "CREATING"
	AddonStatus_SDK_ACTIVE        AddonStatus_SDK = "ACTIVE"
	AddonStatus_SDK_CREATE_FAILED AddonStatus_SDK = "CREATE_FAILED"
	AddonStatus_SDK_UPDATING      AddonStatus_SDK = "UPDATING"
	AddonStatus_SDK_DELETING      AddonStatus_SDK = "DELETING"
	AddonStatus_SDK_DELETE_FAILED AddonStatus_SDK = "DELETE_FAILED"
	AddonStatus_SDK_DEGRADED      AddonStatus_SDK = "DEGRADED"
	AddonStatus_SDK_UPDATE_FAILED AddonStatus_SDK = "UPDATE_FAILED"
)

type AddonVersionInfo

type AddonVersionInfo struct {
	AddonVersion           *string   `json:"addonVersion,omitempty"`
	Architecture           []*string `json:"architecture,omitempty"`
	RequiresConfiguration  *bool     `json:"requiresConfiguration,omitempty"`
	RequiresIAMPermissions *bool     `json:"requiresIAMPermissions,omitempty"`
}

Information about an add-on version.

func (*AddonVersionInfo) DeepCopy

func (in *AddonVersionInfo) DeepCopy() *AddonVersionInfo

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

func (*AddonVersionInfo) DeepCopyInto

func (in *AddonVersionInfo) DeepCopyInto(out *AddonVersionInfo)

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

type Addon_SDK

type Addon_SDK struct {
	AddonARN            *string      `json:"addonARN,omitempty"`
	AddonName           *string      `json:"addonName,omitempty"`
	AddonVersion        *string      `json:"addonVersion,omitempty"`
	ClusterName         *string      `json:"clusterName,omitempty"`
	ConfigurationValues *string      `json:"configurationValues,omitempty"`
	CreatedAt           *metav1.Time `json:"createdAt,omitempty"`
	// The health of the add-on.
	Health *AddonHealth `json:"health,omitempty"`
	// Information about an Amazon EKS add-on from the Amazon Web Services Marketplace.
	MarketplaceInformation  *MarketplaceInformation `json:"marketplaceInformation,omitempty"`
	ModifiedAt              *metav1.Time            `json:"modifiedAt,omitempty"`
	Owner                   *string                 `json:"owner,omitempty"`
	PodIdentityAssociations []*string               `json:"podIdentityAssociations,omitempty"`
	Publisher               *string                 `json:"publisher,omitempty"`
	ServiceAccountRoleARN   *string                 `json:"serviceAccountRoleARN,omitempty"`
	Status                  *string                 `json:"status,omitempty"`
	// The metadata that you apply to a resource to help you categorize and organize
	// them. Each tag consists of a key and an optional value. You define them.
	//
	// The following basic restrictions apply to tags:
	//
	//    * Maximum number of tags per resource – 50
	//
	//    * For each resource, each tag key must be unique, and each tag key can
	//    have only one value.
	//
	//    * Maximum key length – 128 Unicode characters in UTF-8
	//
	//    * Maximum value length – 256 Unicode characters in UTF-8
	//
	//    * If your tagging schema is used across multiple services and resources,
	//    remember that other services may have restrictions on allowed characters.
	//    Generally allowed characters are: letters, numbers, and spaces representable
	//    in UTF-8, and the following characters: + - = . _ : / @.
	//
	//    * Tag keys and values are case-sensitive.
	//
	//    * Do not use aws:, AWS:, or any upper or lowercase combination of such
	//    as a prefix for either keys or values as it is reserved for Amazon Web
	//    Services use. You cannot edit or delete tag keys or values with this prefix.
	//    Tags with this prefix do not count against your tags per resource limit.
	Tags map[string]*string `json:"tags,omitempty"`
}

An Amazon EKS add-on. For more information, see Amazon EKS add-ons (https://docs.aws.amazon.com/eks/latest/userguide/eks-add-ons.html) in the Amazon EKS User Guide.

func (*Addon_SDK) DeepCopy

func (in *Addon_SDK) DeepCopy() *Addon_SDK

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

func (*Addon_SDK) DeepCopyInto

func (in *Addon_SDK) DeepCopyInto(out *Addon_SDK)

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

type AssociateAccessPolicyInput added in v1.2.0

type AssociateAccessPolicyInput struct {
	// The scope of an AccessPolicy that's associated to an AccessEntry.
	AccessScope *AccessScope `json:"accessScope,omitempty"`
	PolicyARN   *string      `json:"policyARN,omitempty"`
}

func (*AssociateAccessPolicyInput) DeepCopy added in v1.2.0

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

func (*AssociateAccessPolicyInput) DeepCopyInto added in v1.2.0

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

type AssociatedAccessPolicy added in v1.1.3

type AssociatedAccessPolicy struct {
	// The scope of an AccessPolicy that's associated to an AccessEntry.
	AccessScope  *AccessScope `json:"accessScope,omitempty"`
	AssociatedAt *metav1.Time `json:"associatedAt,omitempty"`
	ModifiedAt   *metav1.Time `json:"modifiedAt,omitempty"`
	PolicyARN    *string      `json:"policyARN,omitempty"`
}

An access policy association.

func (*AssociatedAccessPolicy) DeepCopy added in v1.1.3

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

func (*AssociatedAccessPolicy) DeepCopyInto added in v1.1.3

func (in *AssociatedAccessPolicy) DeepCopyInto(out *AssociatedAccessPolicy)

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

type AuthenticationMode added in v1.1.3

type AuthenticationMode string
const (
	AuthenticationMode_API                AuthenticationMode = "API"
	AuthenticationMode_API_AND_CONFIG_MAP AuthenticationMode = "API_AND_CONFIG_MAP"
	AuthenticationMode_CONFIG_MAP         AuthenticationMode = "CONFIG_MAP"
)

type AutoScalingGroup

type AutoScalingGroup struct {
	Name *string `json:"name,omitempty"`
}

An Auto Scaling group that is associated with an Amazon EKS managed node group.

func (*AutoScalingGroup) DeepCopy

func (in *AutoScalingGroup) DeepCopy() *AutoScalingGroup

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

func (*AutoScalingGroup) DeepCopyInto

func (in *AutoScalingGroup) DeepCopyInto(out *AutoScalingGroup)

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

type CapacityTypes

type CapacityTypes string
const (
	CapacityTypes_ON_DEMAND      CapacityTypes = "ON_DEMAND"
	CapacityTypes_SPOT           CapacityTypes = "SPOT"
	CapacityTypes_CAPACITY_BLOCK CapacityTypes = "CAPACITY_BLOCK"
)

type Category added in v1.1.3

type Category string
const (
	Category_UPGRADE_READINESS Category = "UPGRADE_READINESS"
)

type Certificate

type Certificate struct {
	Data *string `json:"data,omitempty"`
}

An object representing the certificate-authority-data for your cluster.

func (*Certificate) DeepCopy

func (in *Certificate) DeepCopy() *Certificate

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

func (*Certificate) DeepCopyInto

func (in *Certificate) DeepCopyInto(out *Certificate)

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

type ClientStat added in v1.1.3

type ClientStat struct {
	LastRequestTime *metav1.Time `json:"lastRequestTime,omitempty"`
	UserAgent       *string      `json:"userAgent,omitempty"`
}

Details about clients using the deprecated resources.

func (*ClientStat) DeepCopy added in v1.1.3

func (in *ClientStat) DeepCopy() *ClientStat

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

func (*ClientStat) DeepCopyInto added in v1.1.3

func (in *ClientStat) DeepCopyInto(out *ClientStat)

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"`
	Spec              ClusterSpec   `json:"spec,omitempty"`
	Status            ClusterStatus `json:"status,omitempty"`
}

Cluster is the Schema for the Clusters API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="VERSION",type=string,priority=0,JSONPath=`.spec.version` +kubebuilder:printcolumn:name="STATUS",type=string,priority=0,JSONPath=`.status.status` +kubebuilder:printcolumn:name="PLATFORMVERSION",type=string,priority=1,JSONPath=`.status.platformVersion` +kubebuilder:printcolumn:name="ENDPOINT",type=string,priority=1,JSONPath=`.status.endpoint` +kubebuilder:printcolumn:name="Synced",type="string",priority=0,JSONPath=".status.conditions[?(@.type==\"ACK.ResourceSynced\")].status" +kubebuilder:printcolumn:name="Age",type="date",priority=0,JSONPath=".metadata.creationTimestamp"

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.

type ClusterHealth added in v1.0.1

type ClusterHealth struct {
	Issues []*ClusterIssue `json:"issues,omitempty"`
}

An object representing the health of your Amazon EKS cluster.

func (*ClusterHealth) DeepCopy added in v1.0.1

func (in *ClusterHealth) DeepCopy() *ClusterHealth

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

func (*ClusterHealth) DeepCopyInto added in v1.0.1

func (in *ClusterHealth) DeepCopyInto(out *ClusterHealth)

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

type ClusterIssue added in v1.0.1

type ClusterIssue struct {
	Code        *string   `json:"code,omitempty"`
	Message     *string   `json:"message,omitempty"`
	ResourceIDs []*string `json:"resourceIDs,omitempty"`
}

An issue with your Amazon EKS cluster.

func (*ClusterIssue) DeepCopy added in v1.0.1

func (in *ClusterIssue) DeepCopy() *ClusterIssue

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

func (*ClusterIssue) DeepCopyInto added in v1.0.1

func (in *ClusterIssue) DeepCopyInto(out *ClusterIssue)

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

type ClusterIssueCode added in v1.0.1

type ClusterIssueCode string
const (
	ClusterIssueCode_AccessDenied                ClusterIssueCode = "AccessDenied"
	ClusterIssueCode_ClusterUnreachable          ClusterIssueCode = "ClusterUnreachable"
	ClusterIssueCode_ConfigurationConflict       ClusterIssueCode = "ConfigurationConflict"
	ClusterIssueCode_InternalFailure             ClusterIssueCode = "InternalFailure"
	ClusterIssueCode_ResourceLimitExceeded       ClusterIssueCode = "ResourceLimitExceeded"
	ClusterIssueCode_ResourceNotFound            ClusterIssueCode = "ResourceNotFound"
	ClusterIssueCode_IamRoleNotFound             ClusterIssueCode = "IamRoleNotFound"
	ClusterIssueCode_VpcNotFound                 ClusterIssueCode = "VpcNotFound"
	ClusterIssueCode_InsufficientFreeAddresses   ClusterIssueCode = "InsufficientFreeAddresses"
	ClusterIssueCode_Ec2ServiceNotSubscribed     ClusterIssueCode = "Ec2ServiceNotSubscribed"
	ClusterIssueCode_Ec2SubnetNotFound           ClusterIssueCode = "Ec2SubnetNotFound"
	ClusterIssueCode_Ec2SecurityGroupNotFound    ClusterIssueCode = "Ec2SecurityGroupNotFound"
	ClusterIssueCode_KmsGrantRevoked             ClusterIssueCode = "KmsGrantRevoked"
	ClusterIssueCode_KmsKeyNotFound              ClusterIssueCode = "KmsKeyNotFound"
	ClusterIssueCode_KmsKeyMarkedForDeletion     ClusterIssueCode = "KmsKeyMarkedForDeletion"
	ClusterIssueCode_KmsKeyDisabled              ClusterIssueCode = "KmsKeyDisabled"
	ClusterIssueCode_StsRegionalEndpointDisabled ClusterIssueCode = "StsRegionalEndpointDisabled"
	ClusterIssueCode_UnsupportedVersion          ClusterIssueCode = "UnsupportedVersion"
	ClusterIssueCode_Other                       ClusterIssueCode = "Other"
)

type ClusterList

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

ClusterList contains a list of Cluster +kubebuilder:object:root=true

func (*ClusterList) DeepCopy

func (in *ClusterList) DeepCopy() *ClusterList

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

func (*ClusterList) DeepCopyInto

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

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

func (*ClusterList) DeepCopyObject

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

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

type ClusterSpec

type ClusterSpec struct {

	// The access configuration for the cluster.
	AccessConfig *CreateAccessConfigRequest `json:"accessConfig,omitempty"`
	// If you set this value to False when creating a cluster, the default networking
	// add-ons will not be installed.
	//
	// The default networking addons include vpc-cni, coredns, and kube-proxy.
	//
	// Use this option when you plan to install third-party alternative add-ons
	// or self-manage the default networking add-ons.
	BootstrapSelfManagedAddons *bool `json:"bootstrapSelfManagedAddons,omitempty"`
	// A unique, case-sensitive identifier that you provide to ensure the idempotency
	// of the request.
	ClientRequestToken *string `json:"clientRequestToken,omitempty"`
	// The encryption configuration for the cluster.
	EncryptionConfig []*EncryptionConfig `json:"encryptionConfig,omitempty"`
	// The Kubernetes network configuration for the cluster.
	KubernetesNetworkConfig *KubernetesNetworkConfigRequest `json:"kubernetesNetworkConfig,omitempty"`
	// Enable or disable exporting the Kubernetes control plane logs for your cluster
	// to CloudWatch Logs. By default, cluster control plane logs aren't exported
	// to CloudWatch Logs. For more information, see Amazon EKS Cluster control
	// plane logs (https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html)
	// in the Amazon EKS User Guide .
	//
	// CloudWatch Logs ingestion, archive storage, and data scanning rates apply
	// to exported control plane logs. For more information, see CloudWatch Pricing
	// (http://aws.amazon.com/cloudwatch/pricing/).
	Logging *Logging `json:"logging,omitempty"`
	// The unique name to give to your cluster.
	// +kubebuilder:validation:Required
	Name *string `json:"name"`
	// An object representing the configuration of your local Amazon EKS cluster
	// on an Amazon Web Services Outpost. Before creating a local cluster on an
	// Outpost, review Local clusters for Amazon EKS on Amazon Web Services Outposts
	// (https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-local-cluster-overview.html)
	// in the Amazon EKS User Guide. This object isn't available for creating Amazon
	// EKS clusters on the Amazon Web Services cloud.
	OutpostConfig *OutpostConfigRequest `json:"outpostConfig,omitempty"`
	// The VPC configuration that's used by the cluster control plane. Amazon EKS
	// VPC resources have specific requirements to work properly with Kubernetes.
	// For more information, see Cluster VPC Considerations (https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html)
	// and Cluster Security Group Considerations (https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html)
	// in the Amazon EKS User Guide. You must specify at least two subnets. You
	// can specify up to five security groups. However, we recommend that you use
	// a dedicated security group for your cluster control plane.
	// +kubebuilder:validation:Required
	ResourcesVPCConfig *VPCConfigRequest `json:"resourcesVPCConfig"`
	// The Amazon Resource Name (ARN) of the IAM role that provides permissions
	// for the Kubernetes control plane to make calls to Amazon Web Services API
	// operations on your behalf. For more information, see Amazon EKS Service IAM
	// Role (https://docs.aws.amazon.com/eks/latest/userguide/service_IAM_role.html)
	// in the Amazon EKS User Guide .
	RoleARN *string                                  `json:"roleARN,omitempty"`
	RoleRef *ackv1alpha1.AWSResourceReferenceWrapper `json:"roleRef,omitempty"`
	// Metadata that assists with categorization and organization. Each tag consists
	// of a key and an optional value. You define both. Tags don't propagate to
	// any other cluster or Amazon Web Services resources.
	Tags map[string]*string `json:"tags,omitempty"`
	// New clusters, by default, have extended support enabled. You can disable
	// extended support when creating a cluster by setting this value to STANDARD.
	UpgradePolicy *UpgradePolicyRequest `json:"upgradePolicy,omitempty"`
	// The desired Kubernetes version for your cluster. If you don't specify a value
	// here, the default version available in Amazon EKS is used.
	//
	// The default version might not be the latest version available.
	Version *string `json:"version,omitempty"`
}

ClusterSpec defines the desired state of Cluster.

An object representing an Amazon EKS 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 {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// The certificate-authority-data for your cluster.
	// +kubebuilder:validation:Optional
	CertificateAuthority *Certificate `json:"certificateAuthority,omitempty"`
	// The configuration used to connect to a cluster for registration.
	// +kubebuilder:validation:Optional
	ConnectorConfig *ConnectorConfigResponse `json:"connectorConfig,omitempty"`
	// The Unix epoch timestamp at object creation.
	// +kubebuilder:validation:Optional
	CreatedAt *metav1.Time `json:"createdAt,omitempty"`
	// The endpoint for your Kubernetes API server.
	// +kubebuilder:validation:Optional
	Endpoint *string `json:"endpoint,omitempty"`
	// An object representing the health of your Amazon EKS cluster.
	// +kubebuilder:validation:Optional
	Health *ClusterHealth `json:"health,omitempty"`
	// The ID of your local Amazon EKS cluster on an Amazon Web Services Outpost.
	// This property isn't available for an Amazon EKS cluster on the Amazon Web
	// Services cloud.
	// +kubebuilder:validation:Optional
	ID *string `json:"id,omitempty"`
	// The identity provider information for the cluster.
	// +kubebuilder:validation:Optional
	Identity *Identity `json:"identity,omitempty"`
	// The platform version of your Amazon EKS cluster. For more information about
	// clusters deployed on the Amazon Web Services Cloud, see Platform versions
	// (https://docs.aws.amazon.com/eks/latest/userguide/platform-versions.html)
	// in the Amazon EKS User Guide . For more information about local clusters
	// deployed on an Outpost, see Amazon EKS local cluster platform versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-platform-versions.html)
	// in the Amazon EKS User Guide .
	// +kubebuilder:validation:Optional
	PlatformVersion *string `json:"platformVersion,omitempty"`
	// The current status of the cluster.
	// +kubebuilder:validation:Optional
	Status *string `json:"status,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 ClusterStatus_SDK

type ClusterStatus_SDK string
const (
	ClusterStatus_SDK_CREATING ClusterStatus_SDK = "CREATING"
	ClusterStatus_SDK_ACTIVE   ClusterStatus_SDK = "ACTIVE"
	ClusterStatus_SDK_DELETING ClusterStatus_SDK = "DELETING"
	ClusterStatus_SDK_FAILED   ClusterStatus_SDK = "FAILED"
	ClusterStatus_SDK_UPDATING ClusterStatus_SDK = "UPDATING"
	ClusterStatus_SDK_PENDING  ClusterStatus_SDK = "PENDING"
)

type Cluster_SDK

type Cluster_SDK struct {
	// The access configuration for the cluster.
	AccessConfig *AccessConfigResponse `json:"accessConfig,omitempty"`
	ARN          *string               `json:"arn,omitempty"`
	// An object representing the certificate-authority-data for your cluster.
	CertificateAuthority *Certificate `json:"certificateAuthority,omitempty"`
	ClientRequestToken   *string      `json:"clientRequestToken,omitempty"`
	// The full description of your connected cluster.
	ConnectorConfig  *ConnectorConfigResponse `json:"connectorConfig,omitempty"`
	CreatedAt        *metav1.Time             `json:"createdAt,omitempty"`
	EncryptionConfig []*EncryptionConfig      `json:"encryptionConfig,omitempty"`
	Endpoint         *string                  `json:"endpoint,omitempty"`
	// An object representing the health of your Amazon EKS cluster.
	Health *ClusterHealth `json:"health,omitempty"`
	ID     *string        `json:"id,omitempty"`
	// An object representing an identity provider.
	Identity *Identity `json:"identity,omitempty"`
	// The Kubernetes network configuration for the cluster. The response contains
	// a value for serviceIpv6Cidr or serviceIpv4Cidr, but not both.
	KubernetesNetworkConfig *KubernetesNetworkConfigResponse `json:"kubernetesNetworkConfig,omitempty"`
	// An object representing the logging configuration for resources in your cluster.
	Logging *Logging `json:"logging,omitempty"`
	Name    *string  `json:"name,omitempty"`
	// An object representing the configuration of your local Amazon EKS cluster
	// on an Amazon Web Services Outpost. This API isn't available for Amazon EKS
	// clusters on the Amazon Web Services cloud.
	OutpostConfig   *OutpostConfigResponse `json:"outpostConfig,omitempty"`
	PlatformVersion *string                `json:"platformVersion,omitempty"`
	// An object representing an Amazon EKS cluster VPC configuration response.
	ResourcesVPCConfig *VPCConfigResponse `json:"resourcesVPCConfig,omitempty"`
	RoleARN            *string            `json:"roleARN,omitempty"`
	Status             *string            `json:"status,omitempty"`
	// The metadata that you apply to a resource to help you categorize and organize
	// them. Each tag consists of a key and an optional value. You define them.
	//
	// The following basic restrictions apply to tags:
	//
	//    * Maximum number of tags per resource – 50
	//
	//    * For each resource, each tag key must be unique, and each tag key can
	//    have only one value.
	//
	//    * Maximum key length – 128 Unicode characters in UTF-8
	//
	//    * Maximum value length – 256 Unicode characters in UTF-8
	//
	//    * If your tagging schema is used across multiple services and resources,
	//    remember that other services may have restrictions on allowed characters.
	//    Generally allowed characters are: letters, numbers, and spaces representable
	//    in UTF-8, and the following characters: + - = . _ : / @.
	//
	//    * Tag keys and values are case-sensitive.
	//
	//    * Do not use aws:, AWS:, or any upper or lowercase combination of such
	//    as a prefix for either keys or values as it is reserved for Amazon Web
	//    Services use. You cannot edit or delete tag keys or values with this prefix.
	//    Tags with this prefix do not count against your tags per resource limit.
	Tags map[string]*string `json:"tags,omitempty"`
	// This value indicates if extended support is enabled or disabled for the cluster.
	//
	// Learn more about EKS Extended Support in the EKS User Guide. (https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html)
	UpgradePolicy *UpgradePolicyResponse `json:"upgradePolicy,omitempty"`
	Version       *string                `json:"version,omitempty"`
}

An object representing an Amazon EKS cluster.

func (*Cluster_SDK) DeepCopy

func (in *Cluster_SDK) DeepCopy() *Cluster_SDK

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

func (*Cluster_SDK) DeepCopyInto

func (in *Cluster_SDK) DeepCopyInto(out *Cluster_SDK)

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

type Compatibility

type Compatibility struct {
	ClusterVersion   *string   `json:"clusterVersion,omitempty"`
	DefaultVersion   *bool     `json:"defaultVersion,omitempty"`
	PlatformVersions []*string `json:"platformVersions,omitempty"`
}

Compatibility information.

func (*Compatibility) DeepCopy

func (in *Compatibility) DeepCopy() *Compatibility

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

func (*Compatibility) DeepCopyInto

func (in *Compatibility) DeepCopyInto(out *Compatibility)

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

type ConfigStatus

type ConfigStatus string
const (
	ConfigStatus_CREATING ConfigStatus = "CREATING"
	ConfigStatus_DELETING ConfigStatus = "DELETING"
	ConfigStatus_ACTIVE   ConfigStatus = "ACTIVE"
)

type ConnectorConfigProvider added in v0.0.6

type ConnectorConfigProvider string
const (
	ConnectorConfigProvider_EKS_ANYWHERE ConnectorConfigProvider = "EKS_ANYWHERE"
	ConnectorConfigProvider_ANTHOS       ConnectorConfigProvider = "ANTHOS"
	ConnectorConfigProvider_GKE          ConnectorConfigProvider = "GKE"
	ConnectorConfigProvider_AKS          ConnectorConfigProvider = "AKS"
	ConnectorConfigProvider_OPENSHIFT    ConnectorConfigProvider = "OPENSHIFT"
	ConnectorConfigProvider_TANZU        ConnectorConfigProvider = "TANZU"
	ConnectorConfigProvider_RANCHER      ConnectorConfigProvider = "RANCHER"
	ConnectorConfigProvider_EC2          ConnectorConfigProvider = "EC2"
	ConnectorConfigProvider_OTHER        ConnectorConfigProvider = "OTHER"
)

type ConnectorConfigRequest added in v0.0.6

type ConnectorConfigRequest struct {
	RoleARN *string `json:"roleARN,omitempty"`
}

The configuration sent to a cluster for configuration.

func (*ConnectorConfigRequest) DeepCopy added in v0.0.6

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

func (*ConnectorConfigRequest) DeepCopyInto added in v0.0.6

func (in *ConnectorConfigRequest) DeepCopyInto(out *ConnectorConfigRequest)

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

type ConnectorConfigResponse added in v0.0.6

type ConnectorConfigResponse struct {
	ActivationCode   *string      `json:"activationCode,omitempty"`
	ActivationExpiry *metav1.Time `json:"activationExpiry,omitempty"`
	ActivationID     *string      `json:"activationID,omitempty"`
	Provider         *string      `json:"provider,omitempty"`
	RoleARN          *string      `json:"roleARN,omitempty"`
}

The full description of your connected cluster.

func (*ConnectorConfigResponse) DeepCopy added in v0.0.6

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

func (*ConnectorConfigResponse) DeepCopyInto added in v0.0.6

func (in *ConnectorConfigResponse) DeepCopyInto(out *ConnectorConfigResponse)

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

type ControlPlanePlacementRequest added in v1.0.1

type ControlPlanePlacementRequest struct {
	GroupName *string `json:"groupName,omitempty"`
}

The placement configuration for all the control plane instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. For more information, see Capacity considerations (https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html) in the Amazon EKS User Guide.

func (*ControlPlanePlacementRequest) DeepCopy added in v1.0.1

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

func (*ControlPlanePlacementRequest) DeepCopyInto added in v1.0.1

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

type ControlPlanePlacementResponse added in v1.0.1

type ControlPlanePlacementResponse struct {
	GroupName *string `json:"groupName,omitempty"`
}

The placement configuration for all the control plane instances of your local Amazon EKS cluster on an Amazon Web Services Outpost. For more information, see Capacity considerations (https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html) in the Amazon EKS User Guide.

func (*ControlPlanePlacementResponse) DeepCopy added in v1.0.1

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

func (*ControlPlanePlacementResponse) DeepCopyInto added in v1.0.1

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

type CreateAccessConfigRequest added in v1.1.3

type CreateAccessConfigRequest struct {
	AuthenticationMode                      *string `json:"authenticationMode,omitempty"`
	BootstrapClusterCreatorAdminPermissions *bool   `json:"bootstrapClusterCreatorAdminPermissions,omitempty"`
}

The access configuration information for the cluster.

func (*CreateAccessConfigRequest) DeepCopy added in v1.1.3

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

func (*CreateAccessConfigRequest) DeepCopyInto added in v1.1.3

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

type DeprecationDetail added in v1.1.3

type DeprecationDetail struct {
	ReplacedWith                   *string `json:"replacedWith,omitempty"`
	StartServingReplacementVersion *string `json:"startServingReplacementVersion,omitempty"`
	StopServingVersion             *string `json:"stopServingVersion,omitempty"`
	Usage                          *string `json:"usage,omitempty"`
}

The summary information about deprecated resource usage for an insight check in the UPGRADE_READINESS category.

func (*DeprecationDetail) DeepCopy added in v1.1.3

func (in *DeprecationDetail) DeepCopy() *DeprecationDetail

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

func (*DeprecationDetail) DeepCopyInto added in v1.1.3

func (in *DeprecationDetail) DeepCopyInto(out *DeprecationDetail)

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

type EKSAnywhereSubscription added in v1.1.0

type EKSAnywhereSubscription struct {
	ARN            *string      `json:"arn,omitempty"`
	AutoRenew      *bool        `json:"autoRenew,omitempty"`
	CreatedAt      *metav1.Time `json:"createdAt,omitempty"`
	EffectiveDate  *metav1.Time `json:"effectiveDate,omitempty"`
	ExpirationDate *metav1.Time `json:"expirationDate,omitempty"`
	ID             *string      `json:"id,omitempty"`
	LicenseARNs    []*string    `json:"licenseARNs,omitempty"`
	Status         *string      `json:"status,omitempty"`
	// The metadata that you apply to a resource to help you categorize and organize
	// them. Each tag consists of a key and an optional value. You define them.
	//
	// The following basic restrictions apply to tags:
	//
	//    * Maximum number of tags per resource – 50
	//
	//    * For each resource, each tag key must be unique, and each tag key can
	//    have only one value.
	//
	//    * Maximum key length – 128 Unicode characters in UTF-8
	//
	//    * Maximum value length – 256 Unicode characters in UTF-8
	//
	//    * If your tagging schema is used across multiple services and resources,
	//    remember that other services may have restrictions on allowed characters.
	//    Generally allowed characters are: letters, numbers, and spaces representable
	//    in UTF-8, and the following characters: + - = . _ : / @.
	//
	//    * Tag keys and values are case-sensitive.
	//
	//    * Do not use aws:, AWS:, or any upper or lowercase combination of such
	//    as a prefix for either keys or values as it is reserved for Amazon Web
	//    Services use. You cannot edit or delete tag keys or values with this prefix.
	//    Tags with this prefix do not count against your tags per resource limit.
	Tags map[string]*string `json:"tags,omitempty"`
}

An EKS Anywhere subscription authorizing the customer to support for licensed clusters and access to EKS Anywhere Curated Packages.

func (*EKSAnywhereSubscription) DeepCopy added in v1.1.0

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

func (*EKSAnywhereSubscription) DeepCopyInto added in v1.1.0

func (in *EKSAnywhereSubscription) DeepCopyInto(out *EKSAnywhereSubscription)

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

type EKSAnywhereSubscriptionLicenseType added in v1.1.0

type EKSAnywhereSubscriptionLicenseType string
const (
	EKSAnywhereSubscriptionLicenseType_Cluster EKSAnywhereSubscriptionLicenseType = "Cluster"
)

type EKSAnywhereSubscriptionStatus added in v1.1.0

type EKSAnywhereSubscriptionStatus string
const (
	EKSAnywhereSubscriptionStatus_CREATING EKSAnywhereSubscriptionStatus = "CREATING"
	EKSAnywhereSubscriptionStatus_ACTIVE   EKSAnywhereSubscriptionStatus = "ACTIVE"
	EKSAnywhereSubscriptionStatus_UPDATING EKSAnywhereSubscriptionStatus = "UPDATING"
	EKSAnywhereSubscriptionStatus_EXPIRING EKSAnywhereSubscriptionStatus = "EXPIRING"
	EKSAnywhereSubscriptionStatus_EXPIRED  EKSAnywhereSubscriptionStatus = "EXPIRED"
	EKSAnywhereSubscriptionStatus_DELETING EKSAnywhereSubscriptionStatus = "DELETING"
)

type EKSAnywhereSubscriptionTermUnit added in v1.1.0

type EKSAnywhereSubscriptionTermUnit string
const (
	EKSAnywhereSubscriptionTermUnit_MONTHS EKSAnywhereSubscriptionTermUnit = "MONTHS"
)

type EncryptionConfig

type EncryptionConfig struct {
	// Identifies the Key Management Service (KMS) key used to encrypt the secrets.
	Provider  *Provider `json:"provider,omitempty"`
	Resources []*string `json:"resources,omitempty"`
}

The encryption configuration for the cluster.

func (*EncryptionConfig) DeepCopy

func (in *EncryptionConfig) DeepCopy() *EncryptionConfig

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

func (*EncryptionConfig) DeepCopyInto

func (in *EncryptionConfig) DeepCopyInto(out *EncryptionConfig)

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

type ErrorCode

type ErrorCode string
const (
	ErrorCode_SubnetNotFound               ErrorCode = "SubnetNotFound"
	ErrorCode_SecurityGroupNotFound        ErrorCode = "SecurityGroupNotFound"
	ErrorCode_EniLimitReached              ErrorCode = "EniLimitReached"
	ErrorCode_IpNotAvailable               ErrorCode = "IpNotAvailable"
	ErrorCode_AccessDenied                 ErrorCode = "AccessDenied"
	ErrorCode_OperationNotPermitted        ErrorCode = "OperationNotPermitted"
	ErrorCode_VpcIdNotFound                ErrorCode = "VpcIdNotFound"
	ErrorCode_Unknown                      ErrorCode = "Unknown"
	ErrorCode_NodeCreationFailure          ErrorCode = "NodeCreationFailure"
	ErrorCode_PodEvictionFailure           ErrorCode = "PodEvictionFailure"
	ErrorCode_InsufficientFreeAddresses    ErrorCode = "InsufficientFreeAddresses"
	ErrorCode_ClusterUnreachable           ErrorCode = "ClusterUnreachable"
	ErrorCode_InsufficientNumberOfReplicas ErrorCode = "InsufficientNumberOfReplicas"
	ErrorCode_ConfigurationConflict        ErrorCode = "ConfigurationConflict"
	ErrorCode_AdmissionRequestDenied       ErrorCode = "AdmissionRequestDenied"
	ErrorCode_UnsupportedAddonModification ErrorCode = "UnsupportedAddonModification"
	ErrorCode_K8sResourceNotFound          ErrorCode = "K8sResourceNotFound"
)

type ErrorDetail

type ErrorDetail struct {
	ErrorCode    *string   `json:"errorCode,omitempty"`
	ErrorMessage *string   `json:"errorMessage,omitempty"`
	ResourceIDs  []*string `json:"resourceIDs,omitempty"`
}

An object representing an error when an asynchronous operation fails.

func (*ErrorDetail) DeepCopy

func (in *ErrorDetail) DeepCopy() *ErrorDetail

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

func (*ErrorDetail) DeepCopyInto

func (in *ErrorDetail) DeepCopyInto(out *ErrorDetail)

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

type FargateProfile

type FargateProfile struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              FargateProfileSpec   `json:"spec,omitempty"`
	Status            FargateProfileStatus `json:"status,omitempty"`
}

FargateProfile is the Schema for the FargateProfiles API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="CLUSTER",type=string,priority=0,JSONPath=`.spec.clusterName` +kubebuilder:printcolumn:name="STATUS",type=string,priority=0,JSONPath=`.status.status` +kubebuilder:printcolumn:name="PODEXECUTIONROLEARN",type=string,priority=1,JSONPath=`.spec.podExecutionRoleARN` +kubebuilder:printcolumn:name="Synced",type="string",priority=0,JSONPath=".status.conditions[?(@.type==\"ACK.ResourceSynced\")].status" +kubebuilder:printcolumn:name="Age",type="date",priority=0,JSONPath=".metadata.creationTimestamp"

func (*FargateProfile) DeepCopy

func (in *FargateProfile) DeepCopy() *FargateProfile

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

func (*FargateProfile) DeepCopyInto

func (in *FargateProfile) DeepCopyInto(out *FargateProfile)

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

func (*FargateProfile) DeepCopyObject

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

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

type FargateProfileHealth added in v1.5.1

type FargateProfileHealth struct {
	Issues []*FargateProfileIssue `json:"issues,omitempty"`
}

The health status of the Fargate profile. If there are issues with your Fargate profile's health, they are listed here.

func (*FargateProfileHealth) DeepCopy added in v1.5.1

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

func (*FargateProfileHealth) DeepCopyInto added in v1.5.1

func (in *FargateProfileHealth) DeepCopyInto(out *FargateProfileHealth)

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

type FargateProfileIssue added in v1.5.1

type FargateProfileIssue struct {
	Code        *string   `json:"code,omitempty"`
	Message     *string   `json:"message,omitempty"`
	ResourceIDs []*string `json:"resourceIDs,omitempty"`
}

An issue that is associated with the Fargate profile.

func (*FargateProfileIssue) DeepCopy added in v1.5.1

func (in *FargateProfileIssue) DeepCopy() *FargateProfileIssue

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

func (*FargateProfileIssue) DeepCopyInto added in v1.5.1

func (in *FargateProfileIssue) DeepCopyInto(out *FargateProfileIssue)

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

type FargateProfileIssueCode added in v1.5.1

type FargateProfileIssueCode string
const (
	FargateProfileIssueCode_PodExecutionRoleAlreadyInUse FargateProfileIssueCode = "PodExecutionRoleAlreadyInUse"
	FargateProfileIssueCode_AccessDenied                 FargateProfileIssueCode = "AccessDenied"
	FargateProfileIssueCode_ClusterUnreachable           FargateProfileIssueCode = "ClusterUnreachable"
	FargateProfileIssueCode_InternalFailure              FargateProfileIssueCode = "InternalFailure"
)

type FargateProfileList

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

FargateProfileList contains a list of FargateProfile +kubebuilder:object:root=true

func (*FargateProfileList) DeepCopy

func (in *FargateProfileList) DeepCopy() *FargateProfileList

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

func (*FargateProfileList) DeepCopyInto

func (in *FargateProfileList) DeepCopyInto(out *FargateProfileList)

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

func (*FargateProfileList) DeepCopyObject

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

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

type FargateProfileSelector

type FargateProfileSelector struct {
	Labels    map[string]*string `json:"labels,omitempty"`
	Namespace *string            `json:"namespace,omitempty"`
}

An object representing an Fargate profile selector.

func (*FargateProfileSelector) DeepCopy

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

func (*FargateProfileSelector) DeepCopyInto

func (in *FargateProfileSelector) DeepCopyInto(out *FargateProfileSelector)

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

type FargateProfileSpec

type FargateProfileSpec struct {

	// A unique, case-sensitive identifier that you provide to ensure the idempotency
	// of the request.
	ClientRequestToken *string `json:"clientRequestToken,omitempty"`
	// The name of your cluster.
	ClusterName *string                                  `json:"clusterName,omitempty"`
	ClusterRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"clusterRef,omitempty"`
	// The name of the Fargate profile.
	// +kubebuilder:validation:Required
	Name *string `json:"name"`
	// The Amazon Resource Name (ARN) of the Pod execution role to use for a Pod
	// that matches the selectors in the Fargate profile. The Pod execution role
	// allows Fargate infrastructure to register with your cluster as a node, and
	// it provides read access to Amazon ECR image repositories. For more information,
	// see Pod execution role (https://docs.aws.amazon.com/eks/latest/userguide/pod-execution-role.html)
	// in the Amazon EKS User Guide.
	PodExecutionRoleARN *string                                  `json:"podExecutionRoleARN,omitempty"`
	PodExecutionRoleRef *ackv1alpha1.AWSResourceReferenceWrapper `json:"podExecutionRoleRef,omitempty"`
	// The selectors to match for a Pod to use this Fargate profile. Each selector
	// must have an associated Kubernetes namespace. Optionally, you can also specify
	// labels for a namespace. You may specify up to five selectors in a Fargate
	// profile.
	Selectors  []*FargateProfileSelector                  `json:"selectors,omitempty"`
	SubnetRefs []*ackv1alpha1.AWSResourceReferenceWrapper `json:"subnetRefs,omitempty"`
	// The IDs of subnets to launch a Pod into. A Pod running on Fargate isn't assigned
	// a public IP address, so only private subnets (with no direct route to an
	// Internet Gateway) are accepted for this parameter.
	Subnets []*string `json:"subnets,omitempty"`
	// Metadata that assists with categorization and organization. Each tag consists
	// of a key and an optional value. You define both. Tags don't propagate to
	// any other cluster or Amazon Web Services resources.
	Tags map[string]*string `json:"tags,omitempty"`
}

FargateProfileSpec defines the desired state of FargateProfile.

An object representing an Fargate profile.

func (*FargateProfileSpec) DeepCopy

func (in *FargateProfileSpec) DeepCopy() *FargateProfileSpec

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

func (*FargateProfileSpec) DeepCopyInto

func (in *FargateProfileSpec) DeepCopyInto(out *FargateProfileSpec)

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

type FargateProfileStatus

type FargateProfileStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// The Unix epoch timestamp at object creation.
	// +kubebuilder:validation:Optional
	CreatedAt *metav1.Time `json:"createdAt,omitempty"`
	// The health status of the Fargate profile. If there are issues with your Fargate
	// profile's health, they are listed here.
	// +kubebuilder:validation:Optional
	Health *FargateProfileHealth `json:"health,omitempty"`
	// The current status of the Fargate profile.
	// +kubebuilder:validation:Optional
	Status *string `json:"status,omitempty"`
}

FargateProfileStatus defines the observed state of FargateProfile

func (*FargateProfileStatus) DeepCopy

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

func (*FargateProfileStatus) DeepCopyInto

func (in *FargateProfileStatus) DeepCopyInto(out *FargateProfileStatus)

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

type FargateProfileStatus_SDK

type FargateProfileStatus_SDK string
const (
	FargateProfileStatus_SDK_CREATING      FargateProfileStatus_SDK = "CREATING"
	FargateProfileStatus_SDK_ACTIVE        FargateProfileStatus_SDK = "ACTIVE"
	FargateProfileStatus_SDK_DELETING      FargateProfileStatus_SDK = "DELETING"
	FargateProfileStatus_SDK_CREATE_FAILED FargateProfileStatus_SDK = "CREATE_FAILED"
	FargateProfileStatus_SDK_DELETE_FAILED FargateProfileStatus_SDK = "DELETE_FAILED"
)

type FargateProfile_SDK

type FargateProfile_SDK struct {
	ClusterName        *string      `json:"clusterName,omitempty"`
	CreatedAt          *metav1.Time `json:"createdAt,omitempty"`
	FargateProfileARN  *string      `json:"fargateProfileARN,omitempty"`
	FargateProfileName *string      `json:"fargateProfileName,omitempty"`
	// The health status of the Fargate profile. If there are issues with your Fargate
	// profile's health, they are listed here.
	Health              *FargateProfileHealth     `json:"health,omitempty"`
	PodExecutionRoleARN *string                   `json:"podExecutionRoleARN,omitempty"`
	Selectors           []*FargateProfileSelector `json:"selectors,omitempty"`
	Status              *string                   `json:"status,omitempty"`
	Subnets             []*string                 `json:"subnets,omitempty"`
	// The metadata that you apply to a resource to help you categorize and organize
	// them. Each tag consists of a key and an optional value. You define them.
	//
	// The following basic restrictions apply to tags:
	//
	//    * Maximum number of tags per resource – 50
	//
	//    * For each resource, each tag key must be unique, and each tag key can
	//    have only one value.
	//
	//    * Maximum key length – 128 Unicode characters in UTF-8
	//
	//    * Maximum value length – 256 Unicode characters in UTF-8
	//
	//    * If your tagging schema is used across multiple services and resources,
	//    remember that other services may have restrictions on allowed characters.
	//    Generally allowed characters are: letters, numbers, and spaces representable
	//    in UTF-8, and the following characters: + - = . _ : / @.
	//
	//    * Tag keys and values are case-sensitive.
	//
	//    * Do not use aws:, AWS:, or any upper or lowercase combination of such
	//    as a prefix for either keys or values as it is reserved for Amazon Web
	//    Services use. You cannot edit or delete tag keys or values with this prefix.
	//    Tags with this prefix do not count against your tags per resource limit.
	Tags map[string]*string `json:"tags,omitempty"`
}

An object representing an Fargate profile.

func (*FargateProfile_SDK) DeepCopy

func (in *FargateProfile_SDK) DeepCopy() *FargateProfile_SDK

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

func (*FargateProfile_SDK) DeepCopyInto

func (in *FargateProfile_SDK) DeepCopyInto(out *FargateProfile_SDK)

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

type IPFamily added in v0.1.1

type IPFamily string
const (
	IPFamily_ipv4 IPFamily = "ipv4"
	IPFamily_ipv6 IPFamily = "ipv6"
)

type Identity

type Identity struct {
	// An object representing the OpenID Connect (https://openid.net/connect/) (OIDC)
	// identity provider information for the cluster.
	OIDC *OIDC `json:"oidc,omitempty"`
}

An object representing an identity provider.

func (*Identity) DeepCopy

func (in *Identity) DeepCopy() *Identity

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

func (*Identity) DeepCopyInto

func (in *Identity) DeepCopyInto(out *Identity)

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"`
	Spec              IdentityProviderConfigSpec   `json:"spec,omitempty"`
	Status            IdentityProviderConfigStatus `json:"status,omitempty"`
}

IdentityProviderConfig is the Schema for the IdentityProviderConfigs API +kubebuilder:object:root=true +kubebuilder:subresource:status

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 added in v1.4.0

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

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

type IdentityProviderConfigList added in v1.4.0

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

IdentityProviderConfigList contains a list of IdentityProviderConfig +kubebuilder:object:root=true

func (*IdentityProviderConfigList) DeepCopy added in v1.4.0

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

func (*IdentityProviderConfigList) DeepCopyInto added in v1.4.0

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

func (*IdentityProviderConfigList) DeepCopyObject added in v1.4.0

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

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

type IdentityProviderConfigResponse added in v1.4.0

type IdentityProviderConfigResponse struct {
	// An object representing the configuration for an OpenID Connect (OIDC) identity
	// provider.
	OIDC *OIDCIdentityProviderConfig `json:"oidc,omitempty"`
}

The full description of your identity configuration.

func (*IdentityProviderConfigResponse) DeepCopy added in v1.4.0

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

func (*IdentityProviderConfigResponse) DeepCopyInto added in v1.4.0

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

type IdentityProviderConfigSpec added in v1.4.0

type IdentityProviderConfigSpec struct {

	// The name of your cluster.
	ClusterName *string                                  `json:"clusterName,omitempty"`
	ClusterRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"clusterRef,omitempty"`
	// An object representing an OpenID Connect (OIDC) identity provider configuration.
	// +kubebuilder:validation:Required
	OIDC *OIDCIdentityProviderConfigRequest `json:"oidc"`
	// Metadata that assists with categorization and organization. Each tag consists
	// of a key and an optional value. You define both. Tags don't propagate to
	// any other cluster or Amazon Web Services resources.
	Tags map[string]*string `json:"tags,omitempty"`
}

IdentityProviderConfigSpec defines the desired state of IdentityProviderConfig.

An object representing an identity provider configuration.

func (*IdentityProviderConfigSpec) DeepCopy added in v1.4.0

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

func (*IdentityProviderConfigSpec) DeepCopyInto added in v1.4.0

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

type IdentityProviderConfigStatus added in v1.4.0

type IdentityProviderConfigStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// The status of the OIDC identity provider.
	// +kubebuilder:validation:Optional
	Status *string `json:"status,omitempty"`
}

IdentityProviderConfigStatus defines the observed state of IdentityProviderConfig

func (*IdentityProviderConfigStatus) DeepCopy added in v1.4.0

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

func (*IdentityProviderConfigStatus) DeepCopyInto added in v1.4.0

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

type IdentityProviderConfig_SDK added in v1.4.0

type IdentityProviderConfig_SDK struct {
	Name *string `json:"name,omitempty"`
	Type *string `json:"type_,omitempty"`
}

An object representing an identity provider configuration.

func (*IdentityProviderConfig_SDK) DeepCopy added in v1.4.0

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

func (*IdentityProviderConfig_SDK) DeepCopyInto added in v1.4.0

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

type Insight added in v1.1.3

type Insight struct {
	Description        *string      `json:"description,omitempty"`
	ID                 *string      `json:"id,omitempty"`
	KubernetesVersion  *string      `json:"kubernetesVersion,omitempty"`
	LastRefreshTime    *metav1.Time `json:"lastRefreshTime,omitempty"`
	LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"`
	Name               *string      `json:"name,omitempty"`
	Recommendation     *string      `json:"recommendation,omitempty"`
}

A check that provides recommendations to remedy potential upgrade-impacting issues.

func (*Insight) DeepCopy added in v1.1.3

func (in *Insight) DeepCopy() *Insight

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

func (*Insight) DeepCopyInto added in v1.1.3

func (in *Insight) DeepCopyInto(out *Insight)

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

type InsightResourceDetail added in v1.1.3

type InsightResourceDetail struct {
	ARN                   *string `json:"arn,omitempty"`
	KubernetesResourceURI *string `json:"kubernetesResourceURI,omitempty"`
}

Returns information about the resource being evaluated.

func (*InsightResourceDetail) DeepCopy added in v1.1.3

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

func (*InsightResourceDetail) DeepCopyInto added in v1.1.3

func (in *InsightResourceDetail) DeepCopyInto(out *InsightResourceDetail)

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

type InsightStatus added in v1.1.3

type InsightStatus struct {
	Reason *string `json:"reason,omitempty"`
}

The status of the insight.

func (*InsightStatus) DeepCopy added in v1.1.3

func (in *InsightStatus) DeepCopy() *InsightStatus

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

func (*InsightStatus) DeepCopyInto added in v1.1.3

func (in *InsightStatus) DeepCopyInto(out *InsightStatus)

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

type InsightStatusValue added in v1.1.3

type InsightStatusValue string
const (
	InsightStatusValue_PASSING InsightStatusValue = "PASSING"
	InsightStatusValue_WARNING InsightStatusValue = "WARNING"
	InsightStatusValue_ERROR   InsightStatusValue = "ERROR"
	InsightStatusValue_UNKNOWN InsightStatusValue = "UNKNOWN"
)

type InsightSummary added in v1.1.3

type InsightSummary struct {
	Description        *string      `json:"description,omitempty"`
	ID                 *string      `json:"id,omitempty"`
	KubernetesVersion  *string      `json:"kubernetesVersion,omitempty"`
	LastRefreshTime    *metav1.Time `json:"lastRefreshTime,omitempty"`
	LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"`
	Name               *string      `json:"name,omitempty"`
}

The summarized description of the insight.

func (*InsightSummary) DeepCopy added in v1.1.3

func (in *InsightSummary) DeepCopy() *InsightSummary

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

func (*InsightSummary) DeepCopyInto added in v1.1.3

func (in *InsightSummary) DeepCopyInto(out *InsightSummary)

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

type InsightsFilter added in v1.1.3

type InsightsFilter struct {
	KubernetesVersions []*string `json:"kubernetesVersions,omitempty"`
}

The criteria to use for the insights.

func (*InsightsFilter) DeepCopy added in v1.1.3

func (in *InsightsFilter) DeepCopy() *InsightsFilter

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

func (*InsightsFilter) DeepCopyInto added in v1.1.3

func (in *InsightsFilter) DeepCopyInto(out *InsightsFilter)

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

type Issue

type Issue struct {
	Code        *string   `json:"code,omitempty"`
	Message     *string   `json:"message,omitempty"`
	ResourceIDs []*string `json:"resourceIDs,omitempty"`
}

An object representing an issue with an Amazon EKS resource.

func (*Issue) DeepCopy

func (in *Issue) DeepCopy() *Issue

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

func (*Issue) DeepCopyInto

func (in *Issue) DeepCopyInto(out *Issue)

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

type KubernetesNetworkConfigRequest

type KubernetesNetworkConfigRequest struct {
	IPFamily        *string `json:"ipFamily,omitempty"`
	ServiceIPv4CIDR *string `json:"serviceIPv4CIDR,omitempty"`
}

The Kubernetes network configuration for the cluster.

func (*KubernetesNetworkConfigRequest) DeepCopy

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

func (*KubernetesNetworkConfigRequest) DeepCopyInto

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

type KubernetesNetworkConfigResponse

type KubernetesNetworkConfigResponse struct {
	IPFamily        *string `json:"ipFamily,omitempty"`
	ServiceIPv4CIDR *string `json:"serviceIPv4CIDR,omitempty"`
	ServiceIPv6CIDR *string `json:"serviceIPv6CIDR,omitempty"`
}

The Kubernetes network configuration for the cluster. The response contains a value for serviceIpv6Cidr or serviceIpv4Cidr, but not both.

func (*KubernetesNetworkConfigResponse) DeepCopy

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

func (*KubernetesNetworkConfigResponse) DeepCopyInto

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

type LaunchTemplateSpecification

type LaunchTemplateSpecification struct {
	ID      *string `json:"id,omitempty"`
	Name    *string `json:"name,omitempty"`
	Version *string `json:"version,omitempty"`
}

An object representing a node group launch template specification. The launch template can't include SubnetId (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html), IamInstanceProfile (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IamInstanceProfile.html), RequestSpotInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html), HibernationOptions (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_HibernationOptionsRequest.html), or TerminateInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_TerminateInstances.html), or the node group deployment or update will fail. For more information about launch templates, see CreateLaunchTemplate (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplate.html) in the Amazon EC2 API Reference. For more information about using launch templates with Amazon EKS, see Customizing managed nodes with launch templates (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html) in the Amazon EKS User Guide.

You must specify either the launch template ID or the launch template name in the request, but not both.

func (*LaunchTemplateSpecification) DeepCopy

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

func (*LaunchTemplateSpecification) DeepCopyInto

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

type LogSetup

type LogSetup struct {
	Enabled *bool     `json:"enabled,omitempty"`
	Types   []*string `json:"types,omitempty"`
}

An object representing the enabled or disabled Kubernetes control plane logs for your cluster.

func (*LogSetup) DeepCopy

func (in *LogSetup) DeepCopy() *LogSetup

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

func (*LogSetup) DeepCopyInto

func (in *LogSetup) DeepCopyInto(out *LogSetup)

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

type LogType

type LogType string
const (
	LogType_api               LogType = "api"
	LogType_audit             LogType = "audit"
	LogType_authenticator     LogType = "authenticator"
	LogType_controllerManager LogType = "controllerManager"
	LogType_scheduler         LogType = "scheduler"
)

type Logging

type Logging struct {
	ClusterLogging []*LogSetup `json:"clusterLogging,omitempty"`
}

An object representing the logging configuration for resources in your cluster.

func (*Logging) DeepCopy

func (in *Logging) DeepCopy() *Logging

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

func (*Logging) DeepCopyInto

func (in *Logging) DeepCopyInto(out *Logging)

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

type MarketplaceInformation added in v1.0.1

type MarketplaceInformation struct {
	ProductID  *string `json:"productID,omitempty"`
	ProductURL *string `json:"productURL,omitempty"`
}

Information about an Amazon EKS add-on from the Amazon Web Services Marketplace.

func (*MarketplaceInformation) DeepCopy added in v1.0.1

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

func (*MarketplaceInformation) DeepCopyInto added in v1.0.1

func (in *MarketplaceInformation) DeepCopyInto(out *MarketplaceInformation)

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"`
	Spec              NodegroupSpec   `json:"spec,omitempty"`
	Status            NodegroupStatus `json:"status,omitempty"`
}

Nodegroup is the Schema for the Nodegroups API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="CLUSTER",type=string,priority=0,JSONPath=`.spec.clusterName` +kubebuilder:printcolumn:name="VERSION",type=string,priority=0,JSONPath=`.spec.version` +kubebuilder:printcolumn:name="STATUS",type=string,priority=0,JSONPath=`.status.status` +kubebuilder:printcolumn:name="RELEASEVERSION",type=string,priority=1,JSONPath=`.spec.releaseVersion` +kubebuilder:printcolumn:name="DESIREDSIZE",type=integer,priority=0,JSONPath=`.spec.scalingConfig.desiredSize` +kubebuilder:printcolumn:name="MINSIZE",type=integer,priority=0,JSONPath=`.spec.scalingConfig.minSize` +kubebuilder:printcolumn:name="MAXSIZE",type=integer,priority=0,JSONPath=`.spec.scalingConfig.maxSize` +kubebuilder:printcolumn:name="DISKSIZE",type=integer,priority=1,JSONPath=`.spec.diskSize` +kubebuilder:printcolumn:name="Synced",type="string",priority=0,JSONPath=".status.conditions[?(@.type==\"ACK.ResourceSynced\")].status" +kubebuilder:printcolumn:name="Age",type="date",priority=0,JSONPath=".metadata.creationTimestamp"

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.

type NodegroupHealth

type NodegroupHealth struct {
	Issues []*Issue `json:"issues,omitempty"`
}

An object representing the health status of the node group.

func (*NodegroupHealth) DeepCopy

func (in *NodegroupHealth) DeepCopy() *NodegroupHealth

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

func (*NodegroupHealth) DeepCopyInto

func (in *NodegroupHealth) DeepCopyInto(out *NodegroupHealth)

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

type NodegroupIssueCode

type NodegroupIssueCode string
const (
	NodegroupIssueCode_AutoScalingGroupNotFound                 NodegroupIssueCode = "AutoScalingGroupNotFound"
	NodegroupIssueCode_AutoScalingGroupInvalidConfiguration     NodegroupIssueCode = "AutoScalingGroupInvalidConfiguration"
	NodegroupIssueCode_Ec2SecurityGroupNotFound                 NodegroupIssueCode = "Ec2SecurityGroupNotFound"
	NodegroupIssueCode_Ec2SecurityGroupDeletionFailure          NodegroupIssueCode = "Ec2SecurityGroupDeletionFailure"
	NodegroupIssueCode_Ec2LaunchTemplateNotFound                NodegroupIssueCode = "Ec2LaunchTemplateNotFound"
	NodegroupIssueCode_Ec2LaunchTemplateVersionMismatch         NodegroupIssueCode = "Ec2LaunchTemplateVersionMismatch"
	NodegroupIssueCode_Ec2SubnetNotFound                        NodegroupIssueCode = "Ec2SubnetNotFound"
	NodegroupIssueCode_Ec2SubnetInvalidConfiguration            NodegroupIssueCode = "Ec2SubnetInvalidConfiguration"
	NodegroupIssueCode_IamInstanceProfileNotFound               NodegroupIssueCode = "IamInstanceProfileNotFound"
	NodegroupIssueCode_Ec2SubnetMissingIpv6Assignment           NodegroupIssueCode = "Ec2SubnetMissingIpv6Assignment"
	NodegroupIssueCode_IamLimitExceeded                         NodegroupIssueCode = "IamLimitExceeded"
	NodegroupIssueCode_IamNodeRoleNotFound                      NodegroupIssueCode = "IamNodeRoleNotFound"
	NodegroupIssueCode_NodeCreationFailure                      NodegroupIssueCode = "NodeCreationFailure"
	NodegroupIssueCode_AsgInstanceLaunchFailures                NodegroupIssueCode = "AsgInstanceLaunchFailures"
	NodegroupIssueCode_InstanceLimitExceeded                    NodegroupIssueCode = "InstanceLimitExceeded"
	NodegroupIssueCode_InsufficientFreeAddresses                NodegroupIssueCode = "InsufficientFreeAddresses"
	NodegroupIssueCode_AccessDenied                             NodegroupIssueCode = "AccessDenied"
	NodegroupIssueCode_InternalFailure                          NodegroupIssueCode = "InternalFailure"
	NodegroupIssueCode_ClusterUnreachable                       NodegroupIssueCode = "ClusterUnreachable"
	NodegroupIssueCode_AmiIdNotFound                            NodegroupIssueCode = "AmiIdNotFound"
	NodegroupIssueCode_AutoScalingGroupOptInRequired            NodegroupIssueCode = "AutoScalingGroupOptInRequired"
	NodegroupIssueCode_AutoScalingGroupRateLimitExceeded        NodegroupIssueCode = "AutoScalingGroupRateLimitExceeded"
	NodegroupIssueCode_Ec2LaunchTemplateDeletionFailure         NodegroupIssueCode = "Ec2LaunchTemplateDeletionFailure"
	NodegroupIssueCode_Ec2LaunchTemplateInvalidConfiguration    NodegroupIssueCode = "Ec2LaunchTemplateInvalidConfiguration"
	NodegroupIssueCode_Ec2LaunchTemplateMaxLimitExceeded        NodegroupIssueCode = "Ec2LaunchTemplateMaxLimitExceeded"
	NodegroupIssueCode_Ec2SubnetListTooLong                     NodegroupIssueCode = "Ec2SubnetListTooLong"
	NodegroupIssueCode_IamThrottling                            NodegroupIssueCode = "IamThrottling"
	NodegroupIssueCode_NodeTerminationFailure                   NodegroupIssueCode = "NodeTerminationFailure"
	NodegroupIssueCode_PodEvictionFailure                       NodegroupIssueCode = "PodEvictionFailure"
	NodegroupIssueCode_SourceEc2LaunchTemplateNotFound          NodegroupIssueCode = "SourceEc2LaunchTemplateNotFound"
	NodegroupIssueCode_LimitExceeded                            NodegroupIssueCode = "LimitExceeded"
	NodegroupIssueCode_Unknown                                  NodegroupIssueCode = "Unknown"
	NodegroupIssueCode_AutoScalingGroupInstanceRefreshActive    NodegroupIssueCode = "AutoScalingGroupInstanceRefreshActive"
	NodegroupIssueCode_KubernetesLabelInvalid                   NodegroupIssueCode = "KubernetesLabelInvalid"
	NodegroupIssueCode_Ec2LaunchTemplateVersionMaxLimitExceeded NodegroupIssueCode = "Ec2LaunchTemplateVersionMaxLimitExceeded"
)

type NodegroupList

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

NodegroupList contains a list of Nodegroup +kubebuilder:object:root=true

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.

type NodegroupResources

type NodegroupResources struct {
	AutoScalingGroups         []*AutoScalingGroup `json:"autoScalingGroups,omitempty"`
	RemoteAccessSecurityGroup *string             `json:"remoteAccessSecurityGroup,omitempty"`
}

An object representing the resources associated with the node group, such as Auto Scaling groups and security groups for remote access.

func (*NodegroupResources) DeepCopy

func (in *NodegroupResources) DeepCopy() *NodegroupResources

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

func (*NodegroupResources) DeepCopyInto

func (in *NodegroupResources) DeepCopyInto(out *NodegroupResources)

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

type NodegroupScalingConfig

type NodegroupScalingConfig struct {
	DesiredSize *int64 `json:"desiredSize,omitempty"`
	MaxSize     *int64 `json:"maxSize,omitempty"`
	MinSize     *int64 `json:"minSize,omitempty"`
}

An object representing the scaling configuration details for the Auto Scaling group that is associated with your node group. When creating a node group, you must specify all or none of the properties. When updating a node group, you can specify any or none of the properties.

func (*NodegroupScalingConfig) DeepCopy

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

func (*NodegroupScalingConfig) DeepCopyInto

func (in *NodegroupScalingConfig) DeepCopyInto(out *NodegroupScalingConfig)

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

type NodegroupSpec

type NodegroupSpec struct {

	// The AMI type for your node group. If you specify launchTemplate, and your
	// launch template uses a custom AMI, then don't specify amiType, or the node
	// group deployment will fail. If your launch template uses a Windows custom
	// AMI, then add eks:kube-proxy-windows to your Windows nodes rolearn in the
	// aws-auth ConfigMap. For more information about using launch templates with
	// Amazon EKS, see Customizing managed nodes with launch templates (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html)
	// in the Amazon EKS User Guide.
	AMIType *string `json:"amiType,omitempty"`
	// The capacity type for your node group.
	CapacityType *string `json:"capacityType,omitempty"`
	// A unique, case-sensitive identifier that you provide to ensure the idempotency
	// of the request.
	ClientRequestToken *string `json:"clientRequestToken,omitempty"`
	// The name of your cluster.
	ClusterName *string                                  `json:"clusterName,omitempty"`
	ClusterRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"clusterRef,omitempty"`
	// The root device disk size (in GiB) for your node group instances. The default
	// disk size is 20 GiB for Linux and Bottlerocket. The default disk size is
	// 50 GiB for Windows. If you specify launchTemplate, then don't specify diskSize,
	// or the node group deployment will fail. For more information about using
	// launch templates with Amazon EKS, see Customizing managed nodes with launch
	// templates (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html)
	// in the Amazon EKS User Guide.
	DiskSize *int64 `json:"diskSize,omitempty"`
	// Specify the instance types for a node group. If you specify a GPU instance
	// type, make sure to also specify an applicable GPU AMI type with the amiType
	// parameter. If you specify launchTemplate, then you can specify zero or one
	// instance type in your launch template or you can specify 0-20 instance types
	// for instanceTypes. If however, you specify an instance type in your launch
	// template and specify any instanceTypes, the node group deployment will fail.
	// If you don't specify an instance type in a launch template or for instanceTypes,
	// then t3.medium is used, by default. If you specify Spot for capacityType,
	// then we recommend specifying multiple values for instanceTypes. For more
	// information, see Managed node group capacity types (https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html#managed-node-group-capacity-types)
	// and Customizing managed nodes with launch templates (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html)
	// in the Amazon EKS User Guide.
	InstanceTypes []*string `json:"instanceTypes,omitempty"`
	// The Kubernetes labels to apply to the nodes in the node group when they are
	// created.
	Labels map[string]*string `json:"labels,omitempty"`
	// An object representing a node group's launch template specification. When
	// using this object, don't directly specify instanceTypes, diskSize, or remoteAccess.
	// Make sure that the launch template meets the requirements in launchTemplateSpecification.
	// Also refer to Customizing managed nodes with launch templates (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html)
	// in the Amazon EKS User Guide.
	LaunchTemplate *LaunchTemplateSpecification `json:"launchTemplate,omitempty"`
	// The unique name to give your node group.
	// +kubebuilder:validation:Required
	Name *string `json:"name"`
	// The Amazon Resource Name (ARN) of the IAM role to associate with your node
	// group. The Amazon EKS worker node kubelet daemon makes calls to Amazon Web
	// Services APIs on your behalf. Nodes receive permissions for these API calls
	// through an IAM instance profile and associated policies. Before you can launch
	// nodes and register them into a cluster, you must create an IAM role for those
	// nodes to use when they are launched. For more information, see Amazon EKS
	// node IAM role (https://docs.aws.amazon.com/eks/latest/userguide/create-node-role.html)
	// in the Amazon EKS User Guide . If you specify launchTemplate, then don't
	// specify IamInstanceProfile (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IamInstanceProfile.html)
	// in your launch template, or the node group deployment will fail. For more
	// information about using launch templates with Amazon EKS, see Customizing
	// managed nodes with launch templates (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html)
	// in the Amazon EKS User Guide.
	NodeRole    *string                                  `json:"nodeRole,omitempty"`
	NodeRoleRef *ackv1alpha1.AWSResourceReferenceWrapper `json:"nodeRoleRef,omitempty"`
	// The AMI version of the Amazon EKS optimized AMI to use with your node group.
	// By default, the latest available AMI version for the node group's current
	// Kubernetes version is used. For information about Linux versions, see Amazon
	// EKS optimized Amazon Linux AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-linux-ami-versions.html)
	// in the Amazon EKS User Guide. Amazon EKS managed node groups support the
	// November 2022 and later releases of the Windows AMIs. For information about
	// Windows versions, see Amazon EKS optimized Windows AMI versions (https://docs.aws.amazon.com/eks/latest/userguide/eks-ami-versions-windows.html)
	// in the Amazon EKS User Guide.
	//
	// If you specify launchTemplate, and your launch template uses a custom AMI,
	// then don't specify releaseVersion, or the node group deployment will fail.
	// For more information about using launch templates with Amazon EKS, see Customizing
	// managed nodes with launch templates (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html)
	// in the Amazon EKS User Guide.
	ReleaseVersion *string `json:"releaseVersion,omitempty"`
	// The remote access configuration to use with your node group. For Linux, the
	// protocol is SSH. For Windows, the protocol is RDP. If you specify launchTemplate,
	// then don't specify remoteAccess, or the node group deployment will fail.
	// For more information about using launch templates with Amazon EKS, see Customizing
	// managed nodes with launch templates (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html)
	// in the Amazon EKS User Guide.
	RemoteAccess *RemoteAccessConfig `json:"remoteAccess,omitempty"`
	// The scaling configuration details for the Auto Scaling group that is created
	// for your node group.
	ScalingConfig *NodegroupScalingConfig                    `json:"scalingConfig,omitempty"`
	SubnetRefs    []*ackv1alpha1.AWSResourceReferenceWrapper `json:"subnetRefs,omitempty"`
	// The subnets to use for the Auto Scaling group that is created for your node
	// group. If you specify launchTemplate, then don't specify SubnetId (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html)
	// in your launch template, or the node group deployment will fail. For more
	// information about using launch templates with Amazon EKS, see Customizing
	// managed nodes with launch templates (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html)
	// in the Amazon EKS User Guide.
	Subnets []*string `json:"subnets,omitempty"`
	// Metadata that assists with categorization and organization. Each tag consists
	// of a key and an optional value. You define both. Tags don't propagate to
	// any other cluster or Amazon Web Services resources.
	Tags map[string]*string `json:"tags,omitempty"`
	// The Kubernetes taints to be applied to the nodes in the node group. For more
	// information, see Node taints on managed node groups (https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html).
	Taints []*Taint `json:"taints,omitempty"`
	// The node group update configuration.
	UpdateConfig *NodegroupUpdateConfig `json:"updateConfig,omitempty"`
	// The Kubernetes version to use for your managed nodes. By default, the Kubernetes
	// version of the cluster is used, and this is the only accepted specified value.
	// If you specify launchTemplate, and your launch template uses a custom AMI,
	// then don't specify version, or the node group deployment will fail. For more
	// information about using launch templates with Amazon EKS, see Customizing
	// managed nodes with launch templates (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html)
	// in the Amazon EKS User Guide.
	Version *string `json:"version,omitempty"`
}

NodegroupSpec defines the desired state of Nodegroup.

An object representing an Amazon EKS managed node group.

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 {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// The Unix epoch timestamp at object creation.
	// +kubebuilder:validation:Optional
	CreatedAt *metav1.Time `json:"createdAt,omitempty"`
	// The health status of the node group. If there are issues with your node group's
	// health, they are listed here.
	// +kubebuilder:validation:Optional
	Health *NodegroupHealth `json:"health,omitempty"`
	// The Unix epoch timestamp for the last modification to the object.
	// +kubebuilder:validation:Optional
	ModifiedAt *metav1.Time `json:"modifiedAt,omitempty"`
	// The resources associated with the node group, such as Auto Scaling groups
	// and security groups for remote access.
	// +kubebuilder:validation:Optional
	Resources *NodegroupResources `json:"resources,omitempty"`
	// The current status of the managed node group.
	// +kubebuilder:validation:Optional
	Status *string `json:"status,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 NodegroupStatus_SDK

type NodegroupStatus_SDK string
const (
	NodegroupStatus_SDK_CREATING      NodegroupStatus_SDK = "CREATING"
	NodegroupStatus_SDK_ACTIVE        NodegroupStatus_SDK = "ACTIVE"
	NodegroupStatus_SDK_UPDATING      NodegroupStatus_SDK = "UPDATING"
	NodegroupStatus_SDK_DELETING      NodegroupStatus_SDK = "DELETING"
	NodegroupStatus_SDK_CREATE_FAILED NodegroupStatus_SDK = "CREATE_FAILED"
	NodegroupStatus_SDK_DELETE_FAILED NodegroupStatus_SDK = "DELETE_FAILED"
	NodegroupStatus_SDK_DEGRADED      NodegroupStatus_SDK = "DEGRADED"
)

type NodegroupUpdateConfig

type NodegroupUpdateConfig struct {
	MaxUnavailable           *int64 `json:"maxUnavailable,omitempty"`
	MaxUnavailablePercentage *int64 `json:"maxUnavailablePercentage,omitempty"`
}

The node group update configuration.

func (*NodegroupUpdateConfig) DeepCopy

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

func (*NodegroupUpdateConfig) DeepCopyInto

func (in *NodegroupUpdateConfig) DeepCopyInto(out *NodegroupUpdateConfig)

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

type Nodegroup_SDK

type Nodegroup_SDK struct {
	AMIType      *string      `json:"amiType,omitempty"`
	CapacityType *string      `json:"capacityType,omitempty"`
	ClusterName  *string      `json:"clusterName,omitempty"`
	CreatedAt    *metav1.Time `json:"createdAt,omitempty"`
	DiskSize     *int64       `json:"diskSize,omitempty"`
	// An object representing the health status of the node group.
	Health        *NodegroupHealth   `json:"health,omitempty"`
	InstanceTypes []*string          `json:"instanceTypes,omitempty"`
	Labels        map[string]*string `json:"labels,omitempty"`
	// An object representing a node group launch template specification. The launch
	// template can't include SubnetId (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateNetworkInterface.html),
	// IamInstanceProfile (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_IamInstanceProfile.html),
	// RequestSpotInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html),
	// HibernationOptions (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_HibernationOptionsRequest.html),
	// or TerminateInstances (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_TerminateInstances.html),
	// or the node group deployment or update will fail. For more information about
	// launch templates, see CreateLaunchTemplate (https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateLaunchTemplate.html)
	// in the Amazon EC2 API Reference. For more information about using launch
	// templates with Amazon EKS, see Customizing managed nodes with launch templates
	// (https://docs.aws.amazon.com/eks/latest/userguide/launch-templates.html)
	// in the Amazon EKS User Guide.
	//
	// You must specify either the launch template ID or the launch template name
	// in the request, but not both.
	LaunchTemplate *LaunchTemplateSpecification `json:"launchTemplate,omitempty"`
	ModifiedAt     *metav1.Time                 `json:"modifiedAt,omitempty"`
	NodeRole       *string                      `json:"nodeRole,omitempty"`
	NodegroupARN   *string                      `json:"nodegroupARN,omitempty"`
	NodegroupName  *string                      `json:"nodegroupName,omitempty"`
	ReleaseVersion *string                      `json:"releaseVersion,omitempty"`
	// An object representing the remote access configuration for the managed node
	// group.
	RemoteAccess *RemoteAccessConfig `json:"remoteAccess,omitempty"`
	// An object representing the resources associated with the node group, such
	// as Auto Scaling groups and security groups for remote access.
	Resources *NodegroupResources `json:"resources,omitempty"`
	// An object representing the scaling configuration details for the Auto Scaling
	// group that is associated with your node group. When creating a node group,
	// you must specify all or none of the properties. When updating a node group,
	// you can specify any or none of the properties.
	ScalingConfig *NodegroupScalingConfig `json:"scalingConfig,omitempty"`
	Status        *string                 `json:"status,omitempty"`
	Subnets       []*string               `json:"subnets,omitempty"`
	// The metadata that you apply to a resource to help you categorize and organize
	// them. Each tag consists of a key and an optional value. You define them.
	//
	// The following basic restrictions apply to tags:
	//
	//    * Maximum number of tags per resource – 50
	//
	//    * For each resource, each tag key must be unique, and each tag key can
	//    have only one value.
	//
	//    * Maximum key length – 128 Unicode characters in UTF-8
	//
	//    * Maximum value length – 256 Unicode characters in UTF-8
	//
	//    * If your tagging schema is used across multiple services and resources,
	//    remember that other services may have restrictions on allowed characters.
	//    Generally allowed characters are: letters, numbers, and spaces representable
	//    in UTF-8, and the following characters: + - = . _ : / @.
	//
	//    * Tag keys and values are case-sensitive.
	//
	//    * Do not use aws:, AWS:, or any upper or lowercase combination of such
	//    as a prefix for either keys or values as it is reserved for Amazon Web
	//    Services use. You cannot edit or delete tag keys or values with this prefix.
	//    Tags with this prefix do not count against your tags per resource limit.
	Tags   map[string]*string `json:"tags,omitempty"`
	Taints []*Taint           `json:"taints,omitempty"`
	// The node group update configuration.
	UpdateConfig *NodegroupUpdateConfig `json:"updateConfig,omitempty"`
	Version      *string                `json:"version,omitempty"`
}

An object representing an Amazon EKS managed node group.

func (*Nodegroup_SDK) DeepCopy

func (in *Nodegroup_SDK) DeepCopy() *Nodegroup_SDK

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

func (*Nodegroup_SDK) DeepCopyInto

func (in *Nodegroup_SDK) DeepCopyInto(out *Nodegroup_SDK)

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

type OIDC

type OIDC struct {
	Issuer *string `json:"issuer,omitempty"`
}

An object representing the OpenID Connect (https://openid.net/connect/) (OIDC) identity provider information for the cluster.

func (*OIDC) DeepCopy

func (in *OIDC) DeepCopy() *OIDC

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

func (*OIDC) DeepCopyInto

func (in *OIDC) DeepCopyInto(out *OIDC)

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

type OIDCIdentityProviderConfig

type OIDCIdentityProviderConfig struct {
	ClientID                   *string            `json:"clientID,omitempty"`
	ClusterName                *string            `json:"clusterName,omitempty"`
	GroupsClaim                *string            `json:"groupsClaim,omitempty"`
	GroupsPrefix               *string            `json:"groupsPrefix,omitempty"`
	IdentityProviderConfigARN  *string            `json:"identityProviderConfigARN,omitempty"`
	IdentityProviderConfigName *string            `json:"identityProviderConfigName,omitempty"`
	IssuerURL                  *string            `json:"issuerURL,omitempty"`
	RequiredClaims             map[string]*string `json:"requiredClaims,omitempty"`
	Status                     *string            `json:"status,omitempty"`
	// The metadata that you apply to a resource to help you categorize and organize
	// them. Each tag consists of a key and an optional value. You define them.
	//
	// The following basic restrictions apply to tags:
	//
	//    * Maximum number of tags per resource – 50
	//
	//    * For each resource, each tag key must be unique, and each tag key can
	//    have only one value.
	//
	//    * Maximum key length – 128 Unicode characters in UTF-8
	//
	//    * Maximum value length – 256 Unicode characters in UTF-8
	//
	//    * If your tagging schema is used across multiple services and resources,
	//    remember that other services may have restrictions on allowed characters.
	//    Generally allowed characters are: letters, numbers, and spaces representable
	//    in UTF-8, and the following characters: + - = . _ : / @.
	//
	//    * Tag keys and values are case-sensitive.
	//
	//    * Do not use aws:, AWS:, or any upper or lowercase combination of such
	//    as a prefix for either keys or values as it is reserved for Amazon Web
	//    Services use. You cannot edit or delete tag keys or values with this prefix.
	//    Tags with this prefix do not count against your tags per resource limit.
	Tags           map[string]*string `json:"tags,omitempty"`
	UsernameClaim  *string            `json:"usernameClaim,omitempty"`
	UsernamePrefix *string            `json:"usernamePrefix,omitempty"`
}

An object representing the configuration for an OpenID Connect (OIDC) identity provider.

func (*OIDCIdentityProviderConfig) DeepCopy

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

func (*OIDCIdentityProviderConfig) DeepCopyInto

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

type OIDCIdentityProviderConfigRequest

type OIDCIdentityProviderConfigRequest struct {
	ClientID                   *string            `json:"clientID,omitempty"`
	GroupsClaim                *string            `json:"groupsClaim,omitempty"`
	GroupsPrefix               *string            `json:"groupsPrefix,omitempty"`
	IdentityProviderConfigName *string            `json:"identityProviderConfigName,omitempty"`
	IssuerURL                  *string            `json:"issuerURL,omitempty"`
	RequiredClaims             map[string]*string `json:"requiredClaims,omitempty"`
	UsernameClaim              *string            `json:"usernameClaim,omitempty"`
	UsernamePrefix             *string            `json:"usernamePrefix,omitempty"`
}

An object representing an OpenID Connect (OIDC) configuration. Before associating an OIDC identity provider to your cluster, review the considerations in Authenticating users for your cluster from an OIDC identity provider (https://docs.aws.amazon.com/eks/latest/userguide/authenticate-oidc-identity-provider.html) in the Amazon EKS User Guide.

func (*OIDCIdentityProviderConfigRequest) DeepCopy

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

func (*OIDCIdentityProviderConfigRequest) DeepCopyInto

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

type OutpostConfigRequest added in v1.0.1

type OutpostConfigRequest struct {
	ControlPlaneInstanceType *string `json:"controlPlaneInstanceType,omitempty"`
	// The placement configuration for all the control plane instances of your local
	// Amazon EKS cluster on an Amazon Web Services Outpost. For more information,
	// see Capacity considerations (https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html)
	// in the Amazon EKS User Guide.
	ControlPlanePlacement *ControlPlanePlacementRequest `json:"controlPlanePlacement,omitempty"`
	OutpostARNs           []*string                     `json:"outpostARNs,omitempty"`
}

The configuration of your local Amazon EKS cluster on an Amazon Web Services Outpost. Before creating a cluster on an Outpost, review Creating a local cluster on an Outpost (https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-local-cluster-create.html) in the Amazon EKS User Guide. This API isn't available for Amazon EKS clusters on the Amazon Web Services cloud.

func (*OutpostConfigRequest) DeepCopy added in v1.0.1

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

func (*OutpostConfigRequest) DeepCopyInto added in v1.0.1

func (in *OutpostConfigRequest) DeepCopyInto(out *OutpostConfigRequest)

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

type OutpostConfigResponse added in v1.0.1

type OutpostConfigResponse struct {
	ControlPlaneInstanceType *string `json:"controlPlaneInstanceType,omitempty"`
	// The placement configuration for all the control plane instances of your local
	// Amazon EKS cluster on an Amazon Web Services Outpost. For more information,
	// see Capacity considerations (https://docs.aws.amazon.com/eks/latest/userguide/eks-outposts-capacity-considerations.html)
	// in the Amazon EKS User Guide.
	ControlPlanePlacement *ControlPlanePlacementResponse `json:"controlPlanePlacement,omitempty"`
	OutpostARNs           []*string                      `json:"outpostARNs,omitempty"`
}

An object representing the configuration of your local Amazon EKS cluster on an Amazon Web Services Outpost. This API isn't available for Amazon EKS clusters on the Amazon Web Services cloud.

func (*OutpostConfigResponse) DeepCopy added in v1.0.1

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

func (*OutpostConfigResponse) DeepCopyInto added in v1.0.1

func (in *OutpostConfigResponse) DeepCopyInto(out *OutpostConfigResponse)

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

type PodIdentityAssociation added in v1.1.0

type PodIdentityAssociation struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              PodIdentityAssociationSpec   `json:"spec,omitempty"`
	Status            PodIdentityAssociationStatus `json:"status,omitempty"`
}

PodIdentityAssociation is the Schema for the PodIdentityAssociations API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="CLUSTER",type=string,priority=0,JSONPath=`.spec.clusterName` +kubebuilder:printcolumn:name="NAMESPACE",type=string,priority=0,JSONPath=`.spec.namespace` +kubebuilder:printcolumn:name="SERVICEACCOUNT",type=string,priority=0,JSONPath=`.spec.serviceAccount` +kubebuilder:printcolumn:name="ROLEARN",type=string,priority=1,JSONPath=`.spec.roleARN` +kubebuilder:printcolumn:name="ASSOCIATIONID",type=string,priority=1,JSONPath=`.status.associationID` +kubebuilder:printcolumn:name="Synced",type="string",priority=0,JSONPath=".status.conditions[?(@.type==\"ACK.ResourceSynced\")].status" +kubebuilder:printcolumn:name="Age",type="date",priority=0,JSONPath=".metadata.creationTimestamp"

func (*PodIdentityAssociation) DeepCopy added in v1.1.0

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

func (*PodIdentityAssociation) DeepCopyInto added in v1.1.0

func (in *PodIdentityAssociation) DeepCopyInto(out *PodIdentityAssociation)

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

func (*PodIdentityAssociation) DeepCopyObject added in v1.1.0

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

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

type PodIdentityAssociationList added in v1.1.0

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

PodIdentityAssociationList contains a list of PodIdentityAssociation +kubebuilder:object:root=true

func (*PodIdentityAssociationList) DeepCopy added in v1.1.0

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

func (*PodIdentityAssociationList) DeepCopyInto added in v1.1.0

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

func (*PodIdentityAssociationList) DeepCopyObject added in v1.1.0

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

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

type PodIdentityAssociationSpec added in v1.1.0

type PodIdentityAssociationSpec struct {

	// A unique, case-sensitive identifier that you provide to ensure the idempotency
	// of the request.
	ClientRequestToken *string `json:"clientRequestToken,omitempty"`
	// The name of the cluster to create the association in.
	ClusterName *string                                  `json:"clusterName,omitempty"`
	ClusterRef  *ackv1alpha1.AWSResourceReferenceWrapper `json:"clusterRef,omitempty"`
	// The name of the Kubernetes namespace inside the cluster to create the association
	// in. The service account and the pods that use the service account must be
	// in this namespace.
	// +kubebuilder:validation:Required
	Namespace *string `json:"namespace"`
	// The Amazon Resource Name (ARN) of the IAM role to associate with the service
	// account. The EKS Pod Identity agent manages credentials to assume this role
	// for applications in the containers in the pods that use this service account.
	RoleARN *string                                  `json:"roleARN,omitempty"`
	RoleRef *ackv1alpha1.AWSResourceReferenceWrapper `json:"roleRef,omitempty"`
	// The name of the Kubernetes service account inside the cluster to associate
	// the IAM credentials with.
	// +kubebuilder:validation:Required
	ServiceAccount *string `json:"serviceAccount"`
	// Metadata that assists with categorization and organization. Each tag consists
	// of a key and an optional value. You define both. Tags don't propagate to
	// any other cluster or Amazon Web Services resources.
	//
	// The following basic restrictions apply to tags:
	//
	//   - Maximum number of tags per resource – 50
	//
	//   - For each resource, each tag key must be unique, and each tag key can
	//     have only one value.
	//
	//   - Maximum key length – 128 Unicode characters in UTF-8
	//
	//   - Maximum value length – 256 Unicode characters in UTF-8
	//
	//   - If your tagging schema is used across multiple services and resources,
	//     remember that other services may have restrictions on allowed characters.
	//     Generally allowed characters are: letters, numbers, and spaces representable
	//     in UTF-8, and the following characters: + - = . _ : / @.
	//
	//   - Tag keys and values are case-sensitive.
	//
	//   - Do not use aws:, AWS:, or any upper or lowercase combination of such
	//     as a prefix for either keys or values as it is reserved for Amazon Web
	//     Services use. You cannot edit or delete tag keys or values with this prefix.
	//     Tags with this prefix do not count against your tags per resource limit.
	Tags map[string]*string `json:"tags,omitempty"`
}

PodIdentityAssociationSpec defines the desired state of PodIdentityAssociation.

Amazon EKS Pod Identity associations provide the ability to manage credentials for your applications, similar to the way that Amazon EC2 instance profiles provide credentials to Amazon EC2 instances.

func (*PodIdentityAssociationSpec) DeepCopy added in v1.1.0

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

func (*PodIdentityAssociationSpec) DeepCopyInto added in v1.1.0

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

type PodIdentityAssociationStatus added in v1.1.0

type PodIdentityAssociationStatus struct {
	// All CRs managed by ACK have a common `Status.ACKResourceMetadata` member
	// that is used to contain resource sync state, account ownership,
	// constructed ARN for the resource
	// +kubebuilder:validation:Optional
	ACKResourceMetadata *ackv1alpha1.ResourceMetadata `json:"ackResourceMetadata"`
	// All CRS managed by ACK have a common `Status.Conditions` member that
	// contains a collection of `ackv1alpha1.Condition` objects that describe
	// the various terminal states of the CR and its backend AWS service API
	// resource
	// +kubebuilder:validation:Optional
	Conditions []*ackv1alpha1.Condition `json:"conditions"`
	// The Amazon Resource Name (ARN) of the association.
	// +kubebuilder:validation:Optional
	AssociationARN *string `json:"associationARN,omitempty"`
	// The ID of the association.
	// +kubebuilder:validation:Optional
	AssociationID *string `json:"associationID,omitempty"`
	// The timestamp that the association was created at.
	// +kubebuilder:validation:Optional
	CreatedAt *metav1.Time `json:"createdAt,omitempty"`
	// The most recent timestamp that the association was modified at
	// +kubebuilder:validation:Optional
	ModifiedAt *metav1.Time `json:"modifiedAt,omitempty"`
	// If defined, the Pod Identity Association is owned by an Amazon EKS Addon.
	// +kubebuilder:validation:Optional
	OwnerARN *string `json:"ownerARN,omitempty"`
}

PodIdentityAssociationStatus defines the observed state of PodIdentityAssociation

func (*PodIdentityAssociationStatus) DeepCopy added in v1.1.0

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

func (*PodIdentityAssociationStatus) DeepCopyInto added in v1.1.0

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

type PodIdentityAssociationSummary added in v1.1.0

type PodIdentityAssociationSummary struct {
	AssociationARN *string `json:"associationARN,omitempty"`
	AssociationID  *string `json:"associationID,omitempty"`
	ClusterName    *string `json:"clusterName,omitempty"`
	Namespace      *string `json:"namespace,omitempty"`
	OwnerARN       *string `json:"ownerARN,omitempty"`
	ServiceAccount *string `json:"serviceAccount,omitempty"`
}

The summarized description of the association.

Each summary is simplified by removing these fields compared to the full PodIdentityAssociation :

  • The IAM role: roleArn

  • The timestamp that the association was created at: createdAt

  • The most recent timestamp that the association was modified at:. modifiedAt

  • The tags on the association: tags

func (*PodIdentityAssociationSummary) DeepCopy added in v1.1.0

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

func (*PodIdentityAssociationSummary) DeepCopyInto added in v1.1.0

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

type PodIdentityAssociation_SDK added in v1.1.0

type PodIdentityAssociation_SDK struct {
	AssociationARN *string      `json:"associationARN,omitempty"`
	AssociationID  *string      `json:"associationID,omitempty"`
	ClusterName    *string      `json:"clusterName,omitempty"`
	CreatedAt      *metav1.Time `json:"createdAt,omitempty"`
	ModifiedAt     *metav1.Time `json:"modifiedAt,omitempty"`
	Namespace      *string      `json:"namespace,omitempty"`
	OwnerARN       *string      `json:"ownerARN,omitempty"`
	RoleARN        *string      `json:"roleARN,omitempty"`
	ServiceAccount *string      `json:"serviceAccount,omitempty"`
	// The metadata that you apply to a resource to help you categorize and organize
	// them. Each tag consists of a key and an optional value. You define them.
	//
	// The following basic restrictions apply to tags:
	//
	//    * Maximum number of tags per resource – 50
	//
	//    * For each resource, each tag key must be unique, and each tag key can
	//    have only one value.
	//
	//    * Maximum key length – 128 Unicode characters in UTF-8
	//
	//    * Maximum value length – 256 Unicode characters in UTF-8
	//
	//    * If your tagging schema is used across multiple services and resources,
	//    remember that other services may have restrictions on allowed characters.
	//    Generally allowed characters are: letters, numbers, and spaces representable
	//    in UTF-8, and the following characters: + - = . _ : / @.
	//
	//    * Tag keys and values are case-sensitive.
	//
	//    * Do not use aws:, AWS:, or any upper or lowercase combination of such
	//    as a prefix for either keys or values as it is reserved for Amazon Web
	//    Services use. You cannot edit or delete tag keys or values with this prefix.
	//    Tags with this prefix do not count against your tags per resource limit.
	Tags map[string]*string `json:"tags,omitempty"`
}

Amazon EKS Pod Identity associations provide the ability to manage credentials for your applications, similar to the way that Amazon EC2 instance profiles provide credentials to Amazon EC2 instances.

func (*PodIdentityAssociation_SDK) DeepCopy added in v1.1.0

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

func (*PodIdentityAssociation_SDK) DeepCopyInto added in v1.1.0

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

type Provider

type Provider struct {
	KeyARN *string `json:"keyARN,omitempty"`
	// Reference field for KeyARN
	KeyRef *ackv1alpha1.AWSResourceReferenceWrapper `json:"keyRef,omitempty"`
}

Identifies the Key Management Service (KMS) key used to encrypt the secrets.

func (*Provider) DeepCopy

func (in *Provider) DeepCopy() *Provider

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

func (*Provider) DeepCopyInto

func (in *Provider) DeepCopyInto(out *Provider)

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

type RemoteAccessConfig

type RemoteAccessConfig struct {
	EC2SshKey *string `json:"ec2SshKey,omitempty"`
	// Reference field for SourceSecurityGroups
	SourceSecurityGroupRefs []*ackv1alpha1.AWSResourceReferenceWrapper `json:"sourceSecurityGroupRefs,omitempty"`
	SourceSecurityGroups    []*string                                  `json:"sourceSecurityGroups,omitempty"`
}

An object representing the remote access configuration for the managed node group.

func (*RemoteAccessConfig) DeepCopy

func (in *RemoteAccessConfig) DeepCopy() *RemoteAccessConfig

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

func (*RemoteAccessConfig) DeepCopyInto

func (in *RemoteAccessConfig) DeepCopyInto(out *RemoteAccessConfig)

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

type ResolveConflicts

type ResolveConflicts string
const (
	ResolveConflicts_OVERWRITE ResolveConflicts = "OVERWRITE"
	ResolveConflicts_NONE      ResolveConflicts = "NONE"
	ResolveConflicts_PRESERVE  ResolveConflicts = "PRESERVE"
)

type SupportType added in v1.5.1

type SupportType string
const (
	SupportType_STANDARD SupportType = "STANDARD"
	SupportType_EXTENDED SupportType = "EXTENDED"
)

type Taint

type Taint struct {
	Effect *string `json:"effect,omitempty"`
	Key    *string `json:"key,omitempty"`
	Value  *string `json:"value,omitempty"`
}

A property that allows a node to repel a Pod. For more information, see Node taints on managed node groups (https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html) in the Amazon EKS User Guide.

func (*Taint) DeepCopy

func (in *Taint) DeepCopy() *Taint

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

func (*Taint) DeepCopyInto

func (in *Taint) DeepCopyInto(out *Taint)

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

type TaintEffect

type TaintEffect string
const (
	TaintEffect_NO_SCHEDULE        TaintEffect = "NO_SCHEDULE"
	TaintEffect_NO_EXECUTE         TaintEffect = "NO_EXECUTE"
	TaintEffect_PREFER_NO_SCHEDULE TaintEffect = "PREFER_NO_SCHEDULE"
)

type Update

type Update struct {
	CreatedAt *metav1.Time   `json:"createdAt,omitempty"`
	Errors    []*ErrorDetail `json:"errors,omitempty"`
	ID        *string        `json:"id,omitempty"`
	Params    []*UpdateParam `json:"params,omitempty"`
	Status    *string        `json:"status,omitempty"`
	Type      *string        `json:"type_,omitempty"`
}

An object representing an asynchronous update.

func (*Update) DeepCopy

func (in *Update) DeepCopy() *Update

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

func (*Update) DeepCopyInto

func (in *Update) DeepCopyInto(out *Update)

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

type UpdateAccessConfigRequest added in v1.1.3

type UpdateAccessConfigRequest struct {
	AuthenticationMode *string `json:"authenticationMode,omitempty"`
}

The access configuration information for the cluster.

func (*UpdateAccessConfigRequest) DeepCopy added in v1.1.3

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

func (*UpdateAccessConfigRequest) DeepCopyInto added in v1.1.3

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

type UpdateLabelsPayload

type UpdateLabelsPayload struct {
	AddOrUpdateLabels map[string]*string `json:"addOrUpdateLabels,omitempty"`
}

An object representing a Kubernetes label change for a managed node group.

func (*UpdateLabelsPayload) DeepCopy

func (in *UpdateLabelsPayload) DeepCopy() *UpdateLabelsPayload

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

func (*UpdateLabelsPayload) DeepCopyInto

func (in *UpdateLabelsPayload) DeepCopyInto(out *UpdateLabelsPayload)

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

type UpdateParam

type UpdateParam struct {
	Type  *string `json:"type_,omitempty"`
	Value *string `json:"value,omitempty"`
}

An object representing the details of an update request.

func (*UpdateParam) DeepCopy

func (in *UpdateParam) DeepCopy() *UpdateParam

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

func (*UpdateParam) DeepCopyInto

func (in *UpdateParam) DeepCopyInto(out *UpdateParam)

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

type UpdateParamType

type UpdateParamType string
const (
	UpdateParamType_Version                  UpdateParamType = "Version"
	UpdateParamType_PlatformVersion          UpdateParamType = "PlatformVersion"
	UpdateParamType_EndpointPrivateAccess    UpdateParamType = "EndpointPrivateAccess"
	UpdateParamType_EndpointPublicAccess     UpdateParamType = "EndpointPublicAccess"
	UpdateParamType_ClusterLogging           UpdateParamType = "ClusterLogging"
	UpdateParamType_DesiredSize              UpdateParamType = "DesiredSize"
	UpdateParamType_LabelsToAdd              UpdateParamType = "LabelsToAdd"
	UpdateParamType_LabelsToRemove           UpdateParamType = "LabelsToRemove"
	UpdateParamType_TaintsToAdd              UpdateParamType = "TaintsToAdd"
	UpdateParamType_TaintsToRemove           UpdateParamType = "TaintsToRemove"
	UpdateParamType_MaxSize                  UpdateParamType = "MaxSize"
	UpdateParamType_MinSize                  UpdateParamType = "MinSize"
	UpdateParamType_ReleaseVersion           UpdateParamType = "ReleaseVersion"
	UpdateParamType_PublicAccessCidrs        UpdateParamType = "PublicAccessCidrs"
	UpdateParamType_LaunchTemplateName       UpdateParamType = "LaunchTemplateName"
	UpdateParamType_LaunchTemplateVersion    UpdateParamType = "LaunchTemplateVersion"
	UpdateParamType_IdentityProviderConfig   UpdateParamType = "IdentityProviderConfig"
	UpdateParamType_EncryptionConfig         UpdateParamType = "EncryptionConfig"
	UpdateParamType_AddonVersion             UpdateParamType = "AddonVersion"
	UpdateParamType_ServiceAccountRoleArn    UpdateParamType = "ServiceAccountRoleArn"
	UpdateParamType_ResolveConflicts         UpdateParamType = "ResolveConflicts"
	UpdateParamType_MaxUnavailable           UpdateParamType = "MaxUnavailable"
	UpdateParamType_MaxUnavailablePercentage UpdateParamType = "MaxUnavailablePercentage"
	UpdateParamType_ConfigurationValues      UpdateParamType = "ConfigurationValues"
	UpdateParamType_SecurityGroups           UpdateParamType = "SecurityGroups"
	UpdateParamType_Subnets                  UpdateParamType = "Subnets"
	UpdateParamType_AuthenticationMode       UpdateParamType = "AuthenticationMode"
	UpdateParamType_PodIdentityAssociations  UpdateParamType = "PodIdentityAssociations"
	UpdateParamType_UpgradePolicy            UpdateParamType = "UpgradePolicy"
)

type UpdateStatus

type UpdateStatus string
const (
	UpdateStatus_InProgress UpdateStatus = "InProgress"
	UpdateStatus_Failed     UpdateStatus = "Failed"
	UpdateStatus_Cancelled  UpdateStatus = "Cancelled"
	UpdateStatus_Successful UpdateStatus = "Successful"
)

type UpdateTaintsPayload

type UpdateTaintsPayload struct {
	AddOrUpdateTaints []*Taint `json:"addOrUpdateTaints,omitempty"`
	RemoveTaints      []*Taint `json:"removeTaints,omitempty"`
}

An object representing the details of an update to a taints payload. For more information, see Node taints on managed node groups (https://docs.aws.amazon.com/eks/latest/userguide/node-taints-managed-node-groups.html) in the Amazon EKS User Guide.

func (*UpdateTaintsPayload) DeepCopy

func (in *UpdateTaintsPayload) DeepCopy() *UpdateTaintsPayload

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

func (*UpdateTaintsPayload) DeepCopyInto

func (in *UpdateTaintsPayload) DeepCopyInto(out *UpdateTaintsPayload)

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

type UpdateType

type UpdateType string
const (
	UpdateType_VersionUpdate                      UpdateType = "VersionUpdate"
	UpdateType_EndpointAccessUpdate               UpdateType = "EndpointAccessUpdate"
	UpdateType_LoggingUpdate                      UpdateType = "LoggingUpdate"
	UpdateType_ConfigUpdate                       UpdateType = "ConfigUpdate"
	UpdateType_AssociateIdentityProviderConfig    UpdateType = "AssociateIdentityProviderConfig"
	UpdateType_DisassociateIdentityProviderConfig UpdateType = "DisassociateIdentityProviderConfig"
	UpdateType_AssociateEncryptionConfig          UpdateType = "AssociateEncryptionConfig"
	UpdateType_AddonUpdate                        UpdateType = "AddonUpdate"
	UpdateType_VpcConfigUpdate                    UpdateType = "VpcConfigUpdate"
	UpdateType_AccessConfigUpdate                 UpdateType = "AccessConfigUpdate"
	UpdateType_UpgradePolicyUpdate                UpdateType = "UpgradePolicyUpdate"
)

type UpgradePolicyRequest added in v1.5.1

type UpgradePolicyRequest struct {
	SupportType *string `json:"supportType,omitempty"`
}

The support policy to use for the cluster. Extended support allows you to remain on specific Kubernetes versions for longer. Clusters in extended support have higher costs. The default value is EXTENDED. Use STANDARD to disable extended support.

Learn more about EKS Extended Support in the EKS User Guide. (https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html)

func (*UpgradePolicyRequest) DeepCopy added in v1.5.1

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

func (*UpgradePolicyRequest) DeepCopyInto added in v1.5.1

func (in *UpgradePolicyRequest) DeepCopyInto(out *UpgradePolicyRequest)

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

type UpgradePolicyResponse added in v1.5.1

type UpgradePolicyResponse struct {
	SupportType *string `json:"supportType,omitempty"`
}

This value indicates if extended support is enabled or disabled for the cluster.

Learn more about EKS Extended Support in the EKS User Guide. (https://docs.aws.amazon.com/eks/latest/userguide/extended-support-control.html)

func (*UpgradePolicyResponse) DeepCopy added in v1.5.1

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

func (*UpgradePolicyResponse) DeepCopyInto added in v1.5.1

func (in *UpgradePolicyResponse) DeepCopyInto(out *UpgradePolicyResponse)

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

type VPCConfigRequest

type VPCConfigRequest struct {
	EndpointPrivateAccess *bool     `json:"endpointPrivateAccess,omitempty"`
	EndpointPublicAccess  *bool     `json:"endpointPublicAccess,omitempty"`
	PublicAccessCIDRs     []*string `json:"publicAccessCIDRs,omitempty"`
	SecurityGroupIDs      []*string `json:"securityGroupIDs,omitempty"`
	// Reference field for SecurityGroupIDs
	SecurityGroupRefs []*ackv1alpha1.AWSResourceReferenceWrapper `json:"securityGroupRefs,omitempty"`
	SubnetIDs         []*string                                  `json:"subnetIDs,omitempty"`
	// Reference field for SubnetIDs
	SubnetRefs []*ackv1alpha1.AWSResourceReferenceWrapper `json:"subnetRefs,omitempty"`
}

An object representing the VPC configuration to use for an Amazon EKS cluster.

func (*VPCConfigRequest) DeepCopy

func (in *VPCConfigRequest) DeepCopy() *VPCConfigRequest

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

func (*VPCConfigRequest) DeepCopyInto

func (in *VPCConfigRequest) DeepCopyInto(out *VPCConfigRequest)

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

type VPCConfigResponse

type VPCConfigResponse struct {
	ClusterSecurityGroupID *string   `json:"clusterSecurityGroupID,omitempty"`
	EndpointPrivateAccess  *bool     `json:"endpointPrivateAccess,omitempty"`
	EndpointPublicAccess   *bool     `json:"endpointPublicAccess,omitempty"`
	PublicAccessCIDRs      []*string `json:"publicAccessCIDRs,omitempty"`
	SecurityGroupIDs       []*string `json:"securityGroupIDs,omitempty"`
	SubnetIDs              []*string `json:"subnetIDs,omitempty"`
	VPCID                  *string   `json:"vpcID,omitempty"`
}

An object representing an Amazon EKS cluster VPC configuration response.

func (*VPCConfigResponse) DeepCopy

func (in *VPCConfigResponse) DeepCopy() *VPCConfigResponse

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

func (*VPCConfigResponse) DeepCopyInto

func (in *VPCConfigResponse) DeepCopyInto(out *VPCConfigResponse)

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