eks

package
v6.38.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessEntry added in v6.18.2

type AccessEntry struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the Access Entry.
	AccessEntryArn pulumi.StringOutput `pulumi:"accessEntryArn"`
	// Name of the EKS Cluster.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was created.
	CreatedAt pulumi.StringOutput `pulumi:"createdAt"`
	// List of string which can optionally specify the Kubernetes groups the user would belong to when creating an access entry.
	KubernetesGroups pulumi.StringArrayOutput `pulumi:"kubernetesGroups"`
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was updated.
	ModifiedAt pulumi.StringOutput `pulumi:"modifiedAt"`
	// The IAM Principal ARN which requires Authentication access to the EKS cluster.
	//
	// The following arguments are optional:
	PrincipalArn pulumi.StringOutput `pulumi:"principalArn"`
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// (Optional) Key-value map of resource tags, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Defaults to STANDARD which provides the standard workflow. EC2_LINUX, EC2_WINDOWS, FARGATE_LINUX types disallow users to input a username or groups, and prevent associations.
	Type pulumi.StringPtrOutput `pulumi:"type"`
	// Defaults to principal ARN if user is principal else defaults to assume-role/session-name is role is used.
	UserName pulumi.StringOutput `pulumi:"userName"`
}

Access Entry Configurations for an EKS Cluster.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := eks.NewAccessEntry(ctx, "example", &eks.AccessEntryArgs{
			ClusterName:  pulumi.Any(exampleAwsEksCluster.Name),
			PrincipalArn: pulumi.Any(exampleAwsIamRole.Arn),
			KubernetesGroups: pulumi.StringArray{
				pulumi.String("group-1"),
				pulumi.String("group-2"),
			},
			Type: pulumi.String("STANDARD"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import EKS access entry using the `cluster_name` and `principal_arn` separated by a colon (`:`). For example:

```sh $ pulumi import aws:eks/accessEntry:AccessEntry my_eks_access_entry my_cluster_name:my_principal_arn ```

func GetAccessEntry added in v6.18.2

func GetAccessEntry(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccessEntryState, opts ...pulumi.ResourceOption) (*AccessEntry, error)

GetAccessEntry gets an existing AccessEntry resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAccessEntry added in v6.18.2

func NewAccessEntry(ctx *pulumi.Context,
	name string, args *AccessEntryArgs, opts ...pulumi.ResourceOption) (*AccessEntry, error)

NewAccessEntry registers a new resource with the given unique name, arguments, and options.

func (*AccessEntry) ElementType added in v6.18.2

func (*AccessEntry) ElementType() reflect.Type

func (*AccessEntry) ToAccessEntryOutput added in v6.18.2

func (i *AccessEntry) ToAccessEntryOutput() AccessEntryOutput

func (*AccessEntry) ToAccessEntryOutputWithContext added in v6.18.2

func (i *AccessEntry) ToAccessEntryOutputWithContext(ctx context.Context) AccessEntryOutput

type AccessEntryArgs added in v6.18.2

type AccessEntryArgs struct {
	// Name of the EKS Cluster.
	ClusterName pulumi.StringInput
	// List of string which can optionally specify the Kubernetes groups the user would belong to when creating an access entry.
	KubernetesGroups pulumi.StringArrayInput
	// The IAM Principal ARN which requires Authentication access to the EKS cluster.
	//
	// The following arguments are optional:
	PrincipalArn pulumi.StringInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Defaults to STANDARD which provides the standard workflow. EC2_LINUX, EC2_WINDOWS, FARGATE_LINUX types disallow users to input a username or groups, and prevent associations.
	Type pulumi.StringPtrInput
	// Defaults to principal ARN if user is principal else defaults to assume-role/session-name is role is used.
	UserName pulumi.StringPtrInput
}

The set of arguments for constructing a AccessEntry resource.

func (AccessEntryArgs) ElementType added in v6.18.2

func (AccessEntryArgs) ElementType() reflect.Type

type AccessEntryArray added in v6.18.2

type AccessEntryArray []AccessEntryInput

func (AccessEntryArray) ElementType added in v6.18.2

func (AccessEntryArray) ElementType() reflect.Type

func (AccessEntryArray) ToAccessEntryArrayOutput added in v6.18.2

func (i AccessEntryArray) ToAccessEntryArrayOutput() AccessEntryArrayOutput

func (AccessEntryArray) ToAccessEntryArrayOutputWithContext added in v6.18.2

func (i AccessEntryArray) ToAccessEntryArrayOutputWithContext(ctx context.Context) AccessEntryArrayOutput

type AccessEntryArrayInput added in v6.18.2

type AccessEntryArrayInput interface {
	pulumi.Input

	ToAccessEntryArrayOutput() AccessEntryArrayOutput
	ToAccessEntryArrayOutputWithContext(context.Context) AccessEntryArrayOutput
}

AccessEntryArrayInput is an input type that accepts AccessEntryArray and AccessEntryArrayOutput values. You can construct a concrete instance of `AccessEntryArrayInput` via:

AccessEntryArray{ AccessEntryArgs{...} }

type AccessEntryArrayOutput added in v6.18.2

type AccessEntryArrayOutput struct{ *pulumi.OutputState }

func (AccessEntryArrayOutput) ElementType added in v6.18.2

func (AccessEntryArrayOutput) ElementType() reflect.Type

func (AccessEntryArrayOutput) Index added in v6.18.2

func (AccessEntryArrayOutput) ToAccessEntryArrayOutput added in v6.18.2

func (o AccessEntryArrayOutput) ToAccessEntryArrayOutput() AccessEntryArrayOutput

func (AccessEntryArrayOutput) ToAccessEntryArrayOutputWithContext added in v6.18.2

func (o AccessEntryArrayOutput) ToAccessEntryArrayOutputWithContext(ctx context.Context) AccessEntryArrayOutput

type AccessEntryInput added in v6.18.2

type AccessEntryInput interface {
	pulumi.Input

	ToAccessEntryOutput() AccessEntryOutput
	ToAccessEntryOutputWithContext(ctx context.Context) AccessEntryOutput
}

type AccessEntryMap added in v6.18.2

type AccessEntryMap map[string]AccessEntryInput

func (AccessEntryMap) ElementType added in v6.18.2

func (AccessEntryMap) ElementType() reflect.Type

func (AccessEntryMap) ToAccessEntryMapOutput added in v6.18.2

func (i AccessEntryMap) ToAccessEntryMapOutput() AccessEntryMapOutput

func (AccessEntryMap) ToAccessEntryMapOutputWithContext added in v6.18.2

func (i AccessEntryMap) ToAccessEntryMapOutputWithContext(ctx context.Context) AccessEntryMapOutput

type AccessEntryMapInput added in v6.18.2

type AccessEntryMapInput interface {
	pulumi.Input

	ToAccessEntryMapOutput() AccessEntryMapOutput
	ToAccessEntryMapOutputWithContext(context.Context) AccessEntryMapOutput
}

AccessEntryMapInput is an input type that accepts AccessEntryMap and AccessEntryMapOutput values. You can construct a concrete instance of `AccessEntryMapInput` via:

AccessEntryMap{ "key": AccessEntryArgs{...} }

type AccessEntryMapOutput added in v6.18.2

type AccessEntryMapOutput struct{ *pulumi.OutputState }

func (AccessEntryMapOutput) ElementType added in v6.18.2

func (AccessEntryMapOutput) ElementType() reflect.Type

func (AccessEntryMapOutput) MapIndex added in v6.18.2

func (AccessEntryMapOutput) ToAccessEntryMapOutput added in v6.18.2

func (o AccessEntryMapOutput) ToAccessEntryMapOutput() AccessEntryMapOutput

func (AccessEntryMapOutput) ToAccessEntryMapOutputWithContext added in v6.18.2

func (o AccessEntryMapOutput) ToAccessEntryMapOutputWithContext(ctx context.Context) AccessEntryMapOutput

type AccessEntryOutput added in v6.18.2

type AccessEntryOutput struct{ *pulumi.OutputState }

func (AccessEntryOutput) AccessEntryArn added in v6.18.2

func (o AccessEntryOutput) AccessEntryArn() pulumi.StringOutput

Amazon Resource Name (ARN) of the Access Entry.

func (AccessEntryOutput) ClusterName added in v6.18.2

func (o AccessEntryOutput) ClusterName() pulumi.StringOutput

Name of the EKS Cluster.

func (AccessEntryOutput) CreatedAt added in v6.18.2

func (o AccessEntryOutput) CreatedAt() pulumi.StringOutput

Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was created.

func (AccessEntryOutput) ElementType added in v6.18.2

func (AccessEntryOutput) ElementType() reflect.Type

func (AccessEntryOutput) KubernetesGroups added in v6.18.2

func (o AccessEntryOutput) KubernetesGroups() pulumi.StringArrayOutput

List of string which can optionally specify the Kubernetes groups the user would belong to when creating an access entry.

func (AccessEntryOutput) ModifiedAt added in v6.18.2

func (o AccessEntryOutput) ModifiedAt() pulumi.StringOutput

Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was updated.

func (AccessEntryOutput) PrincipalArn added in v6.18.2

func (o AccessEntryOutput) PrincipalArn() pulumi.StringOutput

The IAM Principal ARN which requires Authentication access to the EKS cluster.

The following arguments are optional:

func (AccessEntryOutput) Tags added in v6.18.2

Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (AccessEntryOutput) TagsAll deprecated added in v6.18.2

(Optional) Key-value map of resource tags, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (AccessEntryOutput) ToAccessEntryOutput added in v6.18.2

func (o AccessEntryOutput) ToAccessEntryOutput() AccessEntryOutput

func (AccessEntryOutput) ToAccessEntryOutputWithContext added in v6.18.2

func (o AccessEntryOutput) ToAccessEntryOutputWithContext(ctx context.Context) AccessEntryOutput

func (AccessEntryOutput) Type added in v6.18.2

Defaults to STANDARD which provides the standard workflow. EC2_LINUX, EC2_WINDOWS, FARGATE_LINUX types disallow users to input a username or groups, and prevent associations.

func (AccessEntryOutput) UserName added in v6.18.2

func (o AccessEntryOutput) UserName() pulumi.StringOutput

Defaults to principal ARN if user is principal else defaults to assume-role/session-name is role is used.

type AccessEntryState added in v6.18.2

type AccessEntryState struct {
	// Amazon Resource Name (ARN) of the Access Entry.
	AccessEntryArn pulumi.StringPtrInput
	// Name of the EKS Cluster.
	ClusterName pulumi.StringPtrInput
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was created.
	CreatedAt pulumi.StringPtrInput
	// List of string which can optionally specify the Kubernetes groups the user would belong to when creating an access entry.
	KubernetesGroups pulumi.StringArrayInput
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was updated.
	ModifiedAt pulumi.StringPtrInput
	// The IAM Principal ARN which requires Authentication access to the EKS cluster.
	//
	// The following arguments are optional:
	PrincipalArn pulumi.StringPtrInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// (Optional) Key-value map of resource tags, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// Defaults to STANDARD which provides the standard workflow. EC2_LINUX, EC2_WINDOWS, FARGATE_LINUX types disallow users to input a username or groups, and prevent associations.
	Type pulumi.StringPtrInput
	// Defaults to principal ARN if user is principal else defaults to assume-role/session-name is role is used.
	UserName pulumi.StringPtrInput
}

func (AccessEntryState) ElementType added in v6.18.2

func (AccessEntryState) ElementType() reflect.Type

type AccessPolicyAssociation added in v6.18.2

type AccessPolicyAssociation struct {
	pulumi.CustomResourceState

	// The configuration block to determine the scope of the access. See `accessScope` Block below.
	AccessScope AccessPolicyAssociationAccessScopeOutput `pulumi:"accessScope"`
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the policy was associated.
	AssociatedAt pulumi.StringOutput `pulumi:"associatedAt"`
	// Name of the EKS Cluster.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the policy was updated.
	ModifiedAt pulumi.StringOutput `pulumi:"modifiedAt"`
	// The ARN of the access policy that you're associating.
	PolicyArn pulumi.StringOutput `pulumi:"policyArn"`
	// The IAM Principal ARN which requires Authentication access to the EKS cluster.
	PrincipalArn pulumi.StringOutput `pulumi:"principalArn"`
}

Access Entry Policy Association for an EKS Cluster.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := eks.NewAccessPolicyAssociation(ctx, "example", &eks.AccessPolicyAssociationArgs{
			ClusterName:  pulumi.Any(exampleAwsEksCluster.Name),
			PolicyArn:    pulumi.String("arn:aws:eks::aws:cluster-access-policy/AmazonEKSViewPolicy"),
			PrincipalArn: pulumi.Any(exampleAwsIamUser.Arn),
			AccessScope: &eks.AccessPolicyAssociationAccessScopeArgs{
				Type: pulumi.String("namespace"),
				Namespaces: pulumi.StringArray{
					pulumi.String("example-namespace"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import EKS access entry using the `cluster_name` `principal_arn` and `policy_arn` separated by a colon (`#`). For example:

```sh $ pulumi import aws:eks/accessPolicyAssociation:AccessPolicyAssociation my_eks_access_entry my_cluster_name#my_principal_arn#my_policy_arn ```

func GetAccessPolicyAssociation added in v6.18.2

func GetAccessPolicyAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccessPolicyAssociationState, opts ...pulumi.ResourceOption) (*AccessPolicyAssociation, error)

GetAccessPolicyAssociation gets an existing AccessPolicyAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAccessPolicyAssociation added in v6.18.2

func NewAccessPolicyAssociation(ctx *pulumi.Context,
	name string, args *AccessPolicyAssociationArgs, opts ...pulumi.ResourceOption) (*AccessPolicyAssociation, error)

NewAccessPolicyAssociation registers a new resource with the given unique name, arguments, and options.

func (*AccessPolicyAssociation) ElementType added in v6.18.2

func (*AccessPolicyAssociation) ElementType() reflect.Type

func (*AccessPolicyAssociation) ToAccessPolicyAssociationOutput added in v6.18.2

func (i *AccessPolicyAssociation) ToAccessPolicyAssociationOutput() AccessPolicyAssociationOutput

func (*AccessPolicyAssociation) ToAccessPolicyAssociationOutputWithContext added in v6.18.2

func (i *AccessPolicyAssociation) ToAccessPolicyAssociationOutputWithContext(ctx context.Context) AccessPolicyAssociationOutput

type AccessPolicyAssociationAccessScope added in v6.18.2

type AccessPolicyAssociationAccessScope struct {
	// The namespaces to which the access scope applies when type is namespace.
	Namespaces []string `pulumi:"namespaces"`
	// Valid values are `namespace` or `cluster`.
	Type string `pulumi:"type"`
}

type AccessPolicyAssociationAccessScopeArgs added in v6.18.2

type AccessPolicyAssociationAccessScopeArgs struct {
	// The namespaces to which the access scope applies when type is namespace.
	Namespaces pulumi.StringArrayInput `pulumi:"namespaces"`
	// Valid values are `namespace` or `cluster`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (AccessPolicyAssociationAccessScopeArgs) ElementType added in v6.18.2

func (AccessPolicyAssociationAccessScopeArgs) ToAccessPolicyAssociationAccessScopeOutput added in v6.18.2

func (i AccessPolicyAssociationAccessScopeArgs) ToAccessPolicyAssociationAccessScopeOutput() AccessPolicyAssociationAccessScopeOutput

func (AccessPolicyAssociationAccessScopeArgs) ToAccessPolicyAssociationAccessScopeOutputWithContext added in v6.18.2

func (i AccessPolicyAssociationAccessScopeArgs) ToAccessPolicyAssociationAccessScopeOutputWithContext(ctx context.Context) AccessPolicyAssociationAccessScopeOutput

func (AccessPolicyAssociationAccessScopeArgs) ToAccessPolicyAssociationAccessScopePtrOutput added in v6.18.2

func (i AccessPolicyAssociationAccessScopeArgs) ToAccessPolicyAssociationAccessScopePtrOutput() AccessPolicyAssociationAccessScopePtrOutput

func (AccessPolicyAssociationAccessScopeArgs) ToAccessPolicyAssociationAccessScopePtrOutputWithContext added in v6.18.2

func (i AccessPolicyAssociationAccessScopeArgs) ToAccessPolicyAssociationAccessScopePtrOutputWithContext(ctx context.Context) AccessPolicyAssociationAccessScopePtrOutput

type AccessPolicyAssociationAccessScopeInput added in v6.18.2

type AccessPolicyAssociationAccessScopeInput interface {
	pulumi.Input

	ToAccessPolicyAssociationAccessScopeOutput() AccessPolicyAssociationAccessScopeOutput
	ToAccessPolicyAssociationAccessScopeOutputWithContext(context.Context) AccessPolicyAssociationAccessScopeOutput
}

AccessPolicyAssociationAccessScopeInput is an input type that accepts AccessPolicyAssociationAccessScopeArgs and AccessPolicyAssociationAccessScopeOutput values. You can construct a concrete instance of `AccessPolicyAssociationAccessScopeInput` via:

AccessPolicyAssociationAccessScopeArgs{...}

type AccessPolicyAssociationAccessScopeOutput added in v6.18.2

type AccessPolicyAssociationAccessScopeOutput struct{ *pulumi.OutputState }

func (AccessPolicyAssociationAccessScopeOutput) ElementType added in v6.18.2

func (AccessPolicyAssociationAccessScopeOutput) Namespaces added in v6.18.2

The namespaces to which the access scope applies when type is namespace.

func (AccessPolicyAssociationAccessScopeOutput) ToAccessPolicyAssociationAccessScopeOutput added in v6.18.2

func (o AccessPolicyAssociationAccessScopeOutput) ToAccessPolicyAssociationAccessScopeOutput() AccessPolicyAssociationAccessScopeOutput

func (AccessPolicyAssociationAccessScopeOutput) ToAccessPolicyAssociationAccessScopeOutputWithContext added in v6.18.2

func (o AccessPolicyAssociationAccessScopeOutput) ToAccessPolicyAssociationAccessScopeOutputWithContext(ctx context.Context) AccessPolicyAssociationAccessScopeOutput

func (AccessPolicyAssociationAccessScopeOutput) ToAccessPolicyAssociationAccessScopePtrOutput added in v6.18.2

func (o AccessPolicyAssociationAccessScopeOutput) ToAccessPolicyAssociationAccessScopePtrOutput() AccessPolicyAssociationAccessScopePtrOutput

func (AccessPolicyAssociationAccessScopeOutput) ToAccessPolicyAssociationAccessScopePtrOutputWithContext added in v6.18.2

func (o AccessPolicyAssociationAccessScopeOutput) ToAccessPolicyAssociationAccessScopePtrOutputWithContext(ctx context.Context) AccessPolicyAssociationAccessScopePtrOutput

func (AccessPolicyAssociationAccessScopeOutput) Type added in v6.18.2

Valid values are `namespace` or `cluster`.

type AccessPolicyAssociationAccessScopePtrInput added in v6.18.2

type AccessPolicyAssociationAccessScopePtrInput interface {
	pulumi.Input

	ToAccessPolicyAssociationAccessScopePtrOutput() AccessPolicyAssociationAccessScopePtrOutput
	ToAccessPolicyAssociationAccessScopePtrOutputWithContext(context.Context) AccessPolicyAssociationAccessScopePtrOutput
}

AccessPolicyAssociationAccessScopePtrInput is an input type that accepts AccessPolicyAssociationAccessScopeArgs, AccessPolicyAssociationAccessScopePtr and AccessPolicyAssociationAccessScopePtrOutput values. You can construct a concrete instance of `AccessPolicyAssociationAccessScopePtrInput` via:

        AccessPolicyAssociationAccessScopeArgs{...}

or:

        nil

type AccessPolicyAssociationAccessScopePtrOutput added in v6.18.2

type AccessPolicyAssociationAccessScopePtrOutput struct{ *pulumi.OutputState }

func (AccessPolicyAssociationAccessScopePtrOutput) Elem added in v6.18.2

func (AccessPolicyAssociationAccessScopePtrOutput) ElementType added in v6.18.2

func (AccessPolicyAssociationAccessScopePtrOutput) Namespaces added in v6.18.2

The namespaces to which the access scope applies when type is namespace.

func (AccessPolicyAssociationAccessScopePtrOutput) ToAccessPolicyAssociationAccessScopePtrOutput added in v6.18.2

func (o AccessPolicyAssociationAccessScopePtrOutput) ToAccessPolicyAssociationAccessScopePtrOutput() AccessPolicyAssociationAccessScopePtrOutput

func (AccessPolicyAssociationAccessScopePtrOutput) ToAccessPolicyAssociationAccessScopePtrOutputWithContext added in v6.18.2

func (o AccessPolicyAssociationAccessScopePtrOutput) ToAccessPolicyAssociationAccessScopePtrOutputWithContext(ctx context.Context) AccessPolicyAssociationAccessScopePtrOutput

func (AccessPolicyAssociationAccessScopePtrOutput) Type added in v6.18.2

Valid values are `namespace` or `cluster`.

type AccessPolicyAssociationArgs added in v6.18.2

type AccessPolicyAssociationArgs struct {
	// The configuration block to determine the scope of the access. See `accessScope` Block below.
	AccessScope AccessPolicyAssociationAccessScopeInput
	// Name of the EKS Cluster.
	ClusterName pulumi.StringInput
	// The ARN of the access policy that you're associating.
	PolicyArn pulumi.StringInput
	// The IAM Principal ARN which requires Authentication access to the EKS cluster.
	PrincipalArn pulumi.StringInput
}

The set of arguments for constructing a AccessPolicyAssociation resource.

func (AccessPolicyAssociationArgs) ElementType added in v6.18.2

type AccessPolicyAssociationArray added in v6.18.2

type AccessPolicyAssociationArray []AccessPolicyAssociationInput

func (AccessPolicyAssociationArray) ElementType added in v6.18.2

func (AccessPolicyAssociationArray) ToAccessPolicyAssociationArrayOutput added in v6.18.2

func (i AccessPolicyAssociationArray) ToAccessPolicyAssociationArrayOutput() AccessPolicyAssociationArrayOutput

func (AccessPolicyAssociationArray) ToAccessPolicyAssociationArrayOutputWithContext added in v6.18.2

func (i AccessPolicyAssociationArray) ToAccessPolicyAssociationArrayOutputWithContext(ctx context.Context) AccessPolicyAssociationArrayOutput

type AccessPolicyAssociationArrayInput added in v6.18.2

type AccessPolicyAssociationArrayInput interface {
	pulumi.Input

	ToAccessPolicyAssociationArrayOutput() AccessPolicyAssociationArrayOutput
	ToAccessPolicyAssociationArrayOutputWithContext(context.Context) AccessPolicyAssociationArrayOutput
}

AccessPolicyAssociationArrayInput is an input type that accepts AccessPolicyAssociationArray and AccessPolicyAssociationArrayOutput values. You can construct a concrete instance of `AccessPolicyAssociationArrayInput` via:

AccessPolicyAssociationArray{ AccessPolicyAssociationArgs{...} }

type AccessPolicyAssociationArrayOutput added in v6.18.2

type AccessPolicyAssociationArrayOutput struct{ *pulumi.OutputState }

func (AccessPolicyAssociationArrayOutput) ElementType added in v6.18.2

func (AccessPolicyAssociationArrayOutput) Index added in v6.18.2

func (AccessPolicyAssociationArrayOutput) ToAccessPolicyAssociationArrayOutput added in v6.18.2

func (o AccessPolicyAssociationArrayOutput) ToAccessPolicyAssociationArrayOutput() AccessPolicyAssociationArrayOutput

func (AccessPolicyAssociationArrayOutput) ToAccessPolicyAssociationArrayOutputWithContext added in v6.18.2

func (o AccessPolicyAssociationArrayOutput) ToAccessPolicyAssociationArrayOutputWithContext(ctx context.Context) AccessPolicyAssociationArrayOutput

type AccessPolicyAssociationInput added in v6.18.2

type AccessPolicyAssociationInput interface {
	pulumi.Input

	ToAccessPolicyAssociationOutput() AccessPolicyAssociationOutput
	ToAccessPolicyAssociationOutputWithContext(ctx context.Context) AccessPolicyAssociationOutput
}

type AccessPolicyAssociationMap added in v6.18.2

type AccessPolicyAssociationMap map[string]AccessPolicyAssociationInput

func (AccessPolicyAssociationMap) ElementType added in v6.18.2

func (AccessPolicyAssociationMap) ElementType() reflect.Type

func (AccessPolicyAssociationMap) ToAccessPolicyAssociationMapOutput added in v6.18.2

func (i AccessPolicyAssociationMap) ToAccessPolicyAssociationMapOutput() AccessPolicyAssociationMapOutput

func (AccessPolicyAssociationMap) ToAccessPolicyAssociationMapOutputWithContext added in v6.18.2

func (i AccessPolicyAssociationMap) ToAccessPolicyAssociationMapOutputWithContext(ctx context.Context) AccessPolicyAssociationMapOutput

type AccessPolicyAssociationMapInput added in v6.18.2

type AccessPolicyAssociationMapInput interface {
	pulumi.Input

	ToAccessPolicyAssociationMapOutput() AccessPolicyAssociationMapOutput
	ToAccessPolicyAssociationMapOutputWithContext(context.Context) AccessPolicyAssociationMapOutput
}

AccessPolicyAssociationMapInput is an input type that accepts AccessPolicyAssociationMap and AccessPolicyAssociationMapOutput values. You can construct a concrete instance of `AccessPolicyAssociationMapInput` via:

AccessPolicyAssociationMap{ "key": AccessPolicyAssociationArgs{...} }

type AccessPolicyAssociationMapOutput added in v6.18.2

type AccessPolicyAssociationMapOutput struct{ *pulumi.OutputState }

func (AccessPolicyAssociationMapOutput) ElementType added in v6.18.2

func (AccessPolicyAssociationMapOutput) MapIndex added in v6.18.2

func (AccessPolicyAssociationMapOutput) ToAccessPolicyAssociationMapOutput added in v6.18.2

func (o AccessPolicyAssociationMapOutput) ToAccessPolicyAssociationMapOutput() AccessPolicyAssociationMapOutput

func (AccessPolicyAssociationMapOutput) ToAccessPolicyAssociationMapOutputWithContext added in v6.18.2

func (o AccessPolicyAssociationMapOutput) ToAccessPolicyAssociationMapOutputWithContext(ctx context.Context) AccessPolicyAssociationMapOutput

type AccessPolicyAssociationOutput added in v6.18.2

type AccessPolicyAssociationOutput struct{ *pulumi.OutputState }

func (AccessPolicyAssociationOutput) AccessScope added in v6.18.2

The configuration block to determine the scope of the access. See `accessScope` Block below.

func (AccessPolicyAssociationOutput) AssociatedAt added in v6.18.2

Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the policy was associated.

func (AccessPolicyAssociationOutput) ClusterName added in v6.18.2

Name of the EKS Cluster.

func (AccessPolicyAssociationOutput) ElementType added in v6.18.2

func (AccessPolicyAssociationOutput) ModifiedAt added in v6.18.2

Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the policy was updated.

func (AccessPolicyAssociationOutput) PolicyArn added in v6.18.2

The ARN of the access policy that you're associating.

func (AccessPolicyAssociationOutput) PrincipalArn added in v6.18.2

The IAM Principal ARN which requires Authentication access to the EKS cluster.

func (AccessPolicyAssociationOutput) ToAccessPolicyAssociationOutput added in v6.18.2

func (o AccessPolicyAssociationOutput) ToAccessPolicyAssociationOutput() AccessPolicyAssociationOutput

func (AccessPolicyAssociationOutput) ToAccessPolicyAssociationOutputWithContext added in v6.18.2

func (o AccessPolicyAssociationOutput) ToAccessPolicyAssociationOutputWithContext(ctx context.Context) AccessPolicyAssociationOutput

type AccessPolicyAssociationState added in v6.18.2

type AccessPolicyAssociationState struct {
	// The configuration block to determine the scope of the access. See `accessScope` Block below.
	AccessScope AccessPolicyAssociationAccessScopePtrInput
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the policy was associated.
	AssociatedAt pulumi.StringPtrInput
	// Name of the EKS Cluster.
	ClusterName pulumi.StringPtrInput
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the policy was updated.
	ModifiedAt pulumi.StringPtrInput
	// The ARN of the access policy that you're associating.
	PolicyArn pulumi.StringPtrInput
	// The IAM Principal ARN which requires Authentication access to the EKS cluster.
	PrincipalArn pulumi.StringPtrInput
}

func (AccessPolicyAssociationState) ElementType added in v6.18.2

type Addon

type Addon struct {
	pulumi.CustomResourceState

	// Name of the EKS add-on. The name must match one of
	// the names returned by [describe-addon-versions](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-versions.html).
	AddonName pulumi.StringOutput `pulumi:"addonName"`
	// The version of the EKS add-on. The version must
	// match one of the versions returned by [describe-addon-versions](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-versions.html).
	AddonVersion pulumi.StringOutput `pulumi:"addonVersion"`
	// Amazon Resource Name (ARN) of the EKS add-on.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Name of the EKS Cluster.
	//
	// The following arguments are optional:
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// custom configuration values for addons with single JSON string. This JSON string value must match the JSON schema derived from [describe-addon-configuration](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-configuration.html).
	ConfigurationValues pulumi.StringOutput `pulumi:"configurationValues"`
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was created.
	CreatedAt pulumi.StringOutput `pulumi:"createdAt"`
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was updated.
	ModifiedAt pulumi.StringOutput `pulumi:"modifiedAt"`
	// Indicates if you want to preserve the created resources when deleting the EKS add-on.
	Preserve pulumi.BoolPtrOutput `pulumi:"preserve"`
	// Define how to resolve parameter value conflicts when migrating an existing add-on to an Amazon EKS add-on or when applying version updates to the add-on. Valid values are `NONE`, `OVERWRITE` and `PRESERVE`. Note that `PRESERVE` is only valid on addon update, not for initial addon creation. If you need to set this to `PRESERVE`, use the `resolveConflictsOnCreate` and `resolveConflictsOnUpdate` attributes instead. For more details check [UpdateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html) API Docs.
	//
	// Deprecated: The "resolveConflicts" attribute can't be set to "PRESERVE" on initial resource creation. Use "resolveConflictsOnCreate" and/or "resolveConflictsOnUpdate" instead
	ResolveConflicts pulumi.StringPtrOutput `pulumi:"resolveConflicts"`
	// How to resolve field value conflicts when migrating a self-managed add-on to an Amazon EKS add-on. Valid values are `NONE` and `OVERWRITE`. For more details see the [CreateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_CreateAddon.html) API Docs.
	ResolveConflictsOnCreate pulumi.StringPtrOutput `pulumi:"resolveConflictsOnCreate"`
	// How to resolve field value conflicts for an Amazon EKS add-on if you've changed a value from the Amazon EKS default value. Valid values are `NONE`, `OVERWRITE`, and `PRESERVE`. For more details see the [UpdateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html) API Docs.
	ResolveConflictsOnUpdate pulumi.StringPtrOutput `pulumi:"resolveConflictsOnUpdate"`
	// 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.
	//
	// > **Note:** 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 pulumi.StringPtrOutput `pulumi:"serviceAccountRoleArn"`
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// (Optional) Key-value map of resource tags, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Manages an EKS add-on.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := eks.NewAddon(ctx, "example", &eks.AddonArgs{
			ClusterName: pulumi.Any(exampleAwsEksCluster.Name),
			AddonName:   pulumi.String("vpc-cni"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Example Update add-on usage with resolveConflictsOnUpdate and PRESERVE

`resolveConflictsOnUpdate` with `PRESERVE` can be used to retain the config changes applied to the add-on with kubectl while upgrading to a newer version of the add-on.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := eks.NewAddon(ctx, "example", &eks.AddonArgs{
			ClusterName:              pulumi.Any(exampleAwsEksCluster.Name),
			AddonName:                pulumi.String("coredns"),
			AddonVersion:             pulumi.String("v1.10.1-eksbuild.1"),
			ResolveConflictsOnUpdate: pulumi.String("PRESERVE"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Example add-on usage with custom configurationValues

Custom add-on configuration can be passed using `configurationValues` as a single JSON string while creating or updating the add-on.

> **Note:** `configurationValues` is a single JSON string should match the valid JSON schema for each add-on with specific version.

To find the correct JSON schema for each add-on can be extracted using [describe-addon-configuration](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-configuration.html) call. This below is an example for extracting the `configurationValues` schema for `coredns`.

Example to create a `coredns` managed addon with custom `configurationValues`.

```go package main

import (

"encoding/json"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"replicaCount": 4,
			"resources": map[string]interface{}{
				"limits": map[string]interface{}{
					"cpu":    "100m",
					"memory": "150Mi",
				},
				"requests": map[string]interface{}{
					"cpu":    "100m",
					"memory": "150Mi",
				},
			},
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		_, err = eks.NewAddon(ctx, "example", &eks.AddonArgs{
			ClusterName:              pulumi.String("mycluster"),
			AddonName:                pulumi.String("coredns"),
			AddonVersion:             pulumi.String("v1.10.1-eksbuild.1"),
			ResolveConflictsOnCreate: pulumi.String("OVERWRITE"),
			ConfigurationValues:      pulumi.String(json0),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Example IAM Role for EKS Addon "vpc-cni" with AWS managed policy

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi-tls/sdk/v4/go/tls"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleCluster, err := eks.NewCluster(ctx, "example", nil)
		if err != nil {
			return err
		}
		example := exampleCluster.Identities.ApplyT(func(identities []eks.ClusterIdentity) (tls.GetCertificateResult, error) {
			return tls.GetCertificateOutput(ctx, tls.GetCertificateOutputArgs{
				Url: identities[0].Oidcs[0].Issuer,
			}, nil), nil
		}).(tls.GetCertificateResultOutput)
		exampleOpenIdConnectProvider, err := iam.NewOpenIdConnectProvider(ctx, "example", &iam.OpenIdConnectProviderArgs{
			ClientIdLists: pulumi.StringArray{
				pulumi.String("sts.amazonaws.com"),
			},
			ThumbprintLists: pulumi.StringArray{
				example.ApplyT(func(example tls.GetCertificateResult) (*string, error) {
					return &example.Certificates[0].Sha1Fingerprint, nil
				}).(pulumi.StringPtrOutput),
			},
			Url: exampleCluster.Identities.ApplyT(func(identities []eks.ClusterIdentity) (*string, error) {
				return &identities[0].Oidcs[0].Issuer, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		exampleAssumeRolePolicy := iam.GetPolicyDocumentOutput(ctx, iam.GetPolicyDocumentOutputArgs{
			Statements: iam.GetPolicyDocumentStatementArray{
				&iam.GetPolicyDocumentStatementArgs{
					Actions: pulumi.StringArray{
						pulumi.String("sts:AssumeRoleWithWebIdentity"),
					},
					Effect: pulumi.String("Allow"),
					Conditions: iam.GetPolicyDocumentStatementConditionArray{
						&iam.GetPolicyDocumentStatementConditionArgs{
							Test: pulumi.String("StringEquals"),
							Variable: std.ReplaceOutput(ctx, std.ReplaceOutputArgs{
								Text:    exampleOpenIdConnectProvider.Url,
								Search:  pulumi.String("https://"),
								Replace: pulumi.String(""),
							}, nil).ApplyT(func(invoke std.ReplaceResult) (string, error) {
								return fmt.Sprintf("%v:sub", invoke.Result), nil
							}).(pulumi.StringOutput),
							Values: pulumi.StringArray{
								pulumi.String("system:serviceaccount:kube-system:aws-node"),
							},
						},
					},
					Principals: iam.GetPolicyDocumentStatementPrincipalArray{
						&iam.GetPolicyDocumentStatementPrincipalArgs{
							Identifiers: pulumi.StringArray{
								exampleOpenIdConnectProvider.Arn,
							},
							Type: pulumi.String("Federated"),
						},
					},
				},
			},
		}, nil)
		exampleRole, err := iam.NewRole(ctx, "example", &iam.RoleArgs{
			AssumeRolePolicy: exampleAssumeRolePolicy.ApplyT(func(exampleAssumeRolePolicy iam.GetPolicyDocumentResult) (*string, error) {
				return &exampleAssumeRolePolicy.Json, nil
			}).(pulumi.StringPtrOutput),
			Name: pulumi.String("example-vpc-cni-role"),
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "example", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy"),
			Role:      exampleRole.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import EKS add-on using the `cluster_name` and `addon_name` separated by a colon (`:`). For example:

```sh $ pulumi import aws:eks/addon:Addon my_eks_addon my_cluster_name:my_addon_name ```

func GetAddon

func GetAddon(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AddonState, opts ...pulumi.ResourceOption) (*Addon, error)

GetAddon gets an existing Addon resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewAddon

func NewAddon(ctx *pulumi.Context,
	name string, args *AddonArgs, opts ...pulumi.ResourceOption) (*Addon, error)

NewAddon registers a new resource with the given unique name, arguments, and options.

func (*Addon) ElementType

func (*Addon) ElementType() reflect.Type

func (*Addon) ToAddonOutput

func (i *Addon) ToAddonOutput() AddonOutput

func (*Addon) ToAddonOutputWithContext

func (i *Addon) ToAddonOutputWithContext(ctx context.Context) AddonOutput

type AddonArgs

type AddonArgs struct {
	// Name of the EKS add-on. The name must match one of
	// the names returned by [describe-addon-versions](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-versions.html).
	AddonName pulumi.StringInput
	// The version of the EKS add-on. The version must
	// match one of the versions returned by [describe-addon-versions](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-versions.html).
	AddonVersion pulumi.StringPtrInput
	// Name of the EKS Cluster.
	//
	// The following arguments are optional:
	ClusterName pulumi.StringInput
	// custom configuration values for addons with single JSON string. This JSON string value must match the JSON schema derived from [describe-addon-configuration](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-configuration.html).
	ConfigurationValues pulumi.StringPtrInput
	// Indicates if you want to preserve the created resources when deleting the EKS add-on.
	Preserve pulumi.BoolPtrInput
	// Define how to resolve parameter value conflicts when migrating an existing add-on to an Amazon EKS add-on or when applying version updates to the add-on. Valid values are `NONE`, `OVERWRITE` and `PRESERVE`. Note that `PRESERVE` is only valid on addon update, not for initial addon creation. If you need to set this to `PRESERVE`, use the `resolveConflictsOnCreate` and `resolveConflictsOnUpdate` attributes instead. For more details check [UpdateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html) API Docs.
	//
	// Deprecated: The "resolveConflicts" attribute can't be set to "PRESERVE" on initial resource creation. Use "resolveConflictsOnCreate" and/or "resolveConflictsOnUpdate" instead
	ResolveConflicts pulumi.StringPtrInput
	// How to resolve field value conflicts when migrating a self-managed add-on to an Amazon EKS add-on. Valid values are `NONE` and `OVERWRITE`. For more details see the [CreateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_CreateAddon.html) API Docs.
	ResolveConflictsOnCreate pulumi.StringPtrInput
	// How to resolve field value conflicts for an Amazon EKS add-on if you've changed a value from the Amazon EKS default value. Valid values are `NONE`, `OVERWRITE`, and `PRESERVE`. For more details see the [UpdateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html) API Docs.
	ResolveConflictsOnUpdate pulumi.StringPtrInput
	// 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.
	//
	// > **Note:** 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 pulumi.StringPtrInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Addon resource.

func (AddonArgs) ElementType

func (AddonArgs) ElementType() reflect.Type

type AddonArray

type AddonArray []AddonInput

func (AddonArray) ElementType

func (AddonArray) ElementType() reflect.Type

func (AddonArray) ToAddonArrayOutput

func (i AddonArray) ToAddonArrayOutput() AddonArrayOutput

func (AddonArray) ToAddonArrayOutputWithContext

func (i AddonArray) ToAddonArrayOutputWithContext(ctx context.Context) AddonArrayOutput

type AddonArrayInput

type AddonArrayInput interface {
	pulumi.Input

	ToAddonArrayOutput() AddonArrayOutput
	ToAddonArrayOutputWithContext(context.Context) AddonArrayOutput
}

AddonArrayInput is an input type that accepts AddonArray and AddonArrayOutput values. You can construct a concrete instance of `AddonArrayInput` via:

AddonArray{ AddonArgs{...} }

type AddonArrayOutput

type AddonArrayOutput struct{ *pulumi.OutputState }

func (AddonArrayOutput) ElementType

func (AddonArrayOutput) ElementType() reflect.Type

func (AddonArrayOutput) Index

func (AddonArrayOutput) ToAddonArrayOutput

func (o AddonArrayOutput) ToAddonArrayOutput() AddonArrayOutput

func (AddonArrayOutput) ToAddonArrayOutputWithContext

func (o AddonArrayOutput) ToAddonArrayOutputWithContext(ctx context.Context) AddonArrayOutput

type AddonInput

type AddonInput interface {
	pulumi.Input

	ToAddonOutput() AddonOutput
	ToAddonOutputWithContext(ctx context.Context) AddonOutput
}

type AddonMap

type AddonMap map[string]AddonInput

func (AddonMap) ElementType

func (AddonMap) ElementType() reflect.Type

func (AddonMap) ToAddonMapOutput

func (i AddonMap) ToAddonMapOutput() AddonMapOutput

func (AddonMap) ToAddonMapOutputWithContext

func (i AddonMap) ToAddonMapOutputWithContext(ctx context.Context) AddonMapOutput

type AddonMapInput

type AddonMapInput interface {
	pulumi.Input

	ToAddonMapOutput() AddonMapOutput
	ToAddonMapOutputWithContext(context.Context) AddonMapOutput
}

AddonMapInput is an input type that accepts AddonMap and AddonMapOutput values. You can construct a concrete instance of `AddonMapInput` via:

AddonMap{ "key": AddonArgs{...} }

type AddonMapOutput

type AddonMapOutput struct{ *pulumi.OutputState }

func (AddonMapOutput) ElementType

func (AddonMapOutput) ElementType() reflect.Type

func (AddonMapOutput) MapIndex

func (AddonMapOutput) ToAddonMapOutput

func (o AddonMapOutput) ToAddonMapOutput() AddonMapOutput

func (AddonMapOutput) ToAddonMapOutputWithContext

func (o AddonMapOutput) ToAddonMapOutputWithContext(ctx context.Context) AddonMapOutput

type AddonOutput

type AddonOutput struct{ *pulumi.OutputState }

func (AddonOutput) AddonName

func (o AddonOutput) AddonName() pulumi.StringOutput

Name of the EKS add-on. The name must match one of the names returned by [describe-addon-versions](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-versions.html).

func (AddonOutput) AddonVersion

func (o AddonOutput) AddonVersion() pulumi.StringOutput

The version of the EKS add-on. The version must match one of the versions returned by [describe-addon-versions](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-versions.html).

func (AddonOutput) Arn

Amazon Resource Name (ARN) of the EKS add-on.

func (AddonOutput) ClusterName

func (o AddonOutput) ClusterName() pulumi.StringOutput

Name of the EKS Cluster.

The following arguments are optional:

func (AddonOutput) ConfigurationValues

func (o AddonOutput) ConfigurationValues() pulumi.StringOutput

custom configuration values for addons with single JSON string. This JSON string value must match the JSON schema derived from [describe-addon-configuration](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-configuration.html).

func (AddonOutput) CreatedAt

func (o AddonOutput) CreatedAt() pulumi.StringOutput

Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was created.

func (AddonOutput) ElementType

func (AddonOutput) ElementType() reflect.Type

func (AddonOutput) ModifiedAt

func (o AddonOutput) ModifiedAt() pulumi.StringOutput

Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was updated.

func (AddonOutput) Preserve

func (o AddonOutput) Preserve() pulumi.BoolPtrOutput

Indicates if you want to preserve the created resources when deleting the EKS add-on.

func (AddonOutput) ResolveConflicts deprecated

func (o AddonOutput) ResolveConflicts() pulumi.StringPtrOutput

Define how to resolve parameter value conflicts when migrating an existing add-on to an Amazon EKS add-on or when applying version updates to the add-on. Valid values are `NONE`, `OVERWRITE` and `PRESERVE`. Note that `PRESERVE` is only valid on addon update, not for initial addon creation. If you need to set this to `PRESERVE`, use the `resolveConflictsOnCreate` and `resolveConflictsOnUpdate` attributes instead. For more details check [UpdateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html) API Docs.

Deprecated: The "resolveConflicts" attribute can't be set to "PRESERVE" on initial resource creation. Use "resolveConflictsOnCreate" and/or "resolveConflictsOnUpdate" instead

func (AddonOutput) ResolveConflictsOnCreate

func (o AddonOutput) ResolveConflictsOnCreate() pulumi.StringPtrOutput

How to resolve field value conflicts when migrating a self-managed add-on to an Amazon EKS add-on. Valid values are `NONE` and `OVERWRITE`. For more details see the [CreateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_CreateAddon.html) API Docs.

func (AddonOutput) ResolveConflictsOnUpdate

func (o AddonOutput) ResolveConflictsOnUpdate() pulumi.StringPtrOutput

How to resolve field value conflicts for an Amazon EKS add-on if you've changed a value from the Amazon EKS default value. Valid values are `NONE`, `OVERWRITE`, and `PRESERVE`. For more details see the [UpdateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html) API Docs.

func (AddonOutput) ServiceAccountRoleArn

func (o AddonOutput) ServiceAccountRoleArn() pulumi.StringPtrOutput

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.

> **Note:** 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.

func (AddonOutput) Tags

Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (AddonOutput) TagsAll deprecated

func (o AddonOutput) TagsAll() pulumi.StringMapOutput

(Optional) Key-value map of resource tags, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (AddonOutput) ToAddonOutput

func (o AddonOutput) ToAddonOutput() AddonOutput

func (AddonOutput) ToAddonOutputWithContext

func (o AddonOutput) ToAddonOutputWithContext(ctx context.Context) AddonOutput

type AddonState

type AddonState struct {
	// Name of the EKS add-on. The name must match one of
	// the names returned by [describe-addon-versions](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-versions.html).
	AddonName pulumi.StringPtrInput
	// The version of the EKS add-on. The version must
	// match one of the versions returned by [describe-addon-versions](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-versions.html).
	AddonVersion pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the EKS add-on.
	Arn pulumi.StringPtrInput
	// Name of the EKS Cluster.
	//
	// The following arguments are optional:
	ClusterName pulumi.StringPtrInput
	// custom configuration values for addons with single JSON string. This JSON string value must match the JSON schema derived from [describe-addon-configuration](https://docs.aws.amazon.com/cli/latest/reference/eks/describe-addon-configuration.html).
	ConfigurationValues pulumi.StringPtrInput
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was created.
	CreatedAt pulumi.StringPtrInput
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was updated.
	ModifiedAt pulumi.StringPtrInput
	// Indicates if you want to preserve the created resources when deleting the EKS add-on.
	Preserve pulumi.BoolPtrInput
	// Define how to resolve parameter value conflicts when migrating an existing add-on to an Amazon EKS add-on or when applying version updates to the add-on. Valid values are `NONE`, `OVERWRITE` and `PRESERVE`. Note that `PRESERVE` is only valid on addon update, not for initial addon creation. If you need to set this to `PRESERVE`, use the `resolveConflictsOnCreate` and `resolveConflictsOnUpdate` attributes instead. For more details check [UpdateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html) API Docs.
	//
	// Deprecated: The "resolveConflicts" attribute can't be set to "PRESERVE" on initial resource creation. Use "resolveConflictsOnCreate" and/or "resolveConflictsOnUpdate" instead
	ResolveConflicts pulumi.StringPtrInput
	// How to resolve field value conflicts when migrating a self-managed add-on to an Amazon EKS add-on. Valid values are `NONE` and `OVERWRITE`. For more details see the [CreateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_CreateAddon.html) API Docs.
	ResolveConflictsOnCreate pulumi.StringPtrInput
	// How to resolve field value conflicts for an Amazon EKS add-on if you've changed a value from the Amazon EKS default value. Valid values are `NONE`, `OVERWRITE`, and `PRESERVE`. For more details see the [UpdateAddon](https://docs.aws.amazon.com/eks/latest/APIReference/API_UpdateAddon.html) API Docs.
	ResolveConflictsOnUpdate pulumi.StringPtrInput
	// 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.
	//
	// > **Note:** 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 pulumi.StringPtrInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// (Optional) Key-value map of resource tags, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (AddonState) ElementType

func (AddonState) ElementType() reflect.Type

type Cluster

type Cluster struct {
	pulumi.CustomResourceState

	// Configuration block for the access config associated with your cluster, see [Amazon EKS Access Entries](https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html).
	AccessConfig ClusterAccessConfigOutput `pulumi:"accessConfig"`
	// ARN of the cluster.
	Arn                    pulumi.StringOutput                    `pulumi:"arn"`
	CertificateAuthorities ClusterCertificateAuthorityArrayOutput `pulumi:"certificateAuthorities"`
	// Attribute block containing `certificate-authority-data` for your cluster. Detailed below.
	CertificateAuthority ClusterCertificateAuthorityOutput `pulumi:"certificateAuthority"`
	// The ID of your local Amazon EKS cluster on the AWS Outpost. This attribute isn't available for an AWS EKS cluster on AWS cloud.
	ClusterId pulumi.StringOutput `pulumi:"clusterId"`
	// Unix epoch timestamp in seconds for when the cluster was created.
	CreatedAt              pulumi.StringOutput      `pulumi:"createdAt"`
	DefaultAddonsToRemoves pulumi.StringArrayOutput `pulumi:"defaultAddonsToRemoves"`
	// List of the desired control plane logging to enable. For more information, see [Amazon EKS Control Plane Logging](https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html).
	EnabledClusterLogTypes pulumi.StringArrayOutput `pulumi:"enabledClusterLogTypes"`
	// Configuration block with encryption configuration for the cluster. Only available on Kubernetes 1.13 and above clusters created after March 6, 2020. Detailed below.
	EncryptionConfig ClusterEncryptionConfigPtrOutput `pulumi:"encryptionConfig"`
	// Endpoint for your Kubernetes API server.
	Endpoint pulumi.StringOutput `pulumi:"endpoint"`
	// Attribute block containing identity provider information for your cluster. Only available on Kubernetes version 1.13 and 1.14 clusters created or upgraded on or after September 3, 2019. Detailed below.
	Identities ClusterIdentityArrayOutput `pulumi:"identities"`
	// Configuration block with kubernetes network configuration for the cluster. Detailed below. If removed, this provider will only perform drift detection if a configuration value is provided.
	KubernetesNetworkConfig ClusterKubernetesNetworkConfigOutput `pulumi:"kubernetesNetworkConfig"`
	// Name of the cluster. Must be between 1-100 characters in length. Must begin with an alphanumeric character, and must only contain alphanumeric characters, dashes and underscores (`^[0-9A-Za-z][A-Za-z0-9\-_]*$`).
	Name pulumi.StringOutput `pulumi:"name"`
	// Configuration block representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This block isn't available for creating Amazon EKS clusters on the AWS cloud.
	OutpostConfig ClusterOutpostConfigPtrOutput `pulumi:"outpostConfig"`
	// Platform version for the cluster.
	PlatformVersion pulumi.StringOutput `pulumi:"platformVersion"`
	// ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Ensure the resource configuration includes explicit dependencies on the IAM Role permissions by adding `dependsOn` if using the `iam.RolePolicy` resource or `iam.RolePolicyAttachment` resource, otherwise EKS cannot delete EKS managed EC2 infrastructure such as Security Groups on EKS Cluster deletion.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
	// Status of the EKS cluster. One of `CREATING`, `ACTIVE`, `DELETING`, `FAILED`.
	Status pulumi.StringOutput `pulumi:"status"`
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Desired Kubernetes master version. If you do not specify a value, the latest available version at resource creation is used and no upgrades will occur except those automatically triggered by EKS. The value must be configured and increased to upgrade the version when desired. Downgrades are not supported by EKS.
	Version pulumi.StringOutput `pulumi:"version"`
	// Configuration block for the VPC associated with your cluster. Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see [Cluster VPC Considerations](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. Detailed below. Also contains attributes detailed in the Attributes section.
	//
	// The following arguments are optional:
	VpcConfig ClusterVpcConfigOutput `pulumi:"vpcConfig"`
}

Manages an EKS Cluster.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := eks.NewCluster(ctx, "example", &eks.ClusterArgs{
			Name:    pulumi.String("example"),
			RoleArn: pulumi.Any(exampleAwsIamRole.Arn),
			VpcConfig: &eks.ClusterVpcConfigArgs{
				SubnetIds: pulumi.StringArray{
					example1.Id,
					example2.Id,
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			example_AmazonEKSClusterPolicy,
			example_AmazonEKSVPCResourceController,
		}))
		if err != nil {
			return err
		}
		ctx.Export("endpoint", example.Endpoint)
		ctx.Export("kubeconfig-certificate-authority-data", example.CertificateAuthority.ApplyT(func(certificateAuthority eks.ClusterCertificateAuthority) (*string, error) {
			return &certificateAuthority.Data, nil
		}).(pulumi.StringPtrOutput))
		return nil
	})
}

```

### Example IAM Role for EKS Cluster

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		assumeRole, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
			Statements: []iam.GetPolicyDocumentStatement{
				{
					Effect: pulumi.StringRef("Allow"),
					Principals: []iam.GetPolicyDocumentStatementPrincipal{
						{
							Type: "Service",
							Identifiers: []string{
								"eks.amazonaws.com",
							},
						},
					},
					Actions: []string{
						"sts:AssumeRole",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		example, err := iam.NewRole(ctx, "example", &iam.RoleArgs{
			Name:             pulumi.String("eks-cluster-example"),
			AssumeRolePolicy: pulumi.String(assumeRole.Json),
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "example-AmazonEKSClusterPolicy", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/AmazonEKSClusterPolicy"),
			Role:      example.Name,
		})
		if err != nil {
			return err
		}
		// Optionally, enable Security Groups for Pods
		// Reference: https://docs.aws.amazon.com/eks/latest/userguide/security-groups-for-pods.html
		_, err = iam.NewRolePolicyAttachment(ctx, "example-AmazonEKSVPCResourceController", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/AmazonEKSVPCResourceController"),
			Role:      example.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Enabling Control Plane Logging

[EKS Control Plane Logging](https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html) can be enabled via the `enabledClusterLogTypes` argument. To manage the CloudWatch Log Group retention period, the `cloudwatch.LogGroup` resource can be used.

> The below configuration uses [`dependsOn`](https://www.pulumi.com/docs/intro/concepts/programming-model/#dependson) to prevent ordering issues with EKS automatically creating the log group first and a variable for naming consistency. Other ordering and naming methodologies may be more appropriate for your environment.

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		clusterName := "example"
		if param := cfg.Get("clusterName"); param != "" {
			clusterName = param
		}
		exampleLogGroup, err := cloudwatch.NewLogGroup(ctx, "example", &cloudwatch.LogGroupArgs{
			Name:            pulumi.String(fmt.Sprintf("/aws/eks/%v/cluster", clusterName)),
			RetentionInDays: pulumi.Int(7),
		})
		if err != nil {
			return err
		}
		_, err = eks.NewCluster(ctx, "example", &eks.ClusterArgs{
			EnabledClusterLogTypes: pulumi.StringArray{
				pulumi.String("api"),
				pulumi.String("audit"),
			},
			Name: pulumi.String(clusterName),
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleLogGroup,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Enabling IAM Roles for Service Accounts

Only available on Kubernetes version 1.13 and 1.14 clusters created or upgraded on or after September 3, 2019. For more information about this feature, see the [EKS User Guide](https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html).

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi-tls/sdk/v4/go/tls"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleCluster, err := eks.NewCluster(ctx, "example", nil)
		if err != nil {
			return err
		}
		example := exampleCluster.Identities.ApplyT(func(identities []eks.ClusterIdentity) (tls.GetCertificateResult, error) {
			return tls.GetCertificateOutput(ctx, tls.GetCertificateOutputArgs{
				Url: identities[0].Oidcs[0].Issuer,
			}, nil), nil
		}).(tls.GetCertificateResultOutput)
		exampleOpenIdConnectProvider, err := iam.NewOpenIdConnectProvider(ctx, "example", &iam.OpenIdConnectProviderArgs{
			ClientIdLists: pulumi.StringArray{
				pulumi.String("sts.amazonaws.com"),
			},
			ThumbprintLists: pulumi.StringArray{
				example.ApplyT(func(example tls.GetCertificateResult) (*string, error) {
					return &example.Certificates[0].Sha1Fingerprint, nil
				}).(pulumi.StringPtrOutput),
			},
			Url: example.ApplyT(func(example tls.GetCertificateResult) (*string, error) {
				return &example.Url, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		exampleAssumeRolePolicy := iam.GetPolicyDocumentOutput(ctx, iam.GetPolicyDocumentOutputArgs{
			Statements: iam.GetPolicyDocumentStatementArray{
				&iam.GetPolicyDocumentStatementArgs{
					Actions: pulumi.StringArray{
						pulumi.String("sts:AssumeRoleWithWebIdentity"),
					},
					Effect: pulumi.String("Allow"),
					Conditions: iam.GetPolicyDocumentStatementConditionArray{
						&iam.GetPolicyDocumentStatementConditionArgs{
							Test: pulumi.String("StringEquals"),
							Variable: std.ReplaceOutput(ctx, std.ReplaceOutputArgs{
								Text:    exampleOpenIdConnectProvider.Url,
								Search:  pulumi.String("https://"),
								Replace: pulumi.String(""),
							}, nil).ApplyT(func(invoke std.ReplaceResult) (string, error) {
								return fmt.Sprintf("%v:sub", invoke.Result), nil
							}).(pulumi.StringOutput),
							Values: pulumi.StringArray{
								pulumi.String("system:serviceaccount:kube-system:aws-node"),
							},
						},
					},
					Principals: iam.GetPolicyDocumentStatementPrincipalArray{
						&iam.GetPolicyDocumentStatementPrincipalArgs{
							Identifiers: pulumi.StringArray{
								exampleOpenIdConnectProvider.Arn,
							},
							Type: pulumi.String("Federated"),
						},
					},
				},
			},
		}, nil)
		_, err = iam.NewRole(ctx, "example", &iam.RoleArgs{
			AssumeRolePolicy: exampleAssumeRolePolicy.ApplyT(func(exampleAssumeRolePolicy iam.GetPolicyDocumentResult) (*string, error) {
				return &exampleAssumeRolePolicy.Json, nil
			}).(pulumi.StringPtrOutput),
			Name: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### EKS Cluster on AWS Outpost

[Creating a local Amazon EKS cluster on an AWS Outpost](https://docs.aws.amazon.com/eks/latest/userguide/create-cluster-outpost.html)

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := iam.NewRole(ctx, "example", &iam.RoleArgs{
			AssumeRolePolicy: pulumi.Any(exampleAssumeRolePolicy.Json),
			Name:             pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		_, err = eks.NewCluster(ctx, "example", &eks.ClusterArgs{
			Name:    pulumi.String("example-cluster"),
			RoleArn: example.Arn,
			VpcConfig: &eks.ClusterVpcConfigArgs{
				EndpointPrivateAccess: pulumi.Bool(true),
				EndpointPublicAccess:  pulumi.Bool(false),
			},
			OutpostConfig: &eks.ClusterOutpostConfigArgs{
				ControlPlaneInstanceType: pulumi.String("m5d.large"),
				OutpostArns: pulumi.StringArray{
					exampleAwsOutpostsOutpost.Arn,
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### EKS Cluster with Access Config

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := iam.NewRole(ctx, "example", &iam.RoleArgs{
			AssumeRolePolicy: pulumi.Any(exampleAssumeRolePolicy.Json),
			Name:             pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		_, err = eks.NewCluster(ctx, "example", &eks.ClusterArgs{
			Name:    pulumi.String("example-cluster"),
			RoleArn: example.Arn,
			VpcConfig: &eks.ClusterVpcConfigArgs{
				EndpointPrivateAccess: pulumi.Bool(true),
				EndpointPublicAccess:  pulumi.Bool(false),
			},
			AccessConfig: &eks.ClusterAccessConfigArgs{
				AuthenticationMode:                      pulumi.String("CONFIG_MAP"),
				BootstrapClusterCreatorAdminPermissions: pulumi.Bool(true),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

After adding inline IAM Policies (e.g., `iam.RolePolicy` resource) or attaching IAM Policies (e.g., `iam.Policy` resource and `iam.RolePolicyAttachment` resource) with the desired permissions to the IAM Role, annotate the Kubernetes service account (e.g., `kubernetesServiceAccount` resource) and recreate any pods.

## Import

Using `pulumi import`, import EKS Clusters using the `name`. For example:

```sh $ pulumi import aws:eks/cluster:Cluster my_cluster my_cluster ```

func GetCluster

func GetCluster(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ClusterState, opts ...pulumi.ResourceOption) (*Cluster, error)

GetCluster gets an existing Cluster resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCluster

func NewCluster(ctx *pulumi.Context,
	name string, args *ClusterArgs, opts ...pulumi.ResourceOption) (*Cluster, error)

NewCluster registers a new resource with the given unique name, arguments, and options.

func (*Cluster) ElementType

func (*Cluster) ElementType() reflect.Type

func (*Cluster) ToClusterOutput

func (i *Cluster) ToClusterOutput() ClusterOutput

func (*Cluster) ToClusterOutputWithContext

func (i *Cluster) ToClusterOutputWithContext(ctx context.Context) ClusterOutput

type ClusterAccessConfig added in v6.18.2

type ClusterAccessConfig struct {
	// The authentication mode for the cluster. Valid values are `CONFIG_MAP`, `API` or `API_AND_CONFIG_MAP`
	AuthenticationMode *string `pulumi:"authenticationMode"`
	// Whether or not to bootstrap the access config values to the cluster. Default is `true`.
	BootstrapClusterCreatorAdminPermissions *bool `pulumi:"bootstrapClusterCreatorAdminPermissions"`
}

type ClusterAccessConfigArgs added in v6.18.2

type ClusterAccessConfigArgs struct {
	// The authentication mode for the cluster. Valid values are `CONFIG_MAP`, `API` or `API_AND_CONFIG_MAP`
	AuthenticationMode pulumi.StringPtrInput `pulumi:"authenticationMode"`
	// Whether or not to bootstrap the access config values to the cluster. Default is `true`.
	BootstrapClusterCreatorAdminPermissions pulumi.BoolPtrInput `pulumi:"bootstrapClusterCreatorAdminPermissions"`
}

func (ClusterAccessConfigArgs) ElementType added in v6.18.2

func (ClusterAccessConfigArgs) ElementType() reflect.Type

func (ClusterAccessConfigArgs) ToClusterAccessConfigOutput added in v6.18.2

func (i ClusterAccessConfigArgs) ToClusterAccessConfigOutput() ClusterAccessConfigOutput

func (ClusterAccessConfigArgs) ToClusterAccessConfigOutputWithContext added in v6.18.2

func (i ClusterAccessConfigArgs) ToClusterAccessConfigOutputWithContext(ctx context.Context) ClusterAccessConfigOutput

func (ClusterAccessConfigArgs) ToClusterAccessConfigPtrOutput added in v6.18.2

func (i ClusterAccessConfigArgs) ToClusterAccessConfigPtrOutput() ClusterAccessConfigPtrOutput

func (ClusterAccessConfigArgs) ToClusterAccessConfigPtrOutputWithContext added in v6.18.2

func (i ClusterAccessConfigArgs) ToClusterAccessConfigPtrOutputWithContext(ctx context.Context) ClusterAccessConfigPtrOutput

type ClusterAccessConfigInput added in v6.18.2

type ClusterAccessConfigInput interface {
	pulumi.Input

	ToClusterAccessConfigOutput() ClusterAccessConfigOutput
	ToClusterAccessConfigOutputWithContext(context.Context) ClusterAccessConfigOutput
}

ClusterAccessConfigInput is an input type that accepts ClusterAccessConfigArgs and ClusterAccessConfigOutput values. You can construct a concrete instance of `ClusterAccessConfigInput` via:

ClusterAccessConfigArgs{...}

type ClusterAccessConfigOutput added in v6.18.2

type ClusterAccessConfigOutput struct{ *pulumi.OutputState }

func (ClusterAccessConfigOutput) AuthenticationMode added in v6.18.2

func (o ClusterAccessConfigOutput) AuthenticationMode() pulumi.StringPtrOutput

The authentication mode for the cluster. Valid values are `CONFIG_MAP`, `API` or `API_AND_CONFIG_MAP`

func (ClusterAccessConfigOutput) BootstrapClusterCreatorAdminPermissions added in v6.18.2

func (o ClusterAccessConfigOutput) BootstrapClusterCreatorAdminPermissions() pulumi.BoolPtrOutput

Whether or not to bootstrap the access config values to the cluster. Default is `true`.

func (ClusterAccessConfigOutput) ElementType added in v6.18.2

func (ClusterAccessConfigOutput) ElementType() reflect.Type

func (ClusterAccessConfigOutput) ToClusterAccessConfigOutput added in v6.18.2

func (o ClusterAccessConfigOutput) ToClusterAccessConfigOutput() ClusterAccessConfigOutput

func (ClusterAccessConfigOutput) ToClusterAccessConfigOutputWithContext added in v6.18.2

func (o ClusterAccessConfigOutput) ToClusterAccessConfigOutputWithContext(ctx context.Context) ClusterAccessConfigOutput

func (ClusterAccessConfigOutput) ToClusterAccessConfigPtrOutput added in v6.18.2

func (o ClusterAccessConfigOutput) ToClusterAccessConfigPtrOutput() ClusterAccessConfigPtrOutput

func (ClusterAccessConfigOutput) ToClusterAccessConfigPtrOutputWithContext added in v6.18.2

func (o ClusterAccessConfigOutput) ToClusterAccessConfigPtrOutputWithContext(ctx context.Context) ClusterAccessConfigPtrOutput

type ClusterAccessConfigPtrInput added in v6.18.2

type ClusterAccessConfigPtrInput interface {
	pulumi.Input

	ToClusterAccessConfigPtrOutput() ClusterAccessConfigPtrOutput
	ToClusterAccessConfigPtrOutputWithContext(context.Context) ClusterAccessConfigPtrOutput
}

ClusterAccessConfigPtrInput is an input type that accepts ClusterAccessConfigArgs, ClusterAccessConfigPtr and ClusterAccessConfigPtrOutput values. You can construct a concrete instance of `ClusterAccessConfigPtrInput` via:

        ClusterAccessConfigArgs{...}

or:

        nil

func ClusterAccessConfigPtr added in v6.18.2

func ClusterAccessConfigPtr(v *ClusterAccessConfigArgs) ClusterAccessConfigPtrInput

type ClusterAccessConfigPtrOutput added in v6.18.2

type ClusterAccessConfigPtrOutput struct{ *pulumi.OutputState }

func (ClusterAccessConfigPtrOutput) AuthenticationMode added in v6.18.2

func (o ClusterAccessConfigPtrOutput) AuthenticationMode() pulumi.StringPtrOutput

The authentication mode for the cluster. Valid values are `CONFIG_MAP`, `API` or `API_AND_CONFIG_MAP`

func (ClusterAccessConfigPtrOutput) BootstrapClusterCreatorAdminPermissions added in v6.18.2

func (o ClusterAccessConfigPtrOutput) BootstrapClusterCreatorAdminPermissions() pulumi.BoolPtrOutput

Whether or not to bootstrap the access config values to the cluster. Default is `true`.

func (ClusterAccessConfigPtrOutput) Elem added in v6.18.2

func (ClusterAccessConfigPtrOutput) ElementType added in v6.18.2

func (ClusterAccessConfigPtrOutput) ToClusterAccessConfigPtrOutput added in v6.18.2

func (o ClusterAccessConfigPtrOutput) ToClusterAccessConfigPtrOutput() ClusterAccessConfigPtrOutput

func (ClusterAccessConfigPtrOutput) ToClusterAccessConfigPtrOutputWithContext added in v6.18.2

func (o ClusterAccessConfigPtrOutput) ToClusterAccessConfigPtrOutputWithContext(ctx context.Context) ClusterAccessConfigPtrOutput

type ClusterArgs

type ClusterArgs struct {
	// Configuration block for the access config associated with your cluster, see [Amazon EKS Access Entries](https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html).
	AccessConfig           ClusterAccessConfigPtrInput
	DefaultAddonsToRemoves pulumi.StringArrayInput
	// List of the desired control plane logging to enable. For more information, see [Amazon EKS Control Plane Logging](https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html).
	EnabledClusterLogTypes pulumi.StringArrayInput
	// Configuration block with encryption configuration for the cluster. Only available on Kubernetes 1.13 and above clusters created after March 6, 2020. Detailed below.
	EncryptionConfig ClusterEncryptionConfigPtrInput
	// Configuration block with kubernetes network configuration for the cluster. Detailed below. If removed, this provider will only perform drift detection if a configuration value is provided.
	KubernetesNetworkConfig ClusterKubernetesNetworkConfigPtrInput
	// Name of the cluster. Must be between 1-100 characters in length. Must begin with an alphanumeric character, and must only contain alphanumeric characters, dashes and underscores (`^[0-9A-Za-z][A-Za-z0-9\-_]*$`).
	Name pulumi.StringPtrInput
	// Configuration block representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This block isn't available for creating Amazon EKS clusters on the AWS cloud.
	OutpostConfig ClusterOutpostConfigPtrInput
	// ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Ensure the resource configuration includes explicit dependencies on the IAM Role permissions by adding `dependsOn` if using the `iam.RolePolicy` resource or `iam.RolePolicyAttachment` resource, otherwise EKS cannot delete EKS managed EC2 infrastructure such as Security Groups on EKS Cluster deletion.
	RoleArn pulumi.StringInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Desired Kubernetes master version. If you do not specify a value, the latest available version at resource creation is used and no upgrades will occur except those automatically triggered by EKS. The value must be configured and increased to upgrade the version when desired. Downgrades are not supported by EKS.
	Version pulumi.StringPtrInput
	// Configuration block for the VPC associated with your cluster. Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see [Cluster VPC Considerations](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. Detailed below. Also contains attributes detailed in the Attributes section.
	//
	// The following arguments are optional:
	VpcConfig ClusterVpcConfigInput
}

The set of arguments for constructing a Cluster resource.

func (ClusterArgs) ElementType

func (ClusterArgs) ElementType() reflect.Type

type ClusterArray

type ClusterArray []ClusterInput

func (ClusterArray) ElementType

func (ClusterArray) ElementType() reflect.Type

func (ClusterArray) ToClusterArrayOutput

func (i ClusterArray) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArray) ToClusterArrayOutputWithContext

func (i ClusterArray) ToClusterArrayOutputWithContext(ctx context.Context) ClusterArrayOutput

type ClusterArrayInput

type ClusterArrayInput interface {
	pulumi.Input

	ToClusterArrayOutput() ClusterArrayOutput
	ToClusterArrayOutputWithContext(context.Context) ClusterArrayOutput
}

ClusterArrayInput is an input type that accepts ClusterArray and ClusterArrayOutput values. You can construct a concrete instance of `ClusterArrayInput` via:

ClusterArray{ ClusterArgs{...} }

type ClusterArrayOutput

type ClusterArrayOutput struct{ *pulumi.OutputState }

func (ClusterArrayOutput) ElementType

func (ClusterArrayOutput) ElementType() reflect.Type

func (ClusterArrayOutput) Index

func (ClusterArrayOutput) ToClusterArrayOutput

func (o ClusterArrayOutput) ToClusterArrayOutput() ClusterArrayOutput

func (ClusterArrayOutput) ToClusterArrayOutputWithContext

func (o ClusterArrayOutput) ToClusterArrayOutputWithContext(ctx context.Context) ClusterArrayOutput

type ClusterCertificateAuthority

type ClusterCertificateAuthority struct {
	// Base64 encoded certificate data required to communicate with your cluster. Add this to the `certificate-authority-data` section of the `kubeconfig` file for your cluster.
	Data *string `pulumi:"data"`
}

type ClusterCertificateAuthorityArgs

type ClusterCertificateAuthorityArgs struct {
	// Base64 encoded certificate data required to communicate with your cluster. Add this to the `certificate-authority-data` section of the `kubeconfig` file for your cluster.
	Data pulumi.StringPtrInput `pulumi:"data"`
}

func (ClusterCertificateAuthorityArgs) ElementType

func (ClusterCertificateAuthorityArgs) ToClusterCertificateAuthorityOutput

func (i ClusterCertificateAuthorityArgs) ToClusterCertificateAuthorityOutput() ClusterCertificateAuthorityOutput

func (ClusterCertificateAuthorityArgs) ToClusterCertificateAuthorityOutputWithContext

func (i ClusterCertificateAuthorityArgs) ToClusterCertificateAuthorityOutputWithContext(ctx context.Context) ClusterCertificateAuthorityOutput

func (ClusterCertificateAuthorityArgs) ToClusterCertificateAuthorityPtrOutput

func (i ClusterCertificateAuthorityArgs) ToClusterCertificateAuthorityPtrOutput() ClusterCertificateAuthorityPtrOutput

func (ClusterCertificateAuthorityArgs) ToClusterCertificateAuthorityPtrOutputWithContext

func (i ClusterCertificateAuthorityArgs) ToClusterCertificateAuthorityPtrOutputWithContext(ctx context.Context) ClusterCertificateAuthorityPtrOutput

type ClusterCertificateAuthorityArray

type ClusterCertificateAuthorityArray []ClusterCertificateAuthorityInput

func (ClusterCertificateAuthorityArray) ElementType

func (ClusterCertificateAuthorityArray) ToClusterCertificateAuthorityArrayOutput

func (i ClusterCertificateAuthorityArray) ToClusterCertificateAuthorityArrayOutput() ClusterCertificateAuthorityArrayOutput

func (ClusterCertificateAuthorityArray) ToClusterCertificateAuthorityArrayOutputWithContext

func (i ClusterCertificateAuthorityArray) ToClusterCertificateAuthorityArrayOutputWithContext(ctx context.Context) ClusterCertificateAuthorityArrayOutput

type ClusterCertificateAuthorityArrayInput

type ClusterCertificateAuthorityArrayInput interface {
	pulumi.Input

	ToClusterCertificateAuthorityArrayOutput() ClusterCertificateAuthorityArrayOutput
	ToClusterCertificateAuthorityArrayOutputWithContext(context.Context) ClusterCertificateAuthorityArrayOutput
}

ClusterCertificateAuthorityArrayInput is an input type that accepts ClusterCertificateAuthorityArray and ClusterCertificateAuthorityArrayOutput values. You can construct a concrete instance of `ClusterCertificateAuthorityArrayInput` via:

ClusterCertificateAuthorityArray{ ClusterCertificateAuthorityArgs{...} }

type ClusterCertificateAuthorityArrayOutput

type ClusterCertificateAuthorityArrayOutput struct{ *pulumi.OutputState }

func (ClusterCertificateAuthorityArrayOutput) ElementType

func (ClusterCertificateAuthorityArrayOutput) Index

func (ClusterCertificateAuthorityArrayOutput) ToClusterCertificateAuthorityArrayOutput

func (o ClusterCertificateAuthorityArrayOutput) ToClusterCertificateAuthorityArrayOutput() ClusterCertificateAuthorityArrayOutput

func (ClusterCertificateAuthorityArrayOutput) ToClusterCertificateAuthorityArrayOutputWithContext

func (o ClusterCertificateAuthorityArrayOutput) ToClusterCertificateAuthorityArrayOutputWithContext(ctx context.Context) ClusterCertificateAuthorityArrayOutput

type ClusterCertificateAuthorityInput

type ClusterCertificateAuthorityInput interface {
	pulumi.Input

	ToClusterCertificateAuthorityOutput() ClusterCertificateAuthorityOutput
	ToClusterCertificateAuthorityOutputWithContext(context.Context) ClusterCertificateAuthorityOutput
}

ClusterCertificateAuthorityInput is an input type that accepts ClusterCertificateAuthorityArgs and ClusterCertificateAuthorityOutput values. You can construct a concrete instance of `ClusterCertificateAuthorityInput` via:

ClusterCertificateAuthorityArgs{...}

type ClusterCertificateAuthorityOutput

type ClusterCertificateAuthorityOutput struct{ *pulumi.OutputState }

func (ClusterCertificateAuthorityOutput) Data

Base64 encoded certificate data required to communicate with your cluster. Add this to the `certificate-authority-data` section of the `kubeconfig` file for your cluster.

func (ClusterCertificateAuthorityOutput) ElementType

func (ClusterCertificateAuthorityOutput) ToClusterCertificateAuthorityOutput

func (o ClusterCertificateAuthorityOutput) ToClusterCertificateAuthorityOutput() ClusterCertificateAuthorityOutput

func (ClusterCertificateAuthorityOutput) ToClusterCertificateAuthorityOutputWithContext

func (o ClusterCertificateAuthorityOutput) ToClusterCertificateAuthorityOutputWithContext(ctx context.Context) ClusterCertificateAuthorityOutput

func (ClusterCertificateAuthorityOutput) ToClusterCertificateAuthorityPtrOutput

func (o ClusterCertificateAuthorityOutput) ToClusterCertificateAuthorityPtrOutput() ClusterCertificateAuthorityPtrOutput

func (ClusterCertificateAuthorityOutput) ToClusterCertificateAuthorityPtrOutputWithContext

func (o ClusterCertificateAuthorityOutput) ToClusterCertificateAuthorityPtrOutputWithContext(ctx context.Context) ClusterCertificateAuthorityPtrOutput

type ClusterCertificateAuthorityPtrInput

type ClusterCertificateAuthorityPtrInput interface {
	pulumi.Input

	ToClusterCertificateAuthorityPtrOutput() ClusterCertificateAuthorityPtrOutput
	ToClusterCertificateAuthorityPtrOutputWithContext(context.Context) ClusterCertificateAuthorityPtrOutput
}

ClusterCertificateAuthorityPtrInput is an input type that accepts ClusterCertificateAuthorityArgs, ClusterCertificateAuthorityPtr and ClusterCertificateAuthorityPtrOutput values. You can construct a concrete instance of `ClusterCertificateAuthorityPtrInput` via:

        ClusterCertificateAuthorityArgs{...}

or:

        nil

type ClusterCertificateAuthorityPtrOutput

type ClusterCertificateAuthorityPtrOutput struct{ *pulumi.OutputState }

func (ClusterCertificateAuthorityPtrOutput) Data

Base64 encoded certificate data required to communicate with your cluster. Add this to the `certificate-authority-data` section of the `kubeconfig` file for your cluster.

func (ClusterCertificateAuthorityPtrOutput) Elem

func (ClusterCertificateAuthorityPtrOutput) ElementType

func (ClusterCertificateAuthorityPtrOutput) ToClusterCertificateAuthorityPtrOutput

func (o ClusterCertificateAuthorityPtrOutput) ToClusterCertificateAuthorityPtrOutput() ClusterCertificateAuthorityPtrOutput

func (ClusterCertificateAuthorityPtrOutput) ToClusterCertificateAuthorityPtrOutputWithContext

func (o ClusterCertificateAuthorityPtrOutput) ToClusterCertificateAuthorityPtrOutputWithContext(ctx context.Context) ClusterCertificateAuthorityPtrOutput

type ClusterEncryptionConfig

type ClusterEncryptionConfig struct {
	// Configuration block with provider for encryption. Detailed below.
	Provider ClusterEncryptionConfigProvider `pulumi:"provider"`
	// List of strings with resources to be encrypted. Valid values: `secrets`.
	Resources []string `pulumi:"resources"`
}

type ClusterEncryptionConfigArgs

type ClusterEncryptionConfigArgs struct {
	// Configuration block with provider for encryption. Detailed below.
	Provider ClusterEncryptionConfigProviderInput `pulumi:"provider"`
	// List of strings with resources to be encrypted. Valid values: `secrets`.
	Resources pulumi.StringArrayInput `pulumi:"resources"`
}

func (ClusterEncryptionConfigArgs) ElementType

func (ClusterEncryptionConfigArgs) ToClusterEncryptionConfigOutput

func (i ClusterEncryptionConfigArgs) ToClusterEncryptionConfigOutput() ClusterEncryptionConfigOutput

func (ClusterEncryptionConfigArgs) ToClusterEncryptionConfigOutputWithContext

func (i ClusterEncryptionConfigArgs) ToClusterEncryptionConfigOutputWithContext(ctx context.Context) ClusterEncryptionConfigOutput

func (ClusterEncryptionConfigArgs) ToClusterEncryptionConfigPtrOutput

func (i ClusterEncryptionConfigArgs) ToClusterEncryptionConfigPtrOutput() ClusterEncryptionConfigPtrOutput

func (ClusterEncryptionConfigArgs) ToClusterEncryptionConfigPtrOutputWithContext

func (i ClusterEncryptionConfigArgs) ToClusterEncryptionConfigPtrOutputWithContext(ctx context.Context) ClusterEncryptionConfigPtrOutput

type ClusterEncryptionConfigInput

type ClusterEncryptionConfigInput interface {
	pulumi.Input

	ToClusterEncryptionConfigOutput() ClusterEncryptionConfigOutput
	ToClusterEncryptionConfigOutputWithContext(context.Context) ClusterEncryptionConfigOutput
}

ClusterEncryptionConfigInput is an input type that accepts ClusterEncryptionConfigArgs and ClusterEncryptionConfigOutput values. You can construct a concrete instance of `ClusterEncryptionConfigInput` via:

ClusterEncryptionConfigArgs{...}

type ClusterEncryptionConfigOutput

type ClusterEncryptionConfigOutput struct{ *pulumi.OutputState }

func (ClusterEncryptionConfigOutput) ElementType

func (ClusterEncryptionConfigOutput) Provider

Configuration block with provider for encryption. Detailed below.

func (ClusterEncryptionConfigOutput) Resources

List of strings with resources to be encrypted. Valid values: `secrets`.

func (ClusterEncryptionConfigOutput) ToClusterEncryptionConfigOutput

func (o ClusterEncryptionConfigOutput) ToClusterEncryptionConfigOutput() ClusterEncryptionConfigOutput

func (ClusterEncryptionConfigOutput) ToClusterEncryptionConfigOutputWithContext

func (o ClusterEncryptionConfigOutput) ToClusterEncryptionConfigOutputWithContext(ctx context.Context) ClusterEncryptionConfigOutput

func (ClusterEncryptionConfigOutput) ToClusterEncryptionConfigPtrOutput

func (o ClusterEncryptionConfigOutput) ToClusterEncryptionConfigPtrOutput() ClusterEncryptionConfigPtrOutput

func (ClusterEncryptionConfigOutput) ToClusterEncryptionConfigPtrOutputWithContext

func (o ClusterEncryptionConfigOutput) ToClusterEncryptionConfigPtrOutputWithContext(ctx context.Context) ClusterEncryptionConfigPtrOutput

type ClusterEncryptionConfigProvider

type ClusterEncryptionConfigProvider struct {
	// ARN of the Key Management Service (KMS) customer master key (CMK). The CMK must be symmetric, created in the same region as the cluster, and if the CMK was created in a different account, the user must have access to the CMK. For more information, see [Allowing Users in Other Accounts to Use a CMK in the AWS Key Management Service Developer Guide](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html).
	KeyArn string `pulumi:"keyArn"`
}

type ClusterEncryptionConfigProviderArgs

type ClusterEncryptionConfigProviderArgs struct {
	// ARN of the Key Management Service (KMS) customer master key (CMK). The CMK must be symmetric, created in the same region as the cluster, and if the CMK was created in a different account, the user must have access to the CMK. For more information, see [Allowing Users in Other Accounts to Use a CMK in the AWS Key Management Service Developer Guide](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html).
	KeyArn pulumi.StringInput `pulumi:"keyArn"`
}

func (ClusterEncryptionConfigProviderArgs) ElementType

func (ClusterEncryptionConfigProviderArgs) ToClusterEncryptionConfigProviderOutput

func (i ClusterEncryptionConfigProviderArgs) ToClusterEncryptionConfigProviderOutput() ClusterEncryptionConfigProviderOutput

func (ClusterEncryptionConfigProviderArgs) ToClusterEncryptionConfigProviderOutputWithContext

func (i ClusterEncryptionConfigProviderArgs) ToClusterEncryptionConfigProviderOutputWithContext(ctx context.Context) ClusterEncryptionConfigProviderOutput

func (ClusterEncryptionConfigProviderArgs) ToClusterEncryptionConfigProviderPtrOutput

func (i ClusterEncryptionConfigProviderArgs) ToClusterEncryptionConfigProviderPtrOutput() ClusterEncryptionConfigProviderPtrOutput

func (ClusterEncryptionConfigProviderArgs) ToClusterEncryptionConfigProviderPtrOutputWithContext

func (i ClusterEncryptionConfigProviderArgs) ToClusterEncryptionConfigProviderPtrOutputWithContext(ctx context.Context) ClusterEncryptionConfigProviderPtrOutput

type ClusterEncryptionConfigProviderInput

type ClusterEncryptionConfigProviderInput interface {
	pulumi.Input

	ToClusterEncryptionConfigProviderOutput() ClusterEncryptionConfigProviderOutput
	ToClusterEncryptionConfigProviderOutputWithContext(context.Context) ClusterEncryptionConfigProviderOutput
}

ClusterEncryptionConfigProviderInput is an input type that accepts ClusterEncryptionConfigProviderArgs and ClusterEncryptionConfigProviderOutput values. You can construct a concrete instance of `ClusterEncryptionConfigProviderInput` via:

ClusterEncryptionConfigProviderArgs{...}

type ClusterEncryptionConfigProviderOutput

type ClusterEncryptionConfigProviderOutput struct{ *pulumi.OutputState }

func (ClusterEncryptionConfigProviderOutput) ElementType

func (ClusterEncryptionConfigProviderOutput) KeyArn

ARN of the Key Management Service (KMS) customer master key (CMK). The CMK must be symmetric, created in the same region as the cluster, and if the CMK was created in a different account, the user must have access to the CMK. For more information, see [Allowing Users in Other Accounts to Use a CMK in the AWS Key Management Service Developer Guide](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html).

func (ClusterEncryptionConfigProviderOutput) ToClusterEncryptionConfigProviderOutput

func (o ClusterEncryptionConfigProviderOutput) ToClusterEncryptionConfigProviderOutput() ClusterEncryptionConfigProviderOutput

func (ClusterEncryptionConfigProviderOutput) ToClusterEncryptionConfigProviderOutputWithContext

func (o ClusterEncryptionConfigProviderOutput) ToClusterEncryptionConfigProviderOutputWithContext(ctx context.Context) ClusterEncryptionConfigProviderOutput

func (ClusterEncryptionConfigProviderOutput) ToClusterEncryptionConfigProviderPtrOutput

func (o ClusterEncryptionConfigProviderOutput) ToClusterEncryptionConfigProviderPtrOutput() ClusterEncryptionConfigProviderPtrOutput

func (ClusterEncryptionConfigProviderOutput) ToClusterEncryptionConfigProviderPtrOutputWithContext

func (o ClusterEncryptionConfigProviderOutput) ToClusterEncryptionConfigProviderPtrOutputWithContext(ctx context.Context) ClusterEncryptionConfigProviderPtrOutput

type ClusterEncryptionConfigProviderPtrInput

type ClusterEncryptionConfigProviderPtrInput interface {
	pulumi.Input

	ToClusterEncryptionConfigProviderPtrOutput() ClusterEncryptionConfigProviderPtrOutput
	ToClusterEncryptionConfigProviderPtrOutputWithContext(context.Context) ClusterEncryptionConfigProviderPtrOutput
}

ClusterEncryptionConfigProviderPtrInput is an input type that accepts ClusterEncryptionConfigProviderArgs, ClusterEncryptionConfigProviderPtr and ClusterEncryptionConfigProviderPtrOutput values. You can construct a concrete instance of `ClusterEncryptionConfigProviderPtrInput` via:

        ClusterEncryptionConfigProviderArgs{...}

or:

        nil

type ClusterEncryptionConfigProviderPtrOutput

type ClusterEncryptionConfigProviderPtrOutput struct{ *pulumi.OutputState }

func (ClusterEncryptionConfigProviderPtrOutput) Elem

func (ClusterEncryptionConfigProviderPtrOutput) ElementType

func (ClusterEncryptionConfigProviderPtrOutput) KeyArn

ARN of the Key Management Service (KMS) customer master key (CMK). The CMK must be symmetric, created in the same region as the cluster, and if the CMK was created in a different account, the user must have access to the CMK. For more information, see [Allowing Users in Other Accounts to Use a CMK in the AWS Key Management Service Developer Guide](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html).

func (ClusterEncryptionConfigProviderPtrOutput) ToClusterEncryptionConfigProviderPtrOutput

func (o ClusterEncryptionConfigProviderPtrOutput) ToClusterEncryptionConfigProviderPtrOutput() ClusterEncryptionConfigProviderPtrOutput

func (ClusterEncryptionConfigProviderPtrOutput) ToClusterEncryptionConfigProviderPtrOutputWithContext

func (o ClusterEncryptionConfigProviderPtrOutput) ToClusterEncryptionConfigProviderPtrOutputWithContext(ctx context.Context) ClusterEncryptionConfigProviderPtrOutput

type ClusterEncryptionConfigPtrInput

type ClusterEncryptionConfigPtrInput interface {
	pulumi.Input

	ToClusterEncryptionConfigPtrOutput() ClusterEncryptionConfigPtrOutput
	ToClusterEncryptionConfigPtrOutputWithContext(context.Context) ClusterEncryptionConfigPtrOutput
}

ClusterEncryptionConfigPtrInput is an input type that accepts ClusterEncryptionConfigArgs, ClusterEncryptionConfigPtr and ClusterEncryptionConfigPtrOutput values. You can construct a concrete instance of `ClusterEncryptionConfigPtrInput` via:

        ClusterEncryptionConfigArgs{...}

or:

        nil

type ClusterEncryptionConfigPtrOutput

type ClusterEncryptionConfigPtrOutput struct{ *pulumi.OutputState }

func (ClusterEncryptionConfigPtrOutput) Elem

func (ClusterEncryptionConfigPtrOutput) ElementType

func (ClusterEncryptionConfigPtrOutput) Provider

Configuration block with provider for encryption. Detailed below.

func (ClusterEncryptionConfigPtrOutput) Resources

List of strings with resources to be encrypted. Valid values: `secrets`.

func (ClusterEncryptionConfigPtrOutput) ToClusterEncryptionConfigPtrOutput

func (o ClusterEncryptionConfigPtrOutput) ToClusterEncryptionConfigPtrOutput() ClusterEncryptionConfigPtrOutput

func (ClusterEncryptionConfigPtrOutput) ToClusterEncryptionConfigPtrOutputWithContext

func (o ClusterEncryptionConfigPtrOutput) ToClusterEncryptionConfigPtrOutputWithContext(ctx context.Context) ClusterEncryptionConfigPtrOutput

type ClusterIdentity

type ClusterIdentity struct {
	// Nested block containing [OpenID Connect](https://openid.net/connect/) identity provider information for the cluster. Detailed below.
	Oidcs []ClusterIdentityOidc `pulumi:"oidcs"`
}

type ClusterIdentityArgs

type ClusterIdentityArgs struct {
	// Nested block containing [OpenID Connect](https://openid.net/connect/) identity provider information for the cluster. Detailed below.
	Oidcs ClusterIdentityOidcArrayInput `pulumi:"oidcs"`
}

func (ClusterIdentityArgs) ElementType

func (ClusterIdentityArgs) ElementType() reflect.Type

func (ClusterIdentityArgs) ToClusterIdentityOutput

func (i ClusterIdentityArgs) ToClusterIdentityOutput() ClusterIdentityOutput

func (ClusterIdentityArgs) ToClusterIdentityOutputWithContext

func (i ClusterIdentityArgs) ToClusterIdentityOutputWithContext(ctx context.Context) ClusterIdentityOutput

type ClusterIdentityArray

type ClusterIdentityArray []ClusterIdentityInput

func (ClusterIdentityArray) ElementType

func (ClusterIdentityArray) ElementType() reflect.Type

func (ClusterIdentityArray) ToClusterIdentityArrayOutput

func (i ClusterIdentityArray) ToClusterIdentityArrayOutput() ClusterIdentityArrayOutput

func (ClusterIdentityArray) ToClusterIdentityArrayOutputWithContext

func (i ClusterIdentityArray) ToClusterIdentityArrayOutputWithContext(ctx context.Context) ClusterIdentityArrayOutput

type ClusterIdentityArrayInput

type ClusterIdentityArrayInput interface {
	pulumi.Input

	ToClusterIdentityArrayOutput() ClusterIdentityArrayOutput
	ToClusterIdentityArrayOutputWithContext(context.Context) ClusterIdentityArrayOutput
}

ClusterIdentityArrayInput is an input type that accepts ClusterIdentityArray and ClusterIdentityArrayOutput values. You can construct a concrete instance of `ClusterIdentityArrayInput` via:

ClusterIdentityArray{ ClusterIdentityArgs{...} }

type ClusterIdentityArrayOutput

type ClusterIdentityArrayOutput struct{ *pulumi.OutputState }

func (ClusterIdentityArrayOutput) ElementType

func (ClusterIdentityArrayOutput) ElementType() reflect.Type

func (ClusterIdentityArrayOutput) Index

func (ClusterIdentityArrayOutput) ToClusterIdentityArrayOutput

func (o ClusterIdentityArrayOutput) ToClusterIdentityArrayOutput() ClusterIdentityArrayOutput

func (ClusterIdentityArrayOutput) ToClusterIdentityArrayOutputWithContext

func (o ClusterIdentityArrayOutput) ToClusterIdentityArrayOutputWithContext(ctx context.Context) ClusterIdentityArrayOutput

type ClusterIdentityInput

type ClusterIdentityInput interface {
	pulumi.Input

	ToClusterIdentityOutput() ClusterIdentityOutput
	ToClusterIdentityOutputWithContext(context.Context) ClusterIdentityOutput
}

ClusterIdentityInput is an input type that accepts ClusterIdentityArgs and ClusterIdentityOutput values. You can construct a concrete instance of `ClusterIdentityInput` via:

ClusterIdentityArgs{...}

type ClusterIdentityOidc

type ClusterIdentityOidc struct {
	// Issuer URL for the OpenID Connect identity provider.
	Issuer *string `pulumi:"issuer"`
}

type ClusterIdentityOidcArgs

type ClusterIdentityOidcArgs struct {
	// Issuer URL for the OpenID Connect identity provider.
	Issuer pulumi.StringPtrInput `pulumi:"issuer"`
}

func (ClusterIdentityOidcArgs) ElementType

func (ClusterIdentityOidcArgs) ElementType() reflect.Type

func (ClusterIdentityOidcArgs) ToClusterIdentityOidcOutput

func (i ClusterIdentityOidcArgs) ToClusterIdentityOidcOutput() ClusterIdentityOidcOutput

func (ClusterIdentityOidcArgs) ToClusterIdentityOidcOutputWithContext

func (i ClusterIdentityOidcArgs) ToClusterIdentityOidcOutputWithContext(ctx context.Context) ClusterIdentityOidcOutput

type ClusterIdentityOidcArray

type ClusterIdentityOidcArray []ClusterIdentityOidcInput

func (ClusterIdentityOidcArray) ElementType

func (ClusterIdentityOidcArray) ElementType() reflect.Type

func (ClusterIdentityOidcArray) ToClusterIdentityOidcArrayOutput

func (i ClusterIdentityOidcArray) ToClusterIdentityOidcArrayOutput() ClusterIdentityOidcArrayOutput

func (ClusterIdentityOidcArray) ToClusterIdentityOidcArrayOutputWithContext

func (i ClusterIdentityOidcArray) ToClusterIdentityOidcArrayOutputWithContext(ctx context.Context) ClusterIdentityOidcArrayOutput

type ClusterIdentityOidcArrayInput

type ClusterIdentityOidcArrayInput interface {
	pulumi.Input

	ToClusterIdentityOidcArrayOutput() ClusterIdentityOidcArrayOutput
	ToClusterIdentityOidcArrayOutputWithContext(context.Context) ClusterIdentityOidcArrayOutput
}

ClusterIdentityOidcArrayInput is an input type that accepts ClusterIdentityOidcArray and ClusterIdentityOidcArrayOutput values. You can construct a concrete instance of `ClusterIdentityOidcArrayInput` via:

ClusterIdentityOidcArray{ ClusterIdentityOidcArgs{...} }

type ClusterIdentityOidcArrayOutput

type ClusterIdentityOidcArrayOutput struct{ *pulumi.OutputState }

func (ClusterIdentityOidcArrayOutput) ElementType

func (ClusterIdentityOidcArrayOutput) Index

func (ClusterIdentityOidcArrayOutput) ToClusterIdentityOidcArrayOutput

func (o ClusterIdentityOidcArrayOutput) ToClusterIdentityOidcArrayOutput() ClusterIdentityOidcArrayOutput

func (ClusterIdentityOidcArrayOutput) ToClusterIdentityOidcArrayOutputWithContext

func (o ClusterIdentityOidcArrayOutput) ToClusterIdentityOidcArrayOutputWithContext(ctx context.Context) ClusterIdentityOidcArrayOutput

type ClusterIdentityOidcInput

type ClusterIdentityOidcInput interface {
	pulumi.Input

	ToClusterIdentityOidcOutput() ClusterIdentityOidcOutput
	ToClusterIdentityOidcOutputWithContext(context.Context) ClusterIdentityOidcOutput
}

ClusterIdentityOidcInput is an input type that accepts ClusterIdentityOidcArgs and ClusterIdentityOidcOutput values. You can construct a concrete instance of `ClusterIdentityOidcInput` via:

ClusterIdentityOidcArgs{...}

type ClusterIdentityOidcOutput

type ClusterIdentityOidcOutput struct{ *pulumi.OutputState }

func (ClusterIdentityOidcOutput) ElementType

func (ClusterIdentityOidcOutput) ElementType() reflect.Type

func (ClusterIdentityOidcOutput) Issuer

Issuer URL for the OpenID Connect identity provider.

func (ClusterIdentityOidcOutput) ToClusterIdentityOidcOutput

func (o ClusterIdentityOidcOutput) ToClusterIdentityOidcOutput() ClusterIdentityOidcOutput

func (ClusterIdentityOidcOutput) ToClusterIdentityOidcOutputWithContext

func (o ClusterIdentityOidcOutput) ToClusterIdentityOidcOutputWithContext(ctx context.Context) ClusterIdentityOidcOutput

type ClusterIdentityOutput

type ClusterIdentityOutput struct{ *pulumi.OutputState }

func (ClusterIdentityOutput) ElementType

func (ClusterIdentityOutput) ElementType() reflect.Type

func (ClusterIdentityOutput) Oidcs

Nested block containing [OpenID Connect](https://openid.net/connect/) identity provider information for the cluster. Detailed below.

func (ClusterIdentityOutput) ToClusterIdentityOutput

func (o ClusterIdentityOutput) ToClusterIdentityOutput() ClusterIdentityOutput

func (ClusterIdentityOutput) ToClusterIdentityOutputWithContext

func (o ClusterIdentityOutput) ToClusterIdentityOutputWithContext(ctx context.Context) ClusterIdentityOutput

type ClusterInput

type ClusterInput interface {
	pulumi.Input

	ToClusterOutput() ClusterOutput
	ToClusterOutputWithContext(ctx context.Context) ClusterOutput
}

type ClusterKubernetesNetworkConfig

type ClusterKubernetesNetworkConfig struct {
	// The IP family used to assign Kubernetes pod and service addresses. Valid values are `ipv4` (default) and `ipv6`. You can only specify an IP family when you create a cluster, changing this value will force a new cluster to be created.
	IpFamily *string `pulumi:"ipFamily"`
	// The CIDR block to assign Kubernetes pod and service IP addresses from. If you don't specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. We recommend that you specify a block that does not overlap with resources in other networks that are peered or connected to your VPC. You can only specify a custom CIDR block when you create a cluster, changing this value will force a new cluster to be created. The block must meet the following requirements:
	//
	// * Within one of the following private IP address blocks: 10.0.0.0/8, 172.16.0.0/12, or 192.168.0.0/16.
	//
	// * Doesn't overlap with any CIDR block assigned to the VPC that you selected for VPC.
	//
	// * Between /24 and /12.
	ServiceIpv4Cidr *string `pulumi:"serviceIpv4Cidr"`
	// The CIDR block that Kubernetes pod and service IP addresses are assigned from if you specified `ipv6` for ipFamily when you created the cluster. Kubernetes assigns service addresses from the unique local address range (fc00::/7) because you can't specify a custom IPv6 CIDR block when you create the cluster.
	ServiceIpv6Cidr *string `pulumi:"serviceIpv6Cidr"`
}

type ClusterKubernetesNetworkConfigArgs

type ClusterKubernetesNetworkConfigArgs struct {
	// The IP family used to assign Kubernetes pod and service addresses. Valid values are `ipv4` (default) and `ipv6`. You can only specify an IP family when you create a cluster, changing this value will force a new cluster to be created.
	IpFamily pulumi.StringPtrInput `pulumi:"ipFamily"`
	// The CIDR block to assign Kubernetes pod and service IP addresses from. If you don't specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks. We recommend that you specify a block that does not overlap with resources in other networks that are peered or connected to your VPC. You can only specify a custom CIDR block when you create a cluster, changing this value will force a new cluster to be created. The block must meet the following requirements:
	//
	// * Within one of the following private IP address blocks: 10.0.0.0/8, 172.16.0.0/12, or 192.168.0.0/16.
	//
	// * Doesn't overlap with any CIDR block assigned to the VPC that you selected for VPC.
	//
	// * Between /24 and /12.
	ServiceIpv4Cidr pulumi.StringPtrInput `pulumi:"serviceIpv4Cidr"`
	// The CIDR block that Kubernetes pod and service IP addresses are assigned from if you specified `ipv6` for ipFamily when you created the cluster. Kubernetes assigns service addresses from the unique local address range (fc00::/7) because you can't specify a custom IPv6 CIDR block when you create the cluster.
	ServiceIpv6Cidr pulumi.StringPtrInput `pulumi:"serviceIpv6Cidr"`
}

func (ClusterKubernetesNetworkConfigArgs) ElementType

func (ClusterKubernetesNetworkConfigArgs) ToClusterKubernetesNetworkConfigOutput

func (i ClusterKubernetesNetworkConfigArgs) ToClusterKubernetesNetworkConfigOutput() ClusterKubernetesNetworkConfigOutput

func (ClusterKubernetesNetworkConfigArgs) ToClusterKubernetesNetworkConfigOutputWithContext

func (i ClusterKubernetesNetworkConfigArgs) ToClusterKubernetesNetworkConfigOutputWithContext(ctx context.Context) ClusterKubernetesNetworkConfigOutput

func (ClusterKubernetesNetworkConfigArgs) ToClusterKubernetesNetworkConfigPtrOutput

func (i ClusterKubernetesNetworkConfigArgs) ToClusterKubernetesNetworkConfigPtrOutput() ClusterKubernetesNetworkConfigPtrOutput

func (ClusterKubernetesNetworkConfigArgs) ToClusterKubernetesNetworkConfigPtrOutputWithContext

func (i ClusterKubernetesNetworkConfigArgs) ToClusterKubernetesNetworkConfigPtrOutputWithContext(ctx context.Context) ClusterKubernetesNetworkConfigPtrOutput

type ClusterKubernetesNetworkConfigInput

type ClusterKubernetesNetworkConfigInput interface {
	pulumi.Input

	ToClusterKubernetesNetworkConfigOutput() ClusterKubernetesNetworkConfigOutput
	ToClusterKubernetesNetworkConfigOutputWithContext(context.Context) ClusterKubernetesNetworkConfigOutput
}

ClusterKubernetesNetworkConfigInput is an input type that accepts ClusterKubernetesNetworkConfigArgs and ClusterKubernetesNetworkConfigOutput values. You can construct a concrete instance of `ClusterKubernetesNetworkConfigInput` via:

ClusterKubernetesNetworkConfigArgs{...}

type ClusterKubernetesNetworkConfigOutput

type ClusterKubernetesNetworkConfigOutput struct{ *pulumi.OutputState }

func (ClusterKubernetesNetworkConfigOutput) ElementType

func (ClusterKubernetesNetworkConfigOutput) IpFamily

The IP family used to assign Kubernetes pod and service addresses. Valid values are `ipv4` (default) and `ipv6`. You can only specify an IP family when you create a cluster, changing this value will force a new cluster to be created.

func (ClusterKubernetesNetworkConfigOutput) ServiceIpv4Cidr

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

* Within one of the following private IP address blocks: 10.0.0.0/8, 172.16.0.0/12, or 192.168.0.0/16.

* Doesn't overlap with any CIDR block assigned to the VPC that you selected for VPC.

* Between /24 and /12.

func (ClusterKubernetesNetworkConfigOutput) ServiceIpv6Cidr

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

func (ClusterKubernetesNetworkConfigOutput) ToClusterKubernetesNetworkConfigOutput

func (o ClusterKubernetesNetworkConfigOutput) ToClusterKubernetesNetworkConfigOutput() ClusterKubernetesNetworkConfigOutput

func (ClusterKubernetesNetworkConfigOutput) ToClusterKubernetesNetworkConfigOutputWithContext

func (o ClusterKubernetesNetworkConfigOutput) ToClusterKubernetesNetworkConfigOutputWithContext(ctx context.Context) ClusterKubernetesNetworkConfigOutput

func (ClusterKubernetesNetworkConfigOutput) ToClusterKubernetesNetworkConfigPtrOutput

func (o ClusterKubernetesNetworkConfigOutput) ToClusterKubernetesNetworkConfigPtrOutput() ClusterKubernetesNetworkConfigPtrOutput

func (ClusterKubernetesNetworkConfigOutput) ToClusterKubernetesNetworkConfigPtrOutputWithContext

func (o ClusterKubernetesNetworkConfigOutput) ToClusterKubernetesNetworkConfigPtrOutputWithContext(ctx context.Context) ClusterKubernetesNetworkConfigPtrOutput

type ClusterKubernetesNetworkConfigPtrInput

type ClusterKubernetesNetworkConfigPtrInput interface {
	pulumi.Input

	ToClusterKubernetesNetworkConfigPtrOutput() ClusterKubernetesNetworkConfigPtrOutput
	ToClusterKubernetesNetworkConfigPtrOutputWithContext(context.Context) ClusterKubernetesNetworkConfigPtrOutput
}

ClusterKubernetesNetworkConfigPtrInput is an input type that accepts ClusterKubernetesNetworkConfigArgs, ClusterKubernetesNetworkConfigPtr and ClusterKubernetesNetworkConfigPtrOutput values. You can construct a concrete instance of `ClusterKubernetesNetworkConfigPtrInput` via:

        ClusterKubernetesNetworkConfigArgs{...}

or:

        nil

type ClusterKubernetesNetworkConfigPtrOutput

type ClusterKubernetesNetworkConfigPtrOutput struct{ *pulumi.OutputState }

func (ClusterKubernetesNetworkConfigPtrOutput) Elem

func (ClusterKubernetesNetworkConfigPtrOutput) ElementType

func (ClusterKubernetesNetworkConfigPtrOutput) IpFamily

The IP family used to assign Kubernetes pod and service addresses. Valid values are `ipv4` (default) and `ipv6`. You can only specify an IP family when you create a cluster, changing this value will force a new cluster to be created.

func (ClusterKubernetesNetworkConfigPtrOutput) ServiceIpv4Cidr

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

* Within one of the following private IP address blocks: 10.0.0.0/8, 172.16.0.0/12, or 192.168.0.0/16.

* Doesn't overlap with any CIDR block assigned to the VPC that you selected for VPC.

* Between /24 and /12.

func (ClusterKubernetesNetworkConfigPtrOutput) ServiceIpv6Cidr

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

func (ClusterKubernetesNetworkConfigPtrOutput) ToClusterKubernetesNetworkConfigPtrOutput

func (o ClusterKubernetesNetworkConfigPtrOutput) ToClusterKubernetesNetworkConfigPtrOutput() ClusterKubernetesNetworkConfigPtrOutput

func (ClusterKubernetesNetworkConfigPtrOutput) ToClusterKubernetesNetworkConfigPtrOutputWithContext

func (o ClusterKubernetesNetworkConfigPtrOutput) ToClusterKubernetesNetworkConfigPtrOutputWithContext(ctx context.Context) ClusterKubernetesNetworkConfigPtrOutput

type ClusterMap

type ClusterMap map[string]ClusterInput

func (ClusterMap) ElementType

func (ClusterMap) ElementType() reflect.Type

func (ClusterMap) ToClusterMapOutput

func (i ClusterMap) ToClusterMapOutput() ClusterMapOutput

func (ClusterMap) ToClusterMapOutputWithContext

func (i ClusterMap) ToClusterMapOutputWithContext(ctx context.Context) ClusterMapOutput

type ClusterMapInput

type ClusterMapInput interface {
	pulumi.Input

	ToClusterMapOutput() ClusterMapOutput
	ToClusterMapOutputWithContext(context.Context) ClusterMapOutput
}

ClusterMapInput is an input type that accepts ClusterMap and ClusterMapOutput values. You can construct a concrete instance of `ClusterMapInput` via:

ClusterMap{ "key": ClusterArgs{...} }

type ClusterMapOutput

type ClusterMapOutput struct{ *pulumi.OutputState }

func (ClusterMapOutput) ElementType

func (ClusterMapOutput) ElementType() reflect.Type

func (ClusterMapOutput) MapIndex

func (ClusterMapOutput) ToClusterMapOutput

func (o ClusterMapOutput) ToClusterMapOutput() ClusterMapOutput

func (ClusterMapOutput) ToClusterMapOutputWithContext

func (o ClusterMapOutput) ToClusterMapOutputWithContext(ctx context.Context) ClusterMapOutput

type ClusterOutpostConfig

type ClusterOutpostConfig struct {
	// The Amazon EC2 instance type that you want to use for your local Amazon EKS cluster on Outposts. The instance type that you specify is used for all Kubernetes control plane instances. The instance type can't be changed after cluster creation. Choose an instance type based on the number of nodes that your cluster will have. If your cluster will have:
	//
	// * 1–20 nodes, then we recommend specifying a large instance type.
	//
	// * 21–100 nodes, then we recommend specifying an xlarge instance type.
	//
	// * 101–250 nodes, then we recommend specifying a 2xlarge instance type.
	//
	// For a list of the available Amazon EC2 instance types, see Compute and storage in AWS Outposts rack features  The control plane is not automatically scaled by Amazon EKS.
	ControlPlaneInstanceType string `pulumi:"controlPlaneInstanceType"`
	// An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on AWS Outpost.
	// The `controlPlanePlacement` configuration block supports the following arguments:
	ControlPlanePlacement *ClusterOutpostConfigControlPlanePlacement `pulumi:"controlPlanePlacement"`
	// The ARN of the Outpost that you want to use for your local Amazon EKS cluster on Outposts. This argument is a list of arns, but only a single Outpost ARN is supported currently.
	OutpostArns []string `pulumi:"outpostArns"`
}

type ClusterOutpostConfigArgs

type ClusterOutpostConfigArgs struct {
	// The Amazon EC2 instance type that you want to use for your local Amazon EKS cluster on Outposts. The instance type that you specify is used for all Kubernetes control plane instances. The instance type can't be changed after cluster creation. Choose an instance type based on the number of nodes that your cluster will have. If your cluster will have:
	//
	// * 1–20 nodes, then we recommend specifying a large instance type.
	//
	// * 21–100 nodes, then we recommend specifying an xlarge instance type.
	//
	// * 101–250 nodes, then we recommend specifying a 2xlarge instance type.
	//
	// For a list of the available Amazon EC2 instance types, see Compute and storage in AWS Outposts rack features  The control plane is not automatically scaled by Amazon EKS.
	ControlPlaneInstanceType pulumi.StringInput `pulumi:"controlPlaneInstanceType"`
	// An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on AWS Outpost.
	// The `controlPlanePlacement` configuration block supports the following arguments:
	ControlPlanePlacement ClusterOutpostConfigControlPlanePlacementPtrInput `pulumi:"controlPlanePlacement"`
	// The ARN of the Outpost that you want to use for your local Amazon EKS cluster on Outposts. This argument is a list of arns, but only a single Outpost ARN is supported currently.
	OutpostArns pulumi.StringArrayInput `pulumi:"outpostArns"`
}

func (ClusterOutpostConfigArgs) ElementType

func (ClusterOutpostConfigArgs) ElementType() reflect.Type

func (ClusterOutpostConfigArgs) ToClusterOutpostConfigOutput

func (i ClusterOutpostConfigArgs) ToClusterOutpostConfigOutput() ClusterOutpostConfigOutput

func (ClusterOutpostConfigArgs) ToClusterOutpostConfigOutputWithContext

func (i ClusterOutpostConfigArgs) ToClusterOutpostConfigOutputWithContext(ctx context.Context) ClusterOutpostConfigOutput

func (ClusterOutpostConfigArgs) ToClusterOutpostConfigPtrOutput

func (i ClusterOutpostConfigArgs) ToClusterOutpostConfigPtrOutput() ClusterOutpostConfigPtrOutput

func (ClusterOutpostConfigArgs) ToClusterOutpostConfigPtrOutputWithContext

func (i ClusterOutpostConfigArgs) ToClusterOutpostConfigPtrOutputWithContext(ctx context.Context) ClusterOutpostConfigPtrOutput

type ClusterOutpostConfigControlPlanePlacement

type ClusterOutpostConfigControlPlanePlacement struct {
	// The name of the placement group for the Kubernetes control plane instances. This setting can't be changed after cluster creation.
	GroupName string `pulumi:"groupName"`
}

type ClusterOutpostConfigControlPlanePlacementArgs

type ClusterOutpostConfigControlPlanePlacementArgs struct {
	// The name of the placement group for the Kubernetes control plane instances. This setting can't be changed after cluster creation.
	GroupName pulumi.StringInput `pulumi:"groupName"`
}

func (ClusterOutpostConfigControlPlanePlacementArgs) ElementType

func (ClusterOutpostConfigControlPlanePlacementArgs) ToClusterOutpostConfigControlPlanePlacementOutput

func (i ClusterOutpostConfigControlPlanePlacementArgs) ToClusterOutpostConfigControlPlanePlacementOutput() ClusterOutpostConfigControlPlanePlacementOutput

func (ClusterOutpostConfigControlPlanePlacementArgs) ToClusterOutpostConfigControlPlanePlacementOutputWithContext

func (i ClusterOutpostConfigControlPlanePlacementArgs) ToClusterOutpostConfigControlPlanePlacementOutputWithContext(ctx context.Context) ClusterOutpostConfigControlPlanePlacementOutput

func (ClusterOutpostConfigControlPlanePlacementArgs) ToClusterOutpostConfigControlPlanePlacementPtrOutput

func (i ClusterOutpostConfigControlPlanePlacementArgs) ToClusterOutpostConfigControlPlanePlacementPtrOutput() ClusterOutpostConfigControlPlanePlacementPtrOutput

func (ClusterOutpostConfigControlPlanePlacementArgs) ToClusterOutpostConfigControlPlanePlacementPtrOutputWithContext

func (i ClusterOutpostConfigControlPlanePlacementArgs) ToClusterOutpostConfigControlPlanePlacementPtrOutputWithContext(ctx context.Context) ClusterOutpostConfigControlPlanePlacementPtrOutput

type ClusterOutpostConfigControlPlanePlacementInput

type ClusterOutpostConfigControlPlanePlacementInput interface {
	pulumi.Input

	ToClusterOutpostConfigControlPlanePlacementOutput() ClusterOutpostConfigControlPlanePlacementOutput
	ToClusterOutpostConfigControlPlanePlacementOutputWithContext(context.Context) ClusterOutpostConfigControlPlanePlacementOutput
}

ClusterOutpostConfigControlPlanePlacementInput is an input type that accepts ClusterOutpostConfigControlPlanePlacementArgs and ClusterOutpostConfigControlPlanePlacementOutput values. You can construct a concrete instance of `ClusterOutpostConfigControlPlanePlacementInput` via:

ClusterOutpostConfigControlPlanePlacementArgs{...}

type ClusterOutpostConfigControlPlanePlacementOutput

type ClusterOutpostConfigControlPlanePlacementOutput struct{ *pulumi.OutputState }

func (ClusterOutpostConfigControlPlanePlacementOutput) ElementType

func (ClusterOutpostConfigControlPlanePlacementOutput) GroupName

The name of the placement group for the Kubernetes control plane instances. This setting can't be changed after cluster creation.

func (ClusterOutpostConfigControlPlanePlacementOutput) ToClusterOutpostConfigControlPlanePlacementOutput

func (o ClusterOutpostConfigControlPlanePlacementOutput) ToClusterOutpostConfigControlPlanePlacementOutput() ClusterOutpostConfigControlPlanePlacementOutput

func (ClusterOutpostConfigControlPlanePlacementOutput) ToClusterOutpostConfigControlPlanePlacementOutputWithContext

func (o ClusterOutpostConfigControlPlanePlacementOutput) ToClusterOutpostConfigControlPlanePlacementOutputWithContext(ctx context.Context) ClusterOutpostConfigControlPlanePlacementOutput

func (ClusterOutpostConfigControlPlanePlacementOutput) ToClusterOutpostConfigControlPlanePlacementPtrOutput

func (o ClusterOutpostConfigControlPlanePlacementOutput) ToClusterOutpostConfigControlPlanePlacementPtrOutput() ClusterOutpostConfigControlPlanePlacementPtrOutput

func (ClusterOutpostConfigControlPlanePlacementOutput) ToClusterOutpostConfigControlPlanePlacementPtrOutputWithContext

func (o ClusterOutpostConfigControlPlanePlacementOutput) ToClusterOutpostConfigControlPlanePlacementPtrOutputWithContext(ctx context.Context) ClusterOutpostConfigControlPlanePlacementPtrOutput

type ClusterOutpostConfigControlPlanePlacementPtrInput

type ClusterOutpostConfigControlPlanePlacementPtrInput interface {
	pulumi.Input

	ToClusterOutpostConfigControlPlanePlacementPtrOutput() ClusterOutpostConfigControlPlanePlacementPtrOutput
	ToClusterOutpostConfigControlPlanePlacementPtrOutputWithContext(context.Context) ClusterOutpostConfigControlPlanePlacementPtrOutput
}

ClusterOutpostConfigControlPlanePlacementPtrInput is an input type that accepts ClusterOutpostConfigControlPlanePlacementArgs, ClusterOutpostConfigControlPlanePlacementPtr and ClusterOutpostConfigControlPlanePlacementPtrOutput values. You can construct a concrete instance of `ClusterOutpostConfigControlPlanePlacementPtrInput` via:

        ClusterOutpostConfigControlPlanePlacementArgs{...}

or:

        nil

type ClusterOutpostConfigControlPlanePlacementPtrOutput

type ClusterOutpostConfigControlPlanePlacementPtrOutput struct{ *pulumi.OutputState }

func (ClusterOutpostConfigControlPlanePlacementPtrOutput) Elem

func (ClusterOutpostConfigControlPlanePlacementPtrOutput) ElementType

func (ClusterOutpostConfigControlPlanePlacementPtrOutput) GroupName

The name of the placement group for the Kubernetes control plane instances. This setting can't be changed after cluster creation.

func (ClusterOutpostConfigControlPlanePlacementPtrOutput) ToClusterOutpostConfigControlPlanePlacementPtrOutput

func (o ClusterOutpostConfigControlPlanePlacementPtrOutput) ToClusterOutpostConfigControlPlanePlacementPtrOutput() ClusterOutpostConfigControlPlanePlacementPtrOutput

func (ClusterOutpostConfigControlPlanePlacementPtrOutput) ToClusterOutpostConfigControlPlanePlacementPtrOutputWithContext

func (o ClusterOutpostConfigControlPlanePlacementPtrOutput) ToClusterOutpostConfigControlPlanePlacementPtrOutputWithContext(ctx context.Context) ClusterOutpostConfigControlPlanePlacementPtrOutput

type ClusterOutpostConfigInput

type ClusterOutpostConfigInput interface {
	pulumi.Input

	ToClusterOutpostConfigOutput() ClusterOutpostConfigOutput
	ToClusterOutpostConfigOutputWithContext(context.Context) ClusterOutpostConfigOutput
}

ClusterOutpostConfigInput is an input type that accepts ClusterOutpostConfigArgs and ClusterOutpostConfigOutput values. You can construct a concrete instance of `ClusterOutpostConfigInput` via:

ClusterOutpostConfigArgs{...}

type ClusterOutpostConfigOutput

type ClusterOutpostConfigOutput struct{ *pulumi.OutputState }

func (ClusterOutpostConfigOutput) ControlPlaneInstanceType

func (o ClusterOutpostConfigOutput) ControlPlaneInstanceType() pulumi.StringOutput

The Amazon EC2 instance type that you want to use for your local Amazon EKS cluster on Outposts. The instance type that you specify is used for all Kubernetes control plane instances. The instance type can't be changed after cluster creation. Choose an instance type based on the number of nodes that your cluster will have. If your cluster will have:

* 1–20 nodes, then we recommend specifying a large instance type.

* 21–100 nodes, then we recommend specifying an xlarge instance type.

* 101–250 nodes, then we recommend specifying a 2xlarge instance type.

For a list of the available Amazon EC2 instance types, see Compute and storage in AWS Outposts rack features The control plane is not automatically scaled by Amazon EKS.

func (ClusterOutpostConfigOutput) ControlPlanePlacement

An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on AWS Outpost. The `controlPlanePlacement` configuration block supports the following arguments:

func (ClusterOutpostConfigOutput) ElementType

func (ClusterOutpostConfigOutput) ElementType() reflect.Type

func (ClusterOutpostConfigOutput) OutpostArns

The ARN of the Outpost that you want to use for your local Amazon EKS cluster on Outposts. This argument is a list of arns, but only a single Outpost ARN is supported currently.

func (ClusterOutpostConfigOutput) ToClusterOutpostConfigOutput

func (o ClusterOutpostConfigOutput) ToClusterOutpostConfigOutput() ClusterOutpostConfigOutput

func (ClusterOutpostConfigOutput) ToClusterOutpostConfigOutputWithContext

func (o ClusterOutpostConfigOutput) ToClusterOutpostConfigOutputWithContext(ctx context.Context) ClusterOutpostConfigOutput

func (ClusterOutpostConfigOutput) ToClusterOutpostConfigPtrOutput

func (o ClusterOutpostConfigOutput) ToClusterOutpostConfigPtrOutput() ClusterOutpostConfigPtrOutput

func (ClusterOutpostConfigOutput) ToClusterOutpostConfigPtrOutputWithContext

func (o ClusterOutpostConfigOutput) ToClusterOutpostConfigPtrOutputWithContext(ctx context.Context) ClusterOutpostConfigPtrOutput

type ClusterOutpostConfigPtrInput

type ClusterOutpostConfigPtrInput interface {
	pulumi.Input

	ToClusterOutpostConfigPtrOutput() ClusterOutpostConfigPtrOutput
	ToClusterOutpostConfigPtrOutputWithContext(context.Context) ClusterOutpostConfigPtrOutput
}

ClusterOutpostConfigPtrInput is an input type that accepts ClusterOutpostConfigArgs, ClusterOutpostConfigPtr and ClusterOutpostConfigPtrOutput values. You can construct a concrete instance of `ClusterOutpostConfigPtrInput` via:

        ClusterOutpostConfigArgs{...}

or:

        nil

type ClusterOutpostConfigPtrOutput

type ClusterOutpostConfigPtrOutput struct{ *pulumi.OutputState }

func (ClusterOutpostConfigPtrOutput) ControlPlaneInstanceType

func (o ClusterOutpostConfigPtrOutput) ControlPlaneInstanceType() pulumi.StringPtrOutput

The Amazon EC2 instance type that you want to use for your local Amazon EKS cluster on Outposts. The instance type that you specify is used for all Kubernetes control plane instances. The instance type can't be changed after cluster creation. Choose an instance type based on the number of nodes that your cluster will have. If your cluster will have:

* 1–20 nodes, then we recommend specifying a large instance type.

* 21–100 nodes, then we recommend specifying an xlarge instance type.

* 101–250 nodes, then we recommend specifying a 2xlarge instance type.

For a list of the available Amazon EC2 instance types, see Compute and storage in AWS Outposts rack features The control plane is not automatically scaled by Amazon EKS.

func (ClusterOutpostConfigPtrOutput) ControlPlanePlacement

An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on AWS Outpost. The `controlPlanePlacement` configuration block supports the following arguments:

func (ClusterOutpostConfigPtrOutput) Elem

func (ClusterOutpostConfigPtrOutput) ElementType

func (ClusterOutpostConfigPtrOutput) OutpostArns

The ARN of the Outpost that you want to use for your local Amazon EKS cluster on Outposts. This argument is a list of arns, but only a single Outpost ARN is supported currently.

func (ClusterOutpostConfigPtrOutput) ToClusterOutpostConfigPtrOutput

func (o ClusterOutpostConfigPtrOutput) ToClusterOutpostConfigPtrOutput() ClusterOutpostConfigPtrOutput

func (ClusterOutpostConfigPtrOutput) ToClusterOutpostConfigPtrOutputWithContext

func (o ClusterOutpostConfigPtrOutput) ToClusterOutpostConfigPtrOutputWithContext(ctx context.Context) ClusterOutpostConfigPtrOutput

type ClusterOutput

type ClusterOutput struct{ *pulumi.OutputState }

func (ClusterOutput) AccessConfig added in v6.18.2

func (o ClusterOutput) AccessConfig() ClusterAccessConfigOutput

Configuration block for the access config associated with your cluster, see [Amazon EKS Access Entries](https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html).

func (ClusterOutput) Arn

ARN of the cluster.

func (ClusterOutput) CertificateAuthorities

func (o ClusterOutput) CertificateAuthorities() ClusterCertificateAuthorityArrayOutput

func (ClusterOutput) CertificateAuthority

func (o ClusterOutput) CertificateAuthority() ClusterCertificateAuthorityOutput

Attribute block containing `certificate-authority-data` for your cluster. Detailed below.

func (ClusterOutput) ClusterId

func (o ClusterOutput) ClusterId() pulumi.StringOutput

The ID of your local Amazon EKS cluster on the AWS Outpost. This attribute isn't available for an AWS EKS cluster on AWS cloud.

func (ClusterOutput) CreatedAt

func (o ClusterOutput) CreatedAt() pulumi.StringOutput

Unix epoch timestamp in seconds for when the cluster was created.

func (ClusterOutput) DefaultAddonsToRemoves

func (o ClusterOutput) DefaultAddonsToRemoves() pulumi.StringArrayOutput

func (ClusterOutput) ElementType

func (ClusterOutput) ElementType() reflect.Type

func (ClusterOutput) EnabledClusterLogTypes

func (o ClusterOutput) EnabledClusterLogTypes() pulumi.StringArrayOutput

List of the desired control plane logging to enable. For more information, see [Amazon EKS Control Plane Logging](https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html).

func (ClusterOutput) EncryptionConfig

func (o ClusterOutput) EncryptionConfig() ClusterEncryptionConfigPtrOutput

Configuration block with encryption configuration for the cluster. Only available on Kubernetes 1.13 and above clusters created after March 6, 2020. Detailed below.

func (ClusterOutput) Endpoint

func (o ClusterOutput) Endpoint() pulumi.StringOutput

Endpoint for your Kubernetes API server.

func (ClusterOutput) Identities

Attribute block containing identity provider information for your cluster. Only available on Kubernetes version 1.13 and 1.14 clusters created or upgraded on or after September 3, 2019. Detailed below.

func (ClusterOutput) KubernetesNetworkConfig

func (o ClusterOutput) KubernetesNetworkConfig() ClusterKubernetesNetworkConfigOutput

Configuration block with kubernetes network configuration for the cluster. Detailed below. If removed, this provider will only perform drift detection if a configuration value is provided.

func (ClusterOutput) Name

Name of the cluster. Must be between 1-100 characters in length. Must begin with an alphanumeric character, and must only contain alphanumeric characters, dashes and underscores (`^[0-9A-Za-z][A-Za-z0-9\-_]*$`).

func (ClusterOutput) OutpostConfig

func (o ClusterOutput) OutpostConfig() ClusterOutpostConfigPtrOutput

Configuration block representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This block isn't available for creating Amazon EKS clusters on the AWS cloud.

func (ClusterOutput) PlatformVersion

func (o ClusterOutput) PlatformVersion() pulumi.StringOutput

Platform version for the cluster.

func (ClusterOutput) RoleArn

func (o ClusterOutput) RoleArn() pulumi.StringOutput

ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Ensure the resource configuration includes explicit dependencies on the IAM Role permissions by adding `dependsOn` if using the `iam.RolePolicy` resource or `iam.RolePolicyAttachment` resource, otherwise EKS cannot delete EKS managed EC2 infrastructure such as Security Groups on EKS Cluster deletion.

func (ClusterOutput) Status

func (o ClusterOutput) Status() pulumi.StringOutput

Status of the EKS cluster. One of `CREATING`, `ACTIVE`, `DELETING`, `FAILED`.

func (ClusterOutput) Tags

Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ClusterOutput) TagsAll deprecated

func (o ClusterOutput) TagsAll() pulumi.StringMapOutput

Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (ClusterOutput) ToClusterOutput

func (o ClusterOutput) ToClusterOutput() ClusterOutput

func (ClusterOutput) ToClusterOutputWithContext

func (o ClusterOutput) ToClusterOutputWithContext(ctx context.Context) ClusterOutput

func (ClusterOutput) Version

func (o ClusterOutput) Version() pulumi.StringOutput

Desired Kubernetes master version. If you do not specify a value, the latest available version at resource creation is used and no upgrades will occur except those automatically triggered by EKS. The value must be configured and increased to upgrade the version when desired. Downgrades are not supported by EKS.

func (ClusterOutput) VpcConfig

func (o ClusterOutput) VpcConfig() ClusterVpcConfigOutput

Configuration block for the VPC associated with your cluster. Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see [Cluster VPC Considerations](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. Detailed below. Also contains attributes detailed in the Attributes section.

The following arguments are optional:

type ClusterState

type ClusterState struct {
	// Configuration block for the access config associated with your cluster, see [Amazon EKS Access Entries](https://docs.aws.amazon.com/eks/latest/userguide/access-entries.html).
	AccessConfig ClusterAccessConfigPtrInput
	// ARN of the cluster.
	Arn                    pulumi.StringPtrInput
	CertificateAuthorities ClusterCertificateAuthorityArrayInput
	// Attribute block containing `certificate-authority-data` for your cluster. Detailed below.
	CertificateAuthority ClusterCertificateAuthorityPtrInput
	// The ID of your local Amazon EKS cluster on the AWS Outpost. This attribute isn't available for an AWS EKS cluster on AWS cloud.
	ClusterId pulumi.StringPtrInput
	// Unix epoch timestamp in seconds for when the cluster was created.
	CreatedAt              pulumi.StringPtrInput
	DefaultAddonsToRemoves pulumi.StringArrayInput
	// List of the desired control plane logging to enable. For more information, see [Amazon EKS Control Plane Logging](https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html).
	EnabledClusterLogTypes pulumi.StringArrayInput
	// Configuration block with encryption configuration for the cluster. Only available on Kubernetes 1.13 and above clusters created after March 6, 2020. Detailed below.
	EncryptionConfig ClusterEncryptionConfigPtrInput
	// Endpoint for your Kubernetes API server.
	Endpoint pulumi.StringPtrInput
	// Attribute block containing identity provider information for your cluster. Only available on Kubernetes version 1.13 and 1.14 clusters created or upgraded on or after September 3, 2019. Detailed below.
	Identities ClusterIdentityArrayInput
	// Configuration block with kubernetes network configuration for the cluster. Detailed below. If removed, this provider will only perform drift detection if a configuration value is provided.
	KubernetesNetworkConfig ClusterKubernetesNetworkConfigPtrInput
	// Name of the cluster. Must be between 1-100 characters in length. Must begin with an alphanumeric character, and must only contain alphanumeric characters, dashes and underscores (`^[0-9A-Za-z][A-Za-z0-9\-_]*$`).
	Name pulumi.StringPtrInput
	// Configuration block representing the configuration of your local Amazon EKS cluster on an AWS Outpost. This block isn't available for creating Amazon EKS clusters on the AWS cloud.
	OutpostConfig ClusterOutpostConfigPtrInput
	// Platform version for the cluster.
	PlatformVersion pulumi.StringPtrInput
	// ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Ensure the resource configuration includes explicit dependencies on the IAM Role permissions by adding `dependsOn` if using the `iam.RolePolicy` resource or `iam.RolePolicyAttachment` resource, otherwise EKS cannot delete EKS managed EC2 infrastructure such as Security Groups on EKS Cluster deletion.
	RoleArn pulumi.StringPtrInput
	// Status of the EKS cluster. One of `CREATING`, `ACTIVE`, `DELETING`, `FAILED`.
	Status pulumi.StringPtrInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// Desired Kubernetes master version. If you do not specify a value, the latest available version at resource creation is used and no upgrades will occur except those automatically triggered by EKS. The value must be configured and increased to upgrade the version when desired. Downgrades are not supported by EKS.
	Version pulumi.StringPtrInput
	// Configuration block for the VPC associated with your cluster. Amazon EKS VPC resources have specific requirements to work properly with Kubernetes. For more information, see [Cluster VPC Considerations](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. Detailed below. Also contains attributes detailed in the Attributes section.
	//
	// The following arguments are optional:
	VpcConfig ClusterVpcConfigPtrInput
}

func (ClusterState) ElementType

func (ClusterState) ElementType() reflect.Type

type ClusterVpcConfig

type ClusterVpcConfig struct {
	// Cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control-plane-to-data-plane communication.
	ClusterSecurityGroupId *string `pulumi:"clusterSecurityGroupId"`
	// Whether the Amazon EKS private API server endpoint is enabled. Default is `false`.
	EndpointPrivateAccess *bool `pulumi:"endpointPrivateAccess"`
	// Whether the Amazon EKS public API server endpoint is enabled. Default is `true`.
	EndpointPublicAccess *bool `pulumi:"endpointPublicAccess"`
	// List of CIDR blocks. Indicates which CIDR blocks can access the Amazon EKS public API server endpoint when enabled. EKS defaults this to a list with `0.0.0.0/0`. The provider will only perform drift detection of its value when present in a configuration.
	PublicAccessCidrs []string `pulumi:"publicAccessCidrs"`
	// List of security group IDs for the cross-account elastic network interfaces that Amazon EKS creates to use to allow communication between your worker nodes and the Kubernetes control plane.
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	// List of subnet IDs. Must be in at least two different availability zones. Amazon EKS creates cross-account elastic network interfaces in these subnets to allow communication between your worker nodes and the Kubernetes control plane.
	SubnetIds []string `pulumi:"subnetIds"`
	// ID of the VPC associated with your cluster.
	VpcId *string `pulumi:"vpcId"`
}

type ClusterVpcConfigArgs

type ClusterVpcConfigArgs struct {
	// Cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control-plane-to-data-plane communication.
	ClusterSecurityGroupId pulumi.StringPtrInput `pulumi:"clusterSecurityGroupId"`
	// Whether the Amazon EKS private API server endpoint is enabled. Default is `false`.
	EndpointPrivateAccess pulumi.BoolPtrInput `pulumi:"endpointPrivateAccess"`
	// Whether the Amazon EKS public API server endpoint is enabled. Default is `true`.
	EndpointPublicAccess pulumi.BoolPtrInput `pulumi:"endpointPublicAccess"`
	// List of CIDR blocks. Indicates which CIDR blocks can access the Amazon EKS public API server endpoint when enabled. EKS defaults this to a list with `0.0.0.0/0`. The provider will only perform drift detection of its value when present in a configuration.
	PublicAccessCidrs pulumi.StringArrayInput `pulumi:"publicAccessCidrs"`
	// List of security group IDs for the cross-account elastic network interfaces that Amazon EKS creates to use to allow communication between your worker nodes and the Kubernetes control plane.
	SecurityGroupIds pulumi.StringArrayInput `pulumi:"securityGroupIds"`
	// List of subnet IDs. Must be in at least two different availability zones. Amazon EKS creates cross-account elastic network interfaces in these subnets to allow communication between your worker nodes and the Kubernetes control plane.
	SubnetIds pulumi.StringArrayInput `pulumi:"subnetIds"`
	// ID of the VPC associated with your cluster.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
}

func (ClusterVpcConfigArgs) ElementType

func (ClusterVpcConfigArgs) ElementType() reflect.Type

func (ClusterVpcConfigArgs) ToClusterVpcConfigOutput

func (i ClusterVpcConfigArgs) ToClusterVpcConfigOutput() ClusterVpcConfigOutput

func (ClusterVpcConfigArgs) ToClusterVpcConfigOutputWithContext

func (i ClusterVpcConfigArgs) ToClusterVpcConfigOutputWithContext(ctx context.Context) ClusterVpcConfigOutput

func (ClusterVpcConfigArgs) ToClusterVpcConfigPtrOutput

func (i ClusterVpcConfigArgs) ToClusterVpcConfigPtrOutput() ClusterVpcConfigPtrOutput

func (ClusterVpcConfigArgs) ToClusterVpcConfigPtrOutputWithContext

func (i ClusterVpcConfigArgs) ToClusterVpcConfigPtrOutputWithContext(ctx context.Context) ClusterVpcConfigPtrOutput

type ClusterVpcConfigInput

type ClusterVpcConfigInput interface {
	pulumi.Input

	ToClusterVpcConfigOutput() ClusterVpcConfigOutput
	ToClusterVpcConfigOutputWithContext(context.Context) ClusterVpcConfigOutput
}

ClusterVpcConfigInput is an input type that accepts ClusterVpcConfigArgs and ClusterVpcConfigOutput values. You can construct a concrete instance of `ClusterVpcConfigInput` via:

ClusterVpcConfigArgs{...}

type ClusterVpcConfigOutput

type ClusterVpcConfigOutput struct{ *pulumi.OutputState }

func (ClusterVpcConfigOutput) ClusterSecurityGroupId

func (o ClusterVpcConfigOutput) ClusterSecurityGroupId() pulumi.StringPtrOutput

Cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control-plane-to-data-plane communication.

func (ClusterVpcConfigOutput) ElementType

func (ClusterVpcConfigOutput) ElementType() reflect.Type

func (ClusterVpcConfigOutput) EndpointPrivateAccess

func (o ClusterVpcConfigOutput) EndpointPrivateAccess() pulumi.BoolPtrOutput

Whether the Amazon EKS private API server endpoint is enabled. Default is `false`.

func (ClusterVpcConfigOutput) EndpointPublicAccess

func (o ClusterVpcConfigOutput) EndpointPublicAccess() pulumi.BoolPtrOutput

Whether the Amazon EKS public API server endpoint is enabled. Default is `true`.

func (ClusterVpcConfigOutput) PublicAccessCidrs

func (o ClusterVpcConfigOutput) PublicAccessCidrs() pulumi.StringArrayOutput

List of CIDR blocks. Indicates which CIDR blocks can access the Amazon EKS public API server endpoint when enabled. EKS defaults this to a list with `0.0.0.0/0`. The provider will only perform drift detection of its value when present in a configuration.

func (ClusterVpcConfigOutput) SecurityGroupIds

func (o ClusterVpcConfigOutput) SecurityGroupIds() pulumi.StringArrayOutput

List of security group IDs for the cross-account elastic network interfaces that Amazon EKS creates to use to allow communication between your worker nodes and the Kubernetes control plane.

func (ClusterVpcConfigOutput) SubnetIds

List of subnet IDs. Must be in at least two different availability zones. Amazon EKS creates cross-account elastic network interfaces in these subnets to allow communication between your worker nodes and the Kubernetes control plane.

func (ClusterVpcConfigOutput) ToClusterVpcConfigOutput

func (o ClusterVpcConfigOutput) ToClusterVpcConfigOutput() ClusterVpcConfigOutput

func (ClusterVpcConfigOutput) ToClusterVpcConfigOutputWithContext

func (o ClusterVpcConfigOutput) ToClusterVpcConfigOutputWithContext(ctx context.Context) ClusterVpcConfigOutput

func (ClusterVpcConfigOutput) ToClusterVpcConfigPtrOutput

func (o ClusterVpcConfigOutput) ToClusterVpcConfigPtrOutput() ClusterVpcConfigPtrOutput

func (ClusterVpcConfigOutput) ToClusterVpcConfigPtrOutputWithContext

func (o ClusterVpcConfigOutput) ToClusterVpcConfigPtrOutputWithContext(ctx context.Context) ClusterVpcConfigPtrOutput

func (ClusterVpcConfigOutput) VpcId

ID of the VPC associated with your cluster.

type ClusterVpcConfigPtrInput

type ClusterVpcConfigPtrInput interface {
	pulumi.Input

	ToClusterVpcConfigPtrOutput() ClusterVpcConfigPtrOutput
	ToClusterVpcConfigPtrOutputWithContext(context.Context) ClusterVpcConfigPtrOutput
}

ClusterVpcConfigPtrInput is an input type that accepts ClusterVpcConfigArgs, ClusterVpcConfigPtr and ClusterVpcConfigPtrOutput values. You can construct a concrete instance of `ClusterVpcConfigPtrInput` via:

        ClusterVpcConfigArgs{...}

or:

        nil

type ClusterVpcConfigPtrOutput

type ClusterVpcConfigPtrOutput struct{ *pulumi.OutputState }

func (ClusterVpcConfigPtrOutput) ClusterSecurityGroupId

func (o ClusterVpcConfigPtrOutput) ClusterSecurityGroupId() pulumi.StringPtrOutput

Cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control-plane-to-data-plane communication.

func (ClusterVpcConfigPtrOutput) Elem

func (ClusterVpcConfigPtrOutput) ElementType

func (ClusterVpcConfigPtrOutput) ElementType() reflect.Type

func (ClusterVpcConfigPtrOutput) EndpointPrivateAccess

func (o ClusterVpcConfigPtrOutput) EndpointPrivateAccess() pulumi.BoolPtrOutput

Whether the Amazon EKS private API server endpoint is enabled. Default is `false`.

func (ClusterVpcConfigPtrOutput) EndpointPublicAccess

func (o ClusterVpcConfigPtrOutput) EndpointPublicAccess() pulumi.BoolPtrOutput

Whether the Amazon EKS public API server endpoint is enabled. Default is `true`.

func (ClusterVpcConfigPtrOutput) PublicAccessCidrs

func (o ClusterVpcConfigPtrOutput) PublicAccessCidrs() pulumi.StringArrayOutput

List of CIDR blocks. Indicates which CIDR blocks can access the Amazon EKS public API server endpoint when enabled. EKS defaults this to a list with `0.0.0.0/0`. The provider will only perform drift detection of its value when present in a configuration.

func (ClusterVpcConfigPtrOutput) SecurityGroupIds

func (o ClusterVpcConfigPtrOutput) SecurityGroupIds() pulumi.StringArrayOutput

List of security group IDs for the cross-account elastic network interfaces that Amazon EKS creates to use to allow communication between your worker nodes and the Kubernetes control plane.

func (ClusterVpcConfigPtrOutput) SubnetIds

List of subnet IDs. Must be in at least two different availability zones. Amazon EKS creates cross-account elastic network interfaces in these subnets to allow communication between your worker nodes and the Kubernetes control plane.

func (ClusterVpcConfigPtrOutput) ToClusterVpcConfigPtrOutput

func (o ClusterVpcConfigPtrOutput) ToClusterVpcConfigPtrOutput() ClusterVpcConfigPtrOutput

func (ClusterVpcConfigPtrOutput) ToClusterVpcConfigPtrOutputWithContext

func (o ClusterVpcConfigPtrOutput) ToClusterVpcConfigPtrOutputWithContext(ctx context.Context) ClusterVpcConfigPtrOutput

func (ClusterVpcConfigPtrOutput) VpcId

ID of the VPC associated with your cluster.

type FargateProfile

type FargateProfile struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the EKS Fargate Profile.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Name of the EKS Cluster.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// Name of the EKS Fargate Profile.
	FargateProfileName pulumi.StringOutput `pulumi:"fargateProfileName"`
	// Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Fargate Profile.
	PodExecutionRoleArn pulumi.StringOutput `pulumi:"podExecutionRoleArn"`
	// Configuration block(s) for selecting Kubernetes Pods to execute with this EKS Fargate Profile. Detailed below.
	Selectors FargateProfileSelectorArrayOutput `pulumi:"selectors"`
	// Status of the EKS Fargate Profile.
	Status pulumi.StringOutput `pulumi:"status"`
	// Identifiers of private EC2 Subnets to associate with the EKS Fargate Profile. These subnets must have the following resource tag: `kubernetes.io/cluster/CLUSTER_NAME` (where `CLUSTER_NAME` is replaced with the name of the EKS Cluster).
	//
	// The following arguments are optional:
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Manages an EKS Fargate Profile.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { var splat0 []interface{} for _, val0 := range exampleAwsSubnet { splat0 = append(splat0, val0.Id) } _, err := eks.NewFargateProfile(ctx, "example", &eks.FargateProfileArgs{ ClusterName: pulumi.Any(exampleAwsEksCluster.Name), FargateProfileName: pulumi.String("example"), PodExecutionRoleArn: pulumi.Any(exampleAwsIamRole.Arn), SubnetIds: toPulumiArray(splat0), Selectors: eks.FargateProfileSelectorArray{ &eks.FargateProfileSelectorArgs{ Namespace: pulumi.String("example"), }, }, }) if err != nil { return err } return nil }) } func toPulumiArray(arr []) pulumi.Array { var pulumiArr pulumi.Array for _, v := range arr { pulumiArr = append(pulumiArr, pulumi.(v)) } return pulumiArr } ```

### Example IAM Role for EKS Fargate Profile

```go package main

import (

"encoding/json"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"Statement": []map[string]interface{}{
				map[string]interface{}{
					"Action": "sts:AssumeRole",
					"Effect": "Allow",
					"Principal": map[string]interface{}{
						"Service": "eks-fargate-pods.amazonaws.com",
					},
				},
			},
			"Version": "2012-10-17",
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		example, err := iam.NewRole(ctx, "example", &iam.RoleArgs{
			Name:             pulumi.String("eks-fargate-profile-example"),
			AssumeRolePolicy: pulumi.String(json0),
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "example-AmazonEKSFargatePodExecutionRolePolicy", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/AmazonEKSFargatePodExecutionRolePolicy"),
			Role:      example.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import EKS Fargate Profiles using the `cluster_name` and `fargate_profile_name` separated by a colon (`:`). For example:

```sh $ pulumi import aws:eks/fargateProfile:FargateProfile my_fargate_profile my_cluster:my_fargate_profile ```

func GetFargateProfile

func GetFargateProfile(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *FargateProfileState, opts ...pulumi.ResourceOption) (*FargateProfile, error)

GetFargateProfile gets an existing FargateProfile resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewFargateProfile

func NewFargateProfile(ctx *pulumi.Context,
	name string, args *FargateProfileArgs, opts ...pulumi.ResourceOption) (*FargateProfile, error)

NewFargateProfile registers a new resource with the given unique name, arguments, and options.

func (*FargateProfile) ElementType

func (*FargateProfile) ElementType() reflect.Type

func (*FargateProfile) ToFargateProfileOutput

func (i *FargateProfile) ToFargateProfileOutput() FargateProfileOutput

func (*FargateProfile) ToFargateProfileOutputWithContext

func (i *FargateProfile) ToFargateProfileOutputWithContext(ctx context.Context) FargateProfileOutput

type FargateProfileArgs

type FargateProfileArgs struct {
	// Name of the EKS Cluster.
	ClusterName pulumi.StringInput
	// Name of the EKS Fargate Profile.
	FargateProfileName pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Fargate Profile.
	PodExecutionRoleArn pulumi.StringInput
	// Configuration block(s) for selecting Kubernetes Pods to execute with this EKS Fargate Profile. Detailed below.
	Selectors FargateProfileSelectorArrayInput
	// Identifiers of private EC2 Subnets to associate with the EKS Fargate Profile. These subnets must have the following resource tag: `kubernetes.io/cluster/CLUSTER_NAME` (where `CLUSTER_NAME` is replaced with the name of the EKS Cluster).
	//
	// The following arguments are optional:
	SubnetIds pulumi.StringArrayInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a FargateProfile resource.

func (FargateProfileArgs) ElementType

func (FargateProfileArgs) ElementType() reflect.Type

type FargateProfileArray

type FargateProfileArray []FargateProfileInput

func (FargateProfileArray) ElementType

func (FargateProfileArray) ElementType() reflect.Type

func (FargateProfileArray) ToFargateProfileArrayOutput

func (i FargateProfileArray) ToFargateProfileArrayOutput() FargateProfileArrayOutput

func (FargateProfileArray) ToFargateProfileArrayOutputWithContext

func (i FargateProfileArray) ToFargateProfileArrayOutputWithContext(ctx context.Context) FargateProfileArrayOutput

type FargateProfileArrayInput

type FargateProfileArrayInput interface {
	pulumi.Input

	ToFargateProfileArrayOutput() FargateProfileArrayOutput
	ToFargateProfileArrayOutputWithContext(context.Context) FargateProfileArrayOutput
}

FargateProfileArrayInput is an input type that accepts FargateProfileArray and FargateProfileArrayOutput values. You can construct a concrete instance of `FargateProfileArrayInput` via:

FargateProfileArray{ FargateProfileArgs{...} }

type FargateProfileArrayOutput

type FargateProfileArrayOutput struct{ *pulumi.OutputState }

func (FargateProfileArrayOutput) ElementType

func (FargateProfileArrayOutput) ElementType() reflect.Type

func (FargateProfileArrayOutput) Index

func (FargateProfileArrayOutput) ToFargateProfileArrayOutput

func (o FargateProfileArrayOutput) ToFargateProfileArrayOutput() FargateProfileArrayOutput

func (FargateProfileArrayOutput) ToFargateProfileArrayOutputWithContext

func (o FargateProfileArrayOutput) ToFargateProfileArrayOutputWithContext(ctx context.Context) FargateProfileArrayOutput

type FargateProfileInput

type FargateProfileInput interface {
	pulumi.Input

	ToFargateProfileOutput() FargateProfileOutput
	ToFargateProfileOutputWithContext(ctx context.Context) FargateProfileOutput
}

type FargateProfileMap

type FargateProfileMap map[string]FargateProfileInput

func (FargateProfileMap) ElementType

func (FargateProfileMap) ElementType() reflect.Type

func (FargateProfileMap) ToFargateProfileMapOutput

func (i FargateProfileMap) ToFargateProfileMapOutput() FargateProfileMapOutput

func (FargateProfileMap) ToFargateProfileMapOutputWithContext

func (i FargateProfileMap) ToFargateProfileMapOutputWithContext(ctx context.Context) FargateProfileMapOutput

type FargateProfileMapInput

type FargateProfileMapInput interface {
	pulumi.Input

	ToFargateProfileMapOutput() FargateProfileMapOutput
	ToFargateProfileMapOutputWithContext(context.Context) FargateProfileMapOutput
}

FargateProfileMapInput is an input type that accepts FargateProfileMap and FargateProfileMapOutput values. You can construct a concrete instance of `FargateProfileMapInput` via:

FargateProfileMap{ "key": FargateProfileArgs{...} }

type FargateProfileMapOutput

type FargateProfileMapOutput struct{ *pulumi.OutputState }

func (FargateProfileMapOutput) ElementType

func (FargateProfileMapOutput) ElementType() reflect.Type

func (FargateProfileMapOutput) MapIndex

func (FargateProfileMapOutput) ToFargateProfileMapOutput

func (o FargateProfileMapOutput) ToFargateProfileMapOutput() FargateProfileMapOutput

func (FargateProfileMapOutput) ToFargateProfileMapOutputWithContext

func (o FargateProfileMapOutput) ToFargateProfileMapOutputWithContext(ctx context.Context) FargateProfileMapOutput

type FargateProfileOutput

type FargateProfileOutput struct{ *pulumi.OutputState }

func (FargateProfileOutput) Arn

Amazon Resource Name (ARN) of the EKS Fargate Profile.

func (FargateProfileOutput) ClusterName

func (o FargateProfileOutput) ClusterName() pulumi.StringOutput

Name of the EKS Cluster.

func (FargateProfileOutput) ElementType

func (FargateProfileOutput) ElementType() reflect.Type

func (FargateProfileOutput) FargateProfileName

func (o FargateProfileOutput) FargateProfileName() pulumi.StringOutput

Name of the EKS Fargate Profile.

func (FargateProfileOutput) PodExecutionRoleArn

func (o FargateProfileOutput) PodExecutionRoleArn() pulumi.StringOutput

Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Fargate Profile.

func (FargateProfileOutput) Selectors

Configuration block(s) for selecting Kubernetes Pods to execute with this EKS Fargate Profile. Detailed below.

func (FargateProfileOutput) Status

Status of the EKS Fargate Profile.

func (FargateProfileOutput) SubnetIds

Identifiers of private EC2 Subnets to associate with the EKS Fargate Profile. These subnets must have the following resource tag: `kubernetes.io/cluster/CLUSTER_NAME` (where `CLUSTER_NAME` is replaced with the name of the EKS Cluster).

The following arguments are optional:

func (FargateProfileOutput) Tags

Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (FargateProfileOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (FargateProfileOutput) ToFargateProfileOutput

func (o FargateProfileOutput) ToFargateProfileOutput() FargateProfileOutput

func (FargateProfileOutput) ToFargateProfileOutputWithContext

func (o FargateProfileOutput) ToFargateProfileOutputWithContext(ctx context.Context) FargateProfileOutput

type FargateProfileSelector

type FargateProfileSelector struct {
	// Key-value map of Kubernetes labels for selection.
	Labels map[string]string `pulumi:"labels"`
	// Kubernetes namespace for selection.
	//
	// The following arguments are optional:
	Namespace string `pulumi:"namespace"`
}

type FargateProfileSelectorArgs

type FargateProfileSelectorArgs struct {
	// Key-value map of Kubernetes labels for selection.
	Labels pulumi.StringMapInput `pulumi:"labels"`
	// Kubernetes namespace for selection.
	//
	// The following arguments are optional:
	Namespace pulumi.StringInput `pulumi:"namespace"`
}

func (FargateProfileSelectorArgs) ElementType

func (FargateProfileSelectorArgs) ElementType() reflect.Type

func (FargateProfileSelectorArgs) ToFargateProfileSelectorOutput

func (i FargateProfileSelectorArgs) ToFargateProfileSelectorOutput() FargateProfileSelectorOutput

func (FargateProfileSelectorArgs) ToFargateProfileSelectorOutputWithContext

func (i FargateProfileSelectorArgs) ToFargateProfileSelectorOutputWithContext(ctx context.Context) FargateProfileSelectorOutput

type FargateProfileSelectorArray

type FargateProfileSelectorArray []FargateProfileSelectorInput

func (FargateProfileSelectorArray) ElementType

func (FargateProfileSelectorArray) ToFargateProfileSelectorArrayOutput

func (i FargateProfileSelectorArray) ToFargateProfileSelectorArrayOutput() FargateProfileSelectorArrayOutput

func (FargateProfileSelectorArray) ToFargateProfileSelectorArrayOutputWithContext

func (i FargateProfileSelectorArray) ToFargateProfileSelectorArrayOutputWithContext(ctx context.Context) FargateProfileSelectorArrayOutput

type FargateProfileSelectorArrayInput

type FargateProfileSelectorArrayInput interface {
	pulumi.Input

	ToFargateProfileSelectorArrayOutput() FargateProfileSelectorArrayOutput
	ToFargateProfileSelectorArrayOutputWithContext(context.Context) FargateProfileSelectorArrayOutput
}

FargateProfileSelectorArrayInput is an input type that accepts FargateProfileSelectorArray and FargateProfileSelectorArrayOutput values. You can construct a concrete instance of `FargateProfileSelectorArrayInput` via:

FargateProfileSelectorArray{ FargateProfileSelectorArgs{...} }

type FargateProfileSelectorArrayOutput

type FargateProfileSelectorArrayOutput struct{ *pulumi.OutputState }

func (FargateProfileSelectorArrayOutput) ElementType

func (FargateProfileSelectorArrayOutput) Index

func (FargateProfileSelectorArrayOutput) ToFargateProfileSelectorArrayOutput

func (o FargateProfileSelectorArrayOutput) ToFargateProfileSelectorArrayOutput() FargateProfileSelectorArrayOutput

func (FargateProfileSelectorArrayOutput) ToFargateProfileSelectorArrayOutputWithContext

func (o FargateProfileSelectorArrayOutput) ToFargateProfileSelectorArrayOutputWithContext(ctx context.Context) FargateProfileSelectorArrayOutput

type FargateProfileSelectorInput

type FargateProfileSelectorInput interface {
	pulumi.Input

	ToFargateProfileSelectorOutput() FargateProfileSelectorOutput
	ToFargateProfileSelectorOutputWithContext(context.Context) FargateProfileSelectorOutput
}

FargateProfileSelectorInput is an input type that accepts FargateProfileSelectorArgs and FargateProfileSelectorOutput values. You can construct a concrete instance of `FargateProfileSelectorInput` via:

FargateProfileSelectorArgs{...}

type FargateProfileSelectorOutput

type FargateProfileSelectorOutput struct{ *pulumi.OutputState }

func (FargateProfileSelectorOutput) ElementType

func (FargateProfileSelectorOutput) Labels

Key-value map of Kubernetes labels for selection.

func (FargateProfileSelectorOutput) Namespace

Kubernetes namespace for selection.

The following arguments are optional:

func (FargateProfileSelectorOutput) ToFargateProfileSelectorOutput

func (o FargateProfileSelectorOutput) ToFargateProfileSelectorOutput() FargateProfileSelectorOutput

func (FargateProfileSelectorOutput) ToFargateProfileSelectorOutputWithContext

func (o FargateProfileSelectorOutput) ToFargateProfileSelectorOutputWithContext(ctx context.Context) FargateProfileSelectorOutput

type FargateProfileState

type FargateProfileState struct {
	// Amazon Resource Name (ARN) of the EKS Fargate Profile.
	Arn pulumi.StringPtrInput
	// Name of the EKS Cluster.
	ClusterName pulumi.StringPtrInput
	// Name of the EKS Fargate Profile.
	FargateProfileName pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Fargate Profile.
	PodExecutionRoleArn pulumi.StringPtrInput
	// Configuration block(s) for selecting Kubernetes Pods to execute with this EKS Fargate Profile. Detailed below.
	Selectors FargateProfileSelectorArrayInput
	// Status of the EKS Fargate Profile.
	Status pulumi.StringPtrInput
	// Identifiers of private EC2 Subnets to associate with the EKS Fargate Profile. These subnets must have the following resource tag: `kubernetes.io/cluster/CLUSTER_NAME` (where `CLUSTER_NAME` is replaced with the name of the EKS Cluster).
	//
	// The following arguments are optional:
	SubnetIds pulumi.StringArrayInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (FargateProfileState) ElementType

func (FargateProfileState) ElementType() reflect.Type

type GetAddonVersionArgs

type GetAddonVersionArgs struct {
	// Name of the EKS add-on. The name must match one of
	// the names returned by [list-addon](https://docs.aws.amazon.com/cli/latest/reference/eks/list-addons.html).
	AddonName string `pulumi:"addonName"`
	// Version of the EKS Cluster. Must be between 1-100 characters in length. Must begin with an alphanumeric character, and must only contain alphanumeric characters, dashes and underscores (`^[0-9A-Za-z][A-Za-z0-9\-_]+$`).
	KubernetesVersion string `pulumi:"kubernetesVersion"`
	// Determines if the most recent or default version of the addon should be returned.
	MostRecent *bool `pulumi:"mostRecent"`
}

A collection of arguments for invoking getAddonVersion.

type GetAddonVersionOutputArgs

type GetAddonVersionOutputArgs struct {
	// Name of the EKS add-on. The name must match one of
	// the names returned by [list-addon](https://docs.aws.amazon.com/cli/latest/reference/eks/list-addons.html).
	AddonName pulumi.StringInput `pulumi:"addonName"`
	// Version of the EKS Cluster. Must be between 1-100 characters in length. Must begin with an alphanumeric character, and must only contain alphanumeric characters, dashes and underscores (`^[0-9A-Za-z][A-Za-z0-9\-_]+$`).
	KubernetesVersion pulumi.StringInput `pulumi:"kubernetesVersion"`
	// Determines if the most recent or default version of the addon should be returned.
	MostRecent pulumi.BoolPtrInput `pulumi:"mostRecent"`
}

A collection of arguments for invoking getAddonVersion.

func (GetAddonVersionOutputArgs) ElementType

func (GetAddonVersionOutputArgs) ElementType() reflect.Type

type GetAddonVersionResult

type GetAddonVersionResult struct {
	AddonName string `pulumi:"addonName"`
	// The provider-assigned unique ID for this managed resource.
	Id                string `pulumi:"id"`
	KubernetesVersion string `pulumi:"kubernetesVersion"`
	MostRecent        *bool  `pulumi:"mostRecent"`
	// Version of the EKS add-on.
	Version string `pulumi:"version"`
}

A collection of values returned by getAddonVersion.

func GetAddonVersion

func GetAddonVersion(ctx *pulumi.Context, args *GetAddonVersionArgs, opts ...pulumi.InvokeOption) (*GetAddonVersionResult, error)

Retrieve information about a specific EKS add-on version compatible with an EKS cluster version.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := eks.GetAddonVersion(ctx, &eks.GetAddonVersionArgs{
			AddonName:         "vpc-cni",
			KubernetesVersion: example.Version,
		}, nil)
		if err != nil {
			return err
		}
		latest, err := eks.GetAddonVersion(ctx, &eks.GetAddonVersionArgs{
			AddonName:         "vpc-cni",
			KubernetesVersion: example.Version,
			MostRecent:        pulumi.BoolRef(true),
		}, nil)
		if err != nil {
			return err
		}
		_, err = eks.NewAddon(ctx, "vpc_cni", &eks.AddonArgs{
			ClusterName:  pulumi.Any(example.Name),
			AddonName:    pulumi.String("vpc-cni"),
			AddonVersion: pulumi.String(latest.Version),
		})
		if err != nil {
			return err
		}
		ctx.Export("default", _default.Version)
		ctx.Export("latest", latest.Version)
		return nil
	})
}

```

type GetAddonVersionResultOutput

type GetAddonVersionResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAddonVersion.

func (GetAddonVersionResultOutput) AddonName

func (GetAddonVersionResultOutput) ElementType

func (GetAddonVersionResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAddonVersionResultOutput) KubernetesVersion

func (o GetAddonVersionResultOutput) KubernetesVersion() pulumi.StringOutput

func (GetAddonVersionResultOutput) MostRecent

func (GetAddonVersionResultOutput) ToGetAddonVersionResultOutput

func (o GetAddonVersionResultOutput) ToGetAddonVersionResultOutput() GetAddonVersionResultOutput

func (GetAddonVersionResultOutput) ToGetAddonVersionResultOutputWithContext

func (o GetAddonVersionResultOutput) ToGetAddonVersionResultOutputWithContext(ctx context.Context) GetAddonVersionResultOutput

func (GetAddonVersionResultOutput) Version

Version of the EKS add-on.

type GetClusterAccessConfig added in v6.18.2

type GetClusterAccessConfig struct {
	// Values returned are `CONFIG_MAP`, `API` or `API_AND_CONFIG_MAP`
	AuthenticationMode string `pulumi:"authenticationMode"`
}

type GetClusterAccessConfigArgs added in v6.18.2

type GetClusterAccessConfigArgs struct {
	// Values returned are `CONFIG_MAP`, `API` or `API_AND_CONFIG_MAP`
	AuthenticationMode pulumi.StringInput `pulumi:"authenticationMode"`
}

func (GetClusterAccessConfigArgs) ElementType added in v6.18.2

func (GetClusterAccessConfigArgs) ElementType() reflect.Type

func (GetClusterAccessConfigArgs) ToGetClusterAccessConfigOutput added in v6.18.2

func (i GetClusterAccessConfigArgs) ToGetClusterAccessConfigOutput() GetClusterAccessConfigOutput

func (GetClusterAccessConfigArgs) ToGetClusterAccessConfigOutputWithContext added in v6.18.2

func (i GetClusterAccessConfigArgs) ToGetClusterAccessConfigOutputWithContext(ctx context.Context) GetClusterAccessConfigOutput

type GetClusterAccessConfigArray added in v6.18.2

type GetClusterAccessConfigArray []GetClusterAccessConfigInput

func (GetClusterAccessConfigArray) ElementType added in v6.18.2

func (GetClusterAccessConfigArray) ToGetClusterAccessConfigArrayOutput added in v6.18.2

func (i GetClusterAccessConfigArray) ToGetClusterAccessConfigArrayOutput() GetClusterAccessConfigArrayOutput

func (GetClusterAccessConfigArray) ToGetClusterAccessConfigArrayOutputWithContext added in v6.18.2

func (i GetClusterAccessConfigArray) ToGetClusterAccessConfigArrayOutputWithContext(ctx context.Context) GetClusterAccessConfigArrayOutput

type GetClusterAccessConfigArrayInput added in v6.18.2

type GetClusterAccessConfigArrayInput interface {
	pulumi.Input

	ToGetClusterAccessConfigArrayOutput() GetClusterAccessConfigArrayOutput
	ToGetClusterAccessConfigArrayOutputWithContext(context.Context) GetClusterAccessConfigArrayOutput
}

GetClusterAccessConfigArrayInput is an input type that accepts GetClusterAccessConfigArray and GetClusterAccessConfigArrayOutput values. You can construct a concrete instance of `GetClusterAccessConfigArrayInput` via:

GetClusterAccessConfigArray{ GetClusterAccessConfigArgs{...} }

type GetClusterAccessConfigArrayOutput added in v6.18.2

type GetClusterAccessConfigArrayOutput struct{ *pulumi.OutputState }

func (GetClusterAccessConfigArrayOutput) ElementType added in v6.18.2

func (GetClusterAccessConfigArrayOutput) Index added in v6.18.2

func (GetClusterAccessConfigArrayOutput) ToGetClusterAccessConfigArrayOutput added in v6.18.2

func (o GetClusterAccessConfigArrayOutput) ToGetClusterAccessConfigArrayOutput() GetClusterAccessConfigArrayOutput

func (GetClusterAccessConfigArrayOutput) ToGetClusterAccessConfigArrayOutputWithContext added in v6.18.2

func (o GetClusterAccessConfigArrayOutput) ToGetClusterAccessConfigArrayOutputWithContext(ctx context.Context) GetClusterAccessConfigArrayOutput

type GetClusterAccessConfigInput added in v6.18.2

type GetClusterAccessConfigInput interface {
	pulumi.Input

	ToGetClusterAccessConfigOutput() GetClusterAccessConfigOutput
	ToGetClusterAccessConfigOutputWithContext(context.Context) GetClusterAccessConfigOutput
}

GetClusterAccessConfigInput is an input type that accepts GetClusterAccessConfigArgs and GetClusterAccessConfigOutput values. You can construct a concrete instance of `GetClusterAccessConfigInput` via:

GetClusterAccessConfigArgs{...}

type GetClusterAccessConfigOutput added in v6.18.2

type GetClusterAccessConfigOutput struct{ *pulumi.OutputState }

func (GetClusterAccessConfigOutput) AuthenticationMode added in v6.18.2

func (o GetClusterAccessConfigOutput) AuthenticationMode() pulumi.StringOutput

Values returned are `CONFIG_MAP`, `API` or `API_AND_CONFIG_MAP`

func (GetClusterAccessConfigOutput) ElementType added in v6.18.2

func (GetClusterAccessConfigOutput) ToGetClusterAccessConfigOutput added in v6.18.2

func (o GetClusterAccessConfigOutput) ToGetClusterAccessConfigOutput() GetClusterAccessConfigOutput

func (GetClusterAccessConfigOutput) ToGetClusterAccessConfigOutputWithContext added in v6.18.2

func (o GetClusterAccessConfigOutput) ToGetClusterAccessConfigOutputWithContext(ctx context.Context) GetClusterAccessConfigOutput

type GetClusterAuthArgs

type GetClusterAuthArgs struct {
	// Name of the cluster
	Name string `pulumi:"name"`
}

A collection of arguments for invoking getClusterAuth.

type GetClusterAuthOutputArgs

type GetClusterAuthOutputArgs struct {
	// Name of the cluster
	Name pulumi.StringInput `pulumi:"name"`
}

A collection of arguments for invoking getClusterAuth.

func (GetClusterAuthOutputArgs) ElementType

func (GetClusterAuthOutputArgs) ElementType() reflect.Type

type GetClusterAuthResult

type GetClusterAuthResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// Token to use to authenticate with the cluster.
	Token string `pulumi:"token"`
}

A collection of values returned by getClusterAuth.

func GetClusterAuth

func GetClusterAuth(ctx *pulumi.Context, args *GetClusterAuthArgs, opts ...pulumi.InvokeOption) (*GetClusterAuthResult, error)

Get an authentication token to communicate with an EKS cluster.

Uses IAM credentials from the AWS provider to generate a temporary token that is compatible with [AWS IAM Authenticator](https://github.com/kubernetes-sigs/aws-iam-authenticator) authentication. This can be used to authenticate to an EKS cluster or to a cluster that has the AWS IAM Authenticator server configured.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := eks.LookupCluster(ctx, &eks.LookupClusterArgs{
			Name: "example",
		}, nil)
		if err != nil {
			return err
		}
		_, err = eks.GetClusterAuth(ctx, &eks.GetClusterAuthArgs{
			Name: "example",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetClusterAuthResultOutput

type GetClusterAuthResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getClusterAuth.

func (GetClusterAuthResultOutput) ElementType

func (GetClusterAuthResultOutput) ElementType() reflect.Type

func (GetClusterAuthResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetClusterAuthResultOutput) Name

func (GetClusterAuthResultOutput) ToGetClusterAuthResultOutput

func (o GetClusterAuthResultOutput) ToGetClusterAuthResultOutput() GetClusterAuthResultOutput

func (GetClusterAuthResultOutput) ToGetClusterAuthResultOutputWithContext

func (o GetClusterAuthResultOutput) ToGetClusterAuthResultOutputWithContext(ctx context.Context) GetClusterAuthResultOutput

func (GetClusterAuthResultOutput) Token

Token to use to authenticate with the cluster.

type GetClusterCertificateAuthority

type GetClusterCertificateAuthority struct {
	// The base64 encoded certificate data required to communicate with your cluster. Add this to the `certificate-authority-data` section of the `kubeconfig` file for your cluster.
	Data string `pulumi:"data"`
}

type GetClusterCertificateAuthorityArgs

type GetClusterCertificateAuthorityArgs struct {
	// The base64 encoded certificate data required to communicate with your cluster. Add this to the `certificate-authority-data` section of the `kubeconfig` file for your cluster.
	Data pulumi.StringInput `pulumi:"data"`
}

func (GetClusterCertificateAuthorityArgs) ElementType

func (GetClusterCertificateAuthorityArgs) ToGetClusterCertificateAuthorityOutput

func (i GetClusterCertificateAuthorityArgs) ToGetClusterCertificateAuthorityOutput() GetClusterCertificateAuthorityOutput

func (GetClusterCertificateAuthorityArgs) ToGetClusterCertificateAuthorityOutputWithContext

func (i GetClusterCertificateAuthorityArgs) ToGetClusterCertificateAuthorityOutputWithContext(ctx context.Context) GetClusterCertificateAuthorityOutput

type GetClusterCertificateAuthorityArray

type GetClusterCertificateAuthorityArray []GetClusterCertificateAuthorityInput

func (GetClusterCertificateAuthorityArray) ElementType

func (GetClusterCertificateAuthorityArray) ToGetClusterCertificateAuthorityArrayOutput

func (i GetClusterCertificateAuthorityArray) ToGetClusterCertificateAuthorityArrayOutput() GetClusterCertificateAuthorityArrayOutput

func (GetClusterCertificateAuthorityArray) ToGetClusterCertificateAuthorityArrayOutputWithContext

func (i GetClusterCertificateAuthorityArray) ToGetClusterCertificateAuthorityArrayOutputWithContext(ctx context.Context) GetClusterCertificateAuthorityArrayOutput

type GetClusterCertificateAuthorityArrayInput

type GetClusterCertificateAuthorityArrayInput interface {
	pulumi.Input

	ToGetClusterCertificateAuthorityArrayOutput() GetClusterCertificateAuthorityArrayOutput
	ToGetClusterCertificateAuthorityArrayOutputWithContext(context.Context) GetClusterCertificateAuthorityArrayOutput
}

GetClusterCertificateAuthorityArrayInput is an input type that accepts GetClusterCertificateAuthorityArray and GetClusterCertificateAuthorityArrayOutput values. You can construct a concrete instance of `GetClusterCertificateAuthorityArrayInput` via:

GetClusterCertificateAuthorityArray{ GetClusterCertificateAuthorityArgs{...} }

type GetClusterCertificateAuthorityArrayOutput

type GetClusterCertificateAuthorityArrayOutput struct{ *pulumi.OutputState }

func (GetClusterCertificateAuthorityArrayOutput) ElementType

func (GetClusterCertificateAuthorityArrayOutput) Index

func (GetClusterCertificateAuthorityArrayOutput) ToGetClusterCertificateAuthorityArrayOutput

func (o GetClusterCertificateAuthorityArrayOutput) ToGetClusterCertificateAuthorityArrayOutput() GetClusterCertificateAuthorityArrayOutput

func (GetClusterCertificateAuthorityArrayOutput) ToGetClusterCertificateAuthorityArrayOutputWithContext

func (o GetClusterCertificateAuthorityArrayOutput) ToGetClusterCertificateAuthorityArrayOutputWithContext(ctx context.Context) GetClusterCertificateAuthorityArrayOutput

type GetClusterCertificateAuthorityInput

type GetClusterCertificateAuthorityInput interface {
	pulumi.Input

	ToGetClusterCertificateAuthorityOutput() GetClusterCertificateAuthorityOutput
	ToGetClusterCertificateAuthorityOutputWithContext(context.Context) GetClusterCertificateAuthorityOutput
}

GetClusterCertificateAuthorityInput is an input type that accepts GetClusterCertificateAuthorityArgs and GetClusterCertificateAuthorityOutput values. You can construct a concrete instance of `GetClusterCertificateAuthorityInput` via:

GetClusterCertificateAuthorityArgs{...}

type GetClusterCertificateAuthorityOutput

type GetClusterCertificateAuthorityOutput struct{ *pulumi.OutputState }

func (GetClusterCertificateAuthorityOutput) Data

The base64 encoded certificate data required to communicate with your cluster. Add this to the `certificate-authority-data` section of the `kubeconfig` file for your cluster.

func (GetClusterCertificateAuthorityOutput) ElementType

func (GetClusterCertificateAuthorityOutput) ToGetClusterCertificateAuthorityOutput

func (o GetClusterCertificateAuthorityOutput) ToGetClusterCertificateAuthorityOutput() GetClusterCertificateAuthorityOutput

func (GetClusterCertificateAuthorityOutput) ToGetClusterCertificateAuthorityOutputWithContext

func (o GetClusterCertificateAuthorityOutput) ToGetClusterCertificateAuthorityOutputWithContext(ctx context.Context) GetClusterCertificateAuthorityOutput

type GetClusterIdentity

type GetClusterIdentity struct {
	// Nested attribute containing [OpenID Connect](https://openid.net/connect/) identity provider information for the cluster.
	Oidcs []GetClusterIdentityOidc `pulumi:"oidcs"`
}

type GetClusterIdentityArgs

type GetClusterIdentityArgs struct {
	// Nested attribute containing [OpenID Connect](https://openid.net/connect/) identity provider information for the cluster.
	Oidcs GetClusterIdentityOidcArrayInput `pulumi:"oidcs"`
}

func (GetClusterIdentityArgs) ElementType

func (GetClusterIdentityArgs) ElementType() reflect.Type

func (GetClusterIdentityArgs) ToGetClusterIdentityOutput

func (i GetClusterIdentityArgs) ToGetClusterIdentityOutput() GetClusterIdentityOutput

func (GetClusterIdentityArgs) ToGetClusterIdentityOutputWithContext

func (i GetClusterIdentityArgs) ToGetClusterIdentityOutputWithContext(ctx context.Context) GetClusterIdentityOutput

type GetClusterIdentityArray

type GetClusterIdentityArray []GetClusterIdentityInput

func (GetClusterIdentityArray) ElementType

func (GetClusterIdentityArray) ElementType() reflect.Type

func (GetClusterIdentityArray) ToGetClusterIdentityArrayOutput

func (i GetClusterIdentityArray) ToGetClusterIdentityArrayOutput() GetClusterIdentityArrayOutput

func (GetClusterIdentityArray) ToGetClusterIdentityArrayOutputWithContext

func (i GetClusterIdentityArray) ToGetClusterIdentityArrayOutputWithContext(ctx context.Context) GetClusterIdentityArrayOutput

type GetClusterIdentityArrayInput

type GetClusterIdentityArrayInput interface {
	pulumi.Input

	ToGetClusterIdentityArrayOutput() GetClusterIdentityArrayOutput
	ToGetClusterIdentityArrayOutputWithContext(context.Context) GetClusterIdentityArrayOutput
}

GetClusterIdentityArrayInput is an input type that accepts GetClusterIdentityArray and GetClusterIdentityArrayOutput values. You can construct a concrete instance of `GetClusterIdentityArrayInput` via:

GetClusterIdentityArray{ GetClusterIdentityArgs{...} }

type GetClusterIdentityArrayOutput

type GetClusterIdentityArrayOutput struct{ *pulumi.OutputState }

func (GetClusterIdentityArrayOutput) ElementType

func (GetClusterIdentityArrayOutput) Index

func (GetClusterIdentityArrayOutput) ToGetClusterIdentityArrayOutput

func (o GetClusterIdentityArrayOutput) ToGetClusterIdentityArrayOutput() GetClusterIdentityArrayOutput

func (GetClusterIdentityArrayOutput) ToGetClusterIdentityArrayOutputWithContext

func (o GetClusterIdentityArrayOutput) ToGetClusterIdentityArrayOutputWithContext(ctx context.Context) GetClusterIdentityArrayOutput

type GetClusterIdentityInput

type GetClusterIdentityInput interface {
	pulumi.Input

	ToGetClusterIdentityOutput() GetClusterIdentityOutput
	ToGetClusterIdentityOutputWithContext(context.Context) GetClusterIdentityOutput
}

GetClusterIdentityInput is an input type that accepts GetClusterIdentityArgs and GetClusterIdentityOutput values. You can construct a concrete instance of `GetClusterIdentityInput` via:

GetClusterIdentityArgs{...}

type GetClusterIdentityOidc

type GetClusterIdentityOidc struct {
	// Issuer URL for the OpenID Connect identity provider.
	Issuer string `pulumi:"issuer"`
}

type GetClusterIdentityOidcArgs

type GetClusterIdentityOidcArgs struct {
	// Issuer URL for the OpenID Connect identity provider.
	Issuer pulumi.StringInput `pulumi:"issuer"`
}

func (GetClusterIdentityOidcArgs) ElementType

func (GetClusterIdentityOidcArgs) ElementType() reflect.Type

func (GetClusterIdentityOidcArgs) ToGetClusterIdentityOidcOutput

func (i GetClusterIdentityOidcArgs) ToGetClusterIdentityOidcOutput() GetClusterIdentityOidcOutput

func (GetClusterIdentityOidcArgs) ToGetClusterIdentityOidcOutputWithContext

func (i GetClusterIdentityOidcArgs) ToGetClusterIdentityOidcOutputWithContext(ctx context.Context) GetClusterIdentityOidcOutput

type GetClusterIdentityOidcArray

type GetClusterIdentityOidcArray []GetClusterIdentityOidcInput

func (GetClusterIdentityOidcArray) ElementType

func (GetClusterIdentityOidcArray) ToGetClusterIdentityOidcArrayOutput

func (i GetClusterIdentityOidcArray) ToGetClusterIdentityOidcArrayOutput() GetClusterIdentityOidcArrayOutput

func (GetClusterIdentityOidcArray) ToGetClusterIdentityOidcArrayOutputWithContext

func (i GetClusterIdentityOidcArray) ToGetClusterIdentityOidcArrayOutputWithContext(ctx context.Context) GetClusterIdentityOidcArrayOutput

type GetClusterIdentityOidcArrayInput

type GetClusterIdentityOidcArrayInput interface {
	pulumi.Input

	ToGetClusterIdentityOidcArrayOutput() GetClusterIdentityOidcArrayOutput
	ToGetClusterIdentityOidcArrayOutputWithContext(context.Context) GetClusterIdentityOidcArrayOutput
}

GetClusterIdentityOidcArrayInput is an input type that accepts GetClusterIdentityOidcArray and GetClusterIdentityOidcArrayOutput values. You can construct a concrete instance of `GetClusterIdentityOidcArrayInput` via:

GetClusterIdentityOidcArray{ GetClusterIdentityOidcArgs{...} }

type GetClusterIdentityOidcArrayOutput

type GetClusterIdentityOidcArrayOutput struct{ *pulumi.OutputState }

func (GetClusterIdentityOidcArrayOutput) ElementType

func (GetClusterIdentityOidcArrayOutput) Index

func (GetClusterIdentityOidcArrayOutput) ToGetClusterIdentityOidcArrayOutput

func (o GetClusterIdentityOidcArrayOutput) ToGetClusterIdentityOidcArrayOutput() GetClusterIdentityOidcArrayOutput

func (GetClusterIdentityOidcArrayOutput) ToGetClusterIdentityOidcArrayOutputWithContext

func (o GetClusterIdentityOidcArrayOutput) ToGetClusterIdentityOidcArrayOutputWithContext(ctx context.Context) GetClusterIdentityOidcArrayOutput

type GetClusterIdentityOidcInput

type GetClusterIdentityOidcInput interface {
	pulumi.Input

	ToGetClusterIdentityOidcOutput() GetClusterIdentityOidcOutput
	ToGetClusterIdentityOidcOutputWithContext(context.Context) GetClusterIdentityOidcOutput
}

GetClusterIdentityOidcInput is an input type that accepts GetClusterIdentityOidcArgs and GetClusterIdentityOidcOutput values. You can construct a concrete instance of `GetClusterIdentityOidcInput` via:

GetClusterIdentityOidcArgs{...}

type GetClusterIdentityOidcOutput

type GetClusterIdentityOidcOutput struct{ *pulumi.OutputState }

func (GetClusterIdentityOidcOutput) ElementType

func (GetClusterIdentityOidcOutput) Issuer

Issuer URL for the OpenID Connect identity provider.

func (GetClusterIdentityOidcOutput) ToGetClusterIdentityOidcOutput

func (o GetClusterIdentityOidcOutput) ToGetClusterIdentityOidcOutput() GetClusterIdentityOidcOutput

func (GetClusterIdentityOidcOutput) ToGetClusterIdentityOidcOutputWithContext

func (o GetClusterIdentityOidcOutput) ToGetClusterIdentityOidcOutputWithContext(ctx context.Context) GetClusterIdentityOidcOutput

type GetClusterIdentityOutput

type GetClusterIdentityOutput struct{ *pulumi.OutputState }

func (GetClusterIdentityOutput) ElementType

func (GetClusterIdentityOutput) ElementType() reflect.Type

func (GetClusterIdentityOutput) Oidcs

Nested attribute containing [OpenID Connect](https://openid.net/connect/) identity provider information for the cluster.

func (GetClusterIdentityOutput) ToGetClusterIdentityOutput

func (o GetClusterIdentityOutput) ToGetClusterIdentityOutput() GetClusterIdentityOutput

func (GetClusterIdentityOutput) ToGetClusterIdentityOutputWithContext

func (o GetClusterIdentityOutput) ToGetClusterIdentityOutputWithContext(ctx context.Context) GetClusterIdentityOutput

type GetClusterKubernetesNetworkConfig

type GetClusterKubernetesNetworkConfig struct {
	// `ipv4` or `ipv6`.
	IpFamily string `pulumi:"ipFamily"`
	// The CIDR block to assign Kubernetes pod and service IP addresses from if `ipv4` was specified when the cluster was created.
	ServiceIpv4Cidr string `pulumi:"serviceIpv4Cidr"`
	// The CIDR block to assign Kubernetes pod and service IP addresses from if `ipv6` was specified when the cluster was created. Kubernetes assigns service addresses from the unique local address range (fc00::/7) because you can't specify a custom IPv6 CIDR block when you create the cluster.
	ServiceIpv6Cidr string `pulumi:"serviceIpv6Cidr"`
}

type GetClusterKubernetesNetworkConfigArgs

type GetClusterKubernetesNetworkConfigArgs struct {
	// `ipv4` or `ipv6`.
	IpFamily pulumi.StringInput `pulumi:"ipFamily"`
	// The CIDR block to assign Kubernetes pod and service IP addresses from if `ipv4` was specified when the cluster was created.
	ServiceIpv4Cidr pulumi.StringInput `pulumi:"serviceIpv4Cidr"`
	// The CIDR block to assign Kubernetes pod and service IP addresses from if `ipv6` was specified when the cluster was created. Kubernetes assigns service addresses from the unique local address range (fc00::/7) because you can't specify a custom IPv6 CIDR block when you create the cluster.
	ServiceIpv6Cidr pulumi.StringInput `pulumi:"serviceIpv6Cidr"`
}

func (GetClusterKubernetesNetworkConfigArgs) ElementType

func (GetClusterKubernetesNetworkConfigArgs) ToGetClusterKubernetesNetworkConfigOutput

func (i GetClusterKubernetesNetworkConfigArgs) ToGetClusterKubernetesNetworkConfigOutput() GetClusterKubernetesNetworkConfigOutput

func (GetClusterKubernetesNetworkConfigArgs) ToGetClusterKubernetesNetworkConfigOutputWithContext

func (i GetClusterKubernetesNetworkConfigArgs) ToGetClusterKubernetesNetworkConfigOutputWithContext(ctx context.Context) GetClusterKubernetesNetworkConfigOutput

type GetClusterKubernetesNetworkConfigArray

type GetClusterKubernetesNetworkConfigArray []GetClusterKubernetesNetworkConfigInput

func (GetClusterKubernetesNetworkConfigArray) ElementType

func (GetClusterKubernetesNetworkConfigArray) ToGetClusterKubernetesNetworkConfigArrayOutput

func (i GetClusterKubernetesNetworkConfigArray) ToGetClusterKubernetesNetworkConfigArrayOutput() GetClusterKubernetesNetworkConfigArrayOutput

func (GetClusterKubernetesNetworkConfigArray) ToGetClusterKubernetesNetworkConfigArrayOutputWithContext

func (i GetClusterKubernetesNetworkConfigArray) ToGetClusterKubernetesNetworkConfigArrayOutputWithContext(ctx context.Context) GetClusterKubernetesNetworkConfigArrayOutput

type GetClusterKubernetesNetworkConfigArrayInput

type GetClusterKubernetesNetworkConfigArrayInput interface {
	pulumi.Input

	ToGetClusterKubernetesNetworkConfigArrayOutput() GetClusterKubernetesNetworkConfigArrayOutput
	ToGetClusterKubernetesNetworkConfigArrayOutputWithContext(context.Context) GetClusterKubernetesNetworkConfigArrayOutput
}

GetClusterKubernetesNetworkConfigArrayInput is an input type that accepts GetClusterKubernetesNetworkConfigArray and GetClusterKubernetesNetworkConfigArrayOutput values. You can construct a concrete instance of `GetClusterKubernetesNetworkConfigArrayInput` via:

GetClusterKubernetesNetworkConfigArray{ GetClusterKubernetesNetworkConfigArgs{...} }

type GetClusterKubernetesNetworkConfigArrayOutput

type GetClusterKubernetesNetworkConfigArrayOutput struct{ *pulumi.OutputState }

func (GetClusterKubernetesNetworkConfigArrayOutput) ElementType

func (GetClusterKubernetesNetworkConfigArrayOutput) Index

func (GetClusterKubernetesNetworkConfigArrayOutput) ToGetClusterKubernetesNetworkConfigArrayOutput

func (o GetClusterKubernetesNetworkConfigArrayOutput) ToGetClusterKubernetesNetworkConfigArrayOutput() GetClusterKubernetesNetworkConfigArrayOutput

func (GetClusterKubernetesNetworkConfigArrayOutput) ToGetClusterKubernetesNetworkConfigArrayOutputWithContext

func (o GetClusterKubernetesNetworkConfigArrayOutput) ToGetClusterKubernetesNetworkConfigArrayOutputWithContext(ctx context.Context) GetClusterKubernetesNetworkConfigArrayOutput

type GetClusterKubernetesNetworkConfigInput

type GetClusterKubernetesNetworkConfigInput interface {
	pulumi.Input

	ToGetClusterKubernetesNetworkConfigOutput() GetClusterKubernetesNetworkConfigOutput
	ToGetClusterKubernetesNetworkConfigOutputWithContext(context.Context) GetClusterKubernetesNetworkConfigOutput
}

GetClusterKubernetesNetworkConfigInput is an input type that accepts GetClusterKubernetesNetworkConfigArgs and GetClusterKubernetesNetworkConfigOutput values. You can construct a concrete instance of `GetClusterKubernetesNetworkConfigInput` via:

GetClusterKubernetesNetworkConfigArgs{...}

type GetClusterKubernetesNetworkConfigOutput

type GetClusterKubernetesNetworkConfigOutput struct{ *pulumi.OutputState }

func (GetClusterKubernetesNetworkConfigOutput) ElementType

func (GetClusterKubernetesNetworkConfigOutput) IpFamily

`ipv4` or `ipv6`.

func (GetClusterKubernetesNetworkConfigOutput) ServiceIpv4Cidr

The CIDR block to assign Kubernetes pod and service IP addresses from if `ipv4` was specified when the cluster was created.

func (GetClusterKubernetesNetworkConfigOutput) ServiceIpv6Cidr

The CIDR block to assign Kubernetes pod and service IP addresses from if `ipv6` was specified when the cluster was created. Kubernetes assigns service addresses from the unique local address range (fc00::/7) because you can't specify a custom IPv6 CIDR block when you create the cluster.

func (GetClusterKubernetesNetworkConfigOutput) ToGetClusterKubernetesNetworkConfigOutput

func (o GetClusterKubernetesNetworkConfigOutput) ToGetClusterKubernetesNetworkConfigOutput() GetClusterKubernetesNetworkConfigOutput

func (GetClusterKubernetesNetworkConfigOutput) ToGetClusterKubernetesNetworkConfigOutputWithContext

func (o GetClusterKubernetesNetworkConfigOutput) ToGetClusterKubernetesNetworkConfigOutputWithContext(ctx context.Context) GetClusterKubernetesNetworkConfigOutput

type GetClusterOutpostConfig

type GetClusterOutpostConfig struct {
	// The Amazon EC2 instance type for all Kubernetes control plane instances.
	ControlPlaneInstanceType string `pulumi:"controlPlaneInstanceType"`
	// An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on AWS Outpost.
	ControlPlanePlacements []GetClusterOutpostConfigControlPlanePlacement `pulumi:"controlPlanePlacements"`
	// List of ARNs of the Outposts hosting the EKS cluster. Only a single ARN is supported currently.
	OutpostArns []string `pulumi:"outpostArns"`
}

type GetClusterOutpostConfigArgs

type GetClusterOutpostConfigArgs struct {
	// The Amazon EC2 instance type for all Kubernetes control plane instances.
	ControlPlaneInstanceType pulumi.StringInput `pulumi:"controlPlaneInstanceType"`
	// An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on AWS Outpost.
	ControlPlanePlacements GetClusterOutpostConfigControlPlanePlacementArrayInput `pulumi:"controlPlanePlacements"`
	// List of ARNs of the Outposts hosting the EKS cluster. Only a single ARN is supported currently.
	OutpostArns pulumi.StringArrayInput `pulumi:"outpostArns"`
}

func (GetClusterOutpostConfigArgs) ElementType

func (GetClusterOutpostConfigArgs) ToGetClusterOutpostConfigOutput

func (i GetClusterOutpostConfigArgs) ToGetClusterOutpostConfigOutput() GetClusterOutpostConfigOutput

func (GetClusterOutpostConfigArgs) ToGetClusterOutpostConfigOutputWithContext

func (i GetClusterOutpostConfigArgs) ToGetClusterOutpostConfigOutputWithContext(ctx context.Context) GetClusterOutpostConfigOutput

type GetClusterOutpostConfigArray

type GetClusterOutpostConfigArray []GetClusterOutpostConfigInput

func (GetClusterOutpostConfigArray) ElementType

func (GetClusterOutpostConfigArray) ToGetClusterOutpostConfigArrayOutput

func (i GetClusterOutpostConfigArray) ToGetClusterOutpostConfigArrayOutput() GetClusterOutpostConfigArrayOutput

func (GetClusterOutpostConfigArray) ToGetClusterOutpostConfigArrayOutputWithContext

func (i GetClusterOutpostConfigArray) ToGetClusterOutpostConfigArrayOutputWithContext(ctx context.Context) GetClusterOutpostConfigArrayOutput

type GetClusterOutpostConfigArrayInput

type GetClusterOutpostConfigArrayInput interface {
	pulumi.Input

	ToGetClusterOutpostConfigArrayOutput() GetClusterOutpostConfigArrayOutput
	ToGetClusterOutpostConfigArrayOutputWithContext(context.Context) GetClusterOutpostConfigArrayOutput
}

GetClusterOutpostConfigArrayInput is an input type that accepts GetClusterOutpostConfigArray and GetClusterOutpostConfigArrayOutput values. You can construct a concrete instance of `GetClusterOutpostConfigArrayInput` via:

GetClusterOutpostConfigArray{ GetClusterOutpostConfigArgs{...} }

type GetClusterOutpostConfigArrayOutput

type GetClusterOutpostConfigArrayOutput struct{ *pulumi.OutputState }

func (GetClusterOutpostConfigArrayOutput) ElementType

func (GetClusterOutpostConfigArrayOutput) Index

func (GetClusterOutpostConfigArrayOutput) ToGetClusterOutpostConfigArrayOutput

func (o GetClusterOutpostConfigArrayOutput) ToGetClusterOutpostConfigArrayOutput() GetClusterOutpostConfigArrayOutput

func (GetClusterOutpostConfigArrayOutput) ToGetClusterOutpostConfigArrayOutputWithContext

func (o GetClusterOutpostConfigArrayOutput) ToGetClusterOutpostConfigArrayOutputWithContext(ctx context.Context) GetClusterOutpostConfigArrayOutput

type GetClusterOutpostConfigControlPlanePlacement

type GetClusterOutpostConfigControlPlanePlacement struct {
	// The name of the placement group for the Kubernetes control plane instances.
	GroupName string `pulumi:"groupName"`
}

type GetClusterOutpostConfigControlPlanePlacementArgs

type GetClusterOutpostConfigControlPlanePlacementArgs struct {
	// The name of the placement group for the Kubernetes control plane instances.
	GroupName pulumi.StringInput `pulumi:"groupName"`
}

func (GetClusterOutpostConfigControlPlanePlacementArgs) ElementType

func (GetClusterOutpostConfigControlPlanePlacementArgs) ToGetClusterOutpostConfigControlPlanePlacementOutput

func (i GetClusterOutpostConfigControlPlanePlacementArgs) ToGetClusterOutpostConfigControlPlanePlacementOutput() GetClusterOutpostConfigControlPlanePlacementOutput

func (GetClusterOutpostConfigControlPlanePlacementArgs) ToGetClusterOutpostConfigControlPlanePlacementOutputWithContext

func (i GetClusterOutpostConfigControlPlanePlacementArgs) ToGetClusterOutpostConfigControlPlanePlacementOutputWithContext(ctx context.Context) GetClusterOutpostConfigControlPlanePlacementOutput

type GetClusterOutpostConfigControlPlanePlacementArray

type GetClusterOutpostConfigControlPlanePlacementArray []GetClusterOutpostConfigControlPlanePlacementInput

func (GetClusterOutpostConfigControlPlanePlacementArray) ElementType

func (GetClusterOutpostConfigControlPlanePlacementArray) ToGetClusterOutpostConfigControlPlanePlacementArrayOutput

func (i GetClusterOutpostConfigControlPlanePlacementArray) ToGetClusterOutpostConfigControlPlanePlacementArrayOutput() GetClusterOutpostConfigControlPlanePlacementArrayOutput

func (GetClusterOutpostConfigControlPlanePlacementArray) ToGetClusterOutpostConfigControlPlanePlacementArrayOutputWithContext

func (i GetClusterOutpostConfigControlPlanePlacementArray) ToGetClusterOutpostConfigControlPlanePlacementArrayOutputWithContext(ctx context.Context) GetClusterOutpostConfigControlPlanePlacementArrayOutput

type GetClusterOutpostConfigControlPlanePlacementArrayInput

type GetClusterOutpostConfigControlPlanePlacementArrayInput interface {
	pulumi.Input

	ToGetClusterOutpostConfigControlPlanePlacementArrayOutput() GetClusterOutpostConfigControlPlanePlacementArrayOutput
	ToGetClusterOutpostConfigControlPlanePlacementArrayOutputWithContext(context.Context) GetClusterOutpostConfigControlPlanePlacementArrayOutput
}

GetClusterOutpostConfigControlPlanePlacementArrayInput is an input type that accepts GetClusterOutpostConfigControlPlanePlacementArray and GetClusterOutpostConfigControlPlanePlacementArrayOutput values. You can construct a concrete instance of `GetClusterOutpostConfigControlPlanePlacementArrayInput` via:

GetClusterOutpostConfigControlPlanePlacementArray{ GetClusterOutpostConfigControlPlanePlacementArgs{...} }

type GetClusterOutpostConfigControlPlanePlacementArrayOutput

type GetClusterOutpostConfigControlPlanePlacementArrayOutput struct{ *pulumi.OutputState }

func (GetClusterOutpostConfigControlPlanePlacementArrayOutput) ElementType

func (GetClusterOutpostConfigControlPlanePlacementArrayOutput) Index

func (GetClusterOutpostConfigControlPlanePlacementArrayOutput) ToGetClusterOutpostConfigControlPlanePlacementArrayOutput

func (GetClusterOutpostConfigControlPlanePlacementArrayOutput) ToGetClusterOutpostConfigControlPlanePlacementArrayOutputWithContext

func (o GetClusterOutpostConfigControlPlanePlacementArrayOutput) ToGetClusterOutpostConfigControlPlanePlacementArrayOutputWithContext(ctx context.Context) GetClusterOutpostConfigControlPlanePlacementArrayOutput

type GetClusterOutpostConfigControlPlanePlacementInput

type GetClusterOutpostConfigControlPlanePlacementInput interface {
	pulumi.Input

	ToGetClusterOutpostConfigControlPlanePlacementOutput() GetClusterOutpostConfigControlPlanePlacementOutput
	ToGetClusterOutpostConfigControlPlanePlacementOutputWithContext(context.Context) GetClusterOutpostConfigControlPlanePlacementOutput
}

GetClusterOutpostConfigControlPlanePlacementInput is an input type that accepts GetClusterOutpostConfigControlPlanePlacementArgs and GetClusterOutpostConfigControlPlanePlacementOutput values. You can construct a concrete instance of `GetClusterOutpostConfigControlPlanePlacementInput` via:

GetClusterOutpostConfigControlPlanePlacementArgs{...}

type GetClusterOutpostConfigControlPlanePlacementOutput

type GetClusterOutpostConfigControlPlanePlacementOutput struct{ *pulumi.OutputState }

func (GetClusterOutpostConfigControlPlanePlacementOutput) ElementType

func (GetClusterOutpostConfigControlPlanePlacementOutput) GroupName

The name of the placement group for the Kubernetes control plane instances.

func (GetClusterOutpostConfigControlPlanePlacementOutput) ToGetClusterOutpostConfigControlPlanePlacementOutput

func (o GetClusterOutpostConfigControlPlanePlacementOutput) ToGetClusterOutpostConfigControlPlanePlacementOutput() GetClusterOutpostConfigControlPlanePlacementOutput

func (GetClusterOutpostConfigControlPlanePlacementOutput) ToGetClusterOutpostConfigControlPlanePlacementOutputWithContext

func (o GetClusterOutpostConfigControlPlanePlacementOutput) ToGetClusterOutpostConfigControlPlanePlacementOutputWithContext(ctx context.Context) GetClusterOutpostConfigControlPlanePlacementOutput

type GetClusterOutpostConfigInput

type GetClusterOutpostConfigInput interface {
	pulumi.Input

	ToGetClusterOutpostConfigOutput() GetClusterOutpostConfigOutput
	ToGetClusterOutpostConfigOutputWithContext(context.Context) GetClusterOutpostConfigOutput
}

GetClusterOutpostConfigInput is an input type that accepts GetClusterOutpostConfigArgs and GetClusterOutpostConfigOutput values. You can construct a concrete instance of `GetClusterOutpostConfigInput` via:

GetClusterOutpostConfigArgs{...}

type GetClusterOutpostConfigOutput

type GetClusterOutpostConfigOutput struct{ *pulumi.OutputState }

func (GetClusterOutpostConfigOutput) ControlPlaneInstanceType

func (o GetClusterOutpostConfigOutput) ControlPlaneInstanceType() pulumi.StringOutput

The Amazon EC2 instance type for all Kubernetes control plane instances.

func (GetClusterOutpostConfigOutput) ControlPlanePlacements

An object representing the placement configuration for all the control plane instances of your local Amazon EKS cluster on AWS Outpost.

func (GetClusterOutpostConfigOutput) ElementType

func (GetClusterOutpostConfigOutput) OutpostArns

List of ARNs of the Outposts hosting the EKS cluster. Only a single ARN is supported currently.

func (GetClusterOutpostConfigOutput) ToGetClusterOutpostConfigOutput

func (o GetClusterOutpostConfigOutput) ToGetClusterOutpostConfigOutput() GetClusterOutpostConfigOutput

func (GetClusterOutpostConfigOutput) ToGetClusterOutpostConfigOutputWithContext

func (o GetClusterOutpostConfigOutput) ToGetClusterOutpostConfigOutputWithContext(ctx context.Context) GetClusterOutpostConfigOutput

type GetClusterVpcConfig

type GetClusterVpcConfig struct {
	// The cluster security group that was created by Amazon EKS for the cluster.
	ClusterSecurityGroupId string `pulumi:"clusterSecurityGroupId"`
	// Indicates whether or not the Amazon EKS private API server endpoint is enabled.
	EndpointPrivateAccess bool `pulumi:"endpointPrivateAccess"`
	// Indicates whether or not the Amazon EKS public API server endpoint is enabled.
	EndpointPublicAccess bool `pulumi:"endpointPublicAccess"`
	// List of CIDR blocks. Indicates which CIDR blocks can access the Amazon EKS public API server endpoint.
	PublicAccessCidrs []string `pulumi:"publicAccessCidrs"`
	// List of security group IDs
	SecurityGroupIds []string `pulumi:"securityGroupIds"`
	// List of subnet IDs
	SubnetIds []string `pulumi:"subnetIds"`
	// The VPC associated with your cluster.
	VpcId string `pulumi:"vpcId"`
}

type GetClusterVpcConfigArgs

type GetClusterVpcConfigArgs struct {
	// The cluster security group that was created by Amazon EKS for the cluster.
	ClusterSecurityGroupId pulumi.StringInput `pulumi:"clusterSecurityGroupId"`
	// Indicates whether or not the Amazon EKS private API server endpoint is enabled.
	EndpointPrivateAccess pulumi.BoolInput `pulumi:"endpointPrivateAccess"`
	// Indicates whether or not the Amazon EKS public API server endpoint is enabled.
	EndpointPublicAccess pulumi.BoolInput `pulumi:"endpointPublicAccess"`
	// List of CIDR blocks. Indicates which CIDR blocks can access the Amazon EKS public API server endpoint.
	PublicAccessCidrs pulumi.StringArrayInput `pulumi:"publicAccessCidrs"`
	// List of security group IDs
	SecurityGroupIds pulumi.StringArrayInput `pulumi:"securityGroupIds"`
	// List of subnet IDs
	SubnetIds pulumi.StringArrayInput `pulumi:"subnetIds"`
	// The VPC associated with your cluster.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
}

func (GetClusterVpcConfigArgs) ElementType

func (GetClusterVpcConfigArgs) ElementType() reflect.Type

func (GetClusterVpcConfigArgs) ToGetClusterVpcConfigOutput

func (i GetClusterVpcConfigArgs) ToGetClusterVpcConfigOutput() GetClusterVpcConfigOutput

func (GetClusterVpcConfigArgs) ToGetClusterVpcConfigOutputWithContext

func (i GetClusterVpcConfigArgs) ToGetClusterVpcConfigOutputWithContext(ctx context.Context) GetClusterVpcConfigOutput

type GetClusterVpcConfigInput

type GetClusterVpcConfigInput interface {
	pulumi.Input

	ToGetClusterVpcConfigOutput() GetClusterVpcConfigOutput
	ToGetClusterVpcConfigOutputWithContext(context.Context) GetClusterVpcConfigOutput
}

GetClusterVpcConfigInput is an input type that accepts GetClusterVpcConfigArgs and GetClusterVpcConfigOutput values. You can construct a concrete instance of `GetClusterVpcConfigInput` via:

GetClusterVpcConfigArgs{...}

type GetClusterVpcConfigOutput

type GetClusterVpcConfigOutput struct{ *pulumi.OutputState }

func (GetClusterVpcConfigOutput) ClusterSecurityGroupId

func (o GetClusterVpcConfigOutput) ClusterSecurityGroupId() pulumi.StringOutput

The cluster security group that was created by Amazon EKS for the cluster.

func (GetClusterVpcConfigOutput) ElementType

func (GetClusterVpcConfigOutput) ElementType() reflect.Type

func (GetClusterVpcConfigOutput) EndpointPrivateAccess

func (o GetClusterVpcConfigOutput) EndpointPrivateAccess() pulumi.BoolOutput

Indicates whether or not the Amazon EKS private API server endpoint is enabled.

func (GetClusterVpcConfigOutput) EndpointPublicAccess

func (o GetClusterVpcConfigOutput) EndpointPublicAccess() pulumi.BoolOutput

Indicates whether or not the Amazon EKS public API server endpoint is enabled.

func (GetClusterVpcConfigOutput) PublicAccessCidrs

func (o GetClusterVpcConfigOutput) PublicAccessCidrs() pulumi.StringArrayOutput

List of CIDR blocks. Indicates which CIDR blocks can access the Amazon EKS public API server endpoint.

func (GetClusterVpcConfigOutput) SecurityGroupIds

func (o GetClusterVpcConfigOutput) SecurityGroupIds() pulumi.StringArrayOutput

List of security group IDs

func (GetClusterVpcConfigOutput) SubnetIds

List of subnet IDs

func (GetClusterVpcConfigOutput) ToGetClusterVpcConfigOutput

func (o GetClusterVpcConfigOutput) ToGetClusterVpcConfigOutput() GetClusterVpcConfigOutput

func (GetClusterVpcConfigOutput) ToGetClusterVpcConfigOutputWithContext

func (o GetClusterVpcConfigOutput) ToGetClusterVpcConfigOutputWithContext(ctx context.Context) GetClusterVpcConfigOutput

func (GetClusterVpcConfigOutput) VpcId

The VPC associated with your cluster.

type GetClustersResult

type GetClustersResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Set of EKS clusters names
	Names []string `pulumi:"names"`
}

A collection of values returned by getClusters.

func GetClusters

func GetClusters(ctx *pulumi.Context, opts ...pulumi.InvokeOption) (*GetClustersResult, error)

Retrieve EKS Clusters list

type GetClustersResultOutput added in v6.6.1

type GetClustersResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getClusters.

func GetClustersOutput added in v6.6.1

func GetClustersOutput(ctx *pulumi.Context, opts ...pulumi.InvokeOption) GetClustersResultOutput

func (GetClustersResultOutput) ElementType added in v6.6.1

func (GetClustersResultOutput) ElementType() reflect.Type

func (GetClustersResultOutput) Id added in v6.6.1

The provider-assigned unique ID for this managed resource.

func (GetClustersResultOutput) Names added in v6.6.1

Set of EKS clusters names

func (GetClustersResultOutput) ToGetClustersResultOutput added in v6.6.1

func (o GetClustersResultOutput) ToGetClustersResultOutput() GetClustersResultOutput

func (GetClustersResultOutput) ToGetClustersResultOutputWithContext added in v6.6.1

func (o GetClustersResultOutput) ToGetClustersResultOutputWithContext(ctx context.Context) GetClustersResultOutput

type GetNodeGroupLaunchTemplate

type GetNodeGroupLaunchTemplate struct {
	// The ID of the launch template.
	Id string `pulumi:"id"`
	// Name of the AutoScaling Group.
	Name string `pulumi:"name"`
	// Kubernetes version.
	Version string `pulumi:"version"`
}

type GetNodeGroupLaunchTemplateArgs

type GetNodeGroupLaunchTemplateArgs struct {
	// The ID of the launch template.
	Id pulumi.StringInput `pulumi:"id"`
	// Name of the AutoScaling Group.
	Name pulumi.StringInput `pulumi:"name"`
	// Kubernetes version.
	Version pulumi.StringInput `pulumi:"version"`
}

func (GetNodeGroupLaunchTemplateArgs) ElementType

func (GetNodeGroupLaunchTemplateArgs) ToGetNodeGroupLaunchTemplateOutput

func (i GetNodeGroupLaunchTemplateArgs) ToGetNodeGroupLaunchTemplateOutput() GetNodeGroupLaunchTemplateOutput

func (GetNodeGroupLaunchTemplateArgs) ToGetNodeGroupLaunchTemplateOutputWithContext

func (i GetNodeGroupLaunchTemplateArgs) ToGetNodeGroupLaunchTemplateOutputWithContext(ctx context.Context) GetNodeGroupLaunchTemplateOutput

type GetNodeGroupLaunchTemplateArray

type GetNodeGroupLaunchTemplateArray []GetNodeGroupLaunchTemplateInput

func (GetNodeGroupLaunchTemplateArray) ElementType

func (GetNodeGroupLaunchTemplateArray) ToGetNodeGroupLaunchTemplateArrayOutput

func (i GetNodeGroupLaunchTemplateArray) ToGetNodeGroupLaunchTemplateArrayOutput() GetNodeGroupLaunchTemplateArrayOutput

func (GetNodeGroupLaunchTemplateArray) ToGetNodeGroupLaunchTemplateArrayOutputWithContext

func (i GetNodeGroupLaunchTemplateArray) ToGetNodeGroupLaunchTemplateArrayOutputWithContext(ctx context.Context) GetNodeGroupLaunchTemplateArrayOutput

type GetNodeGroupLaunchTemplateArrayInput

type GetNodeGroupLaunchTemplateArrayInput interface {
	pulumi.Input

	ToGetNodeGroupLaunchTemplateArrayOutput() GetNodeGroupLaunchTemplateArrayOutput
	ToGetNodeGroupLaunchTemplateArrayOutputWithContext(context.Context) GetNodeGroupLaunchTemplateArrayOutput
}

GetNodeGroupLaunchTemplateArrayInput is an input type that accepts GetNodeGroupLaunchTemplateArray and GetNodeGroupLaunchTemplateArrayOutput values. You can construct a concrete instance of `GetNodeGroupLaunchTemplateArrayInput` via:

GetNodeGroupLaunchTemplateArray{ GetNodeGroupLaunchTemplateArgs{...} }

type GetNodeGroupLaunchTemplateArrayOutput

type GetNodeGroupLaunchTemplateArrayOutput struct{ *pulumi.OutputState }

func (GetNodeGroupLaunchTemplateArrayOutput) ElementType

func (GetNodeGroupLaunchTemplateArrayOutput) Index

func (GetNodeGroupLaunchTemplateArrayOutput) ToGetNodeGroupLaunchTemplateArrayOutput

func (o GetNodeGroupLaunchTemplateArrayOutput) ToGetNodeGroupLaunchTemplateArrayOutput() GetNodeGroupLaunchTemplateArrayOutput

func (GetNodeGroupLaunchTemplateArrayOutput) ToGetNodeGroupLaunchTemplateArrayOutputWithContext

func (o GetNodeGroupLaunchTemplateArrayOutput) ToGetNodeGroupLaunchTemplateArrayOutputWithContext(ctx context.Context) GetNodeGroupLaunchTemplateArrayOutput

type GetNodeGroupLaunchTemplateInput

type GetNodeGroupLaunchTemplateInput interface {
	pulumi.Input

	ToGetNodeGroupLaunchTemplateOutput() GetNodeGroupLaunchTemplateOutput
	ToGetNodeGroupLaunchTemplateOutputWithContext(context.Context) GetNodeGroupLaunchTemplateOutput
}

GetNodeGroupLaunchTemplateInput is an input type that accepts GetNodeGroupLaunchTemplateArgs and GetNodeGroupLaunchTemplateOutput values. You can construct a concrete instance of `GetNodeGroupLaunchTemplateInput` via:

GetNodeGroupLaunchTemplateArgs{...}

type GetNodeGroupLaunchTemplateOutput

type GetNodeGroupLaunchTemplateOutput struct{ *pulumi.OutputState }

func (GetNodeGroupLaunchTemplateOutput) ElementType

func (GetNodeGroupLaunchTemplateOutput) Id

The ID of the launch template.

func (GetNodeGroupLaunchTemplateOutput) Name

Name of the AutoScaling Group.

func (GetNodeGroupLaunchTemplateOutput) ToGetNodeGroupLaunchTemplateOutput

func (o GetNodeGroupLaunchTemplateOutput) ToGetNodeGroupLaunchTemplateOutput() GetNodeGroupLaunchTemplateOutput

func (GetNodeGroupLaunchTemplateOutput) ToGetNodeGroupLaunchTemplateOutputWithContext

func (o GetNodeGroupLaunchTemplateOutput) ToGetNodeGroupLaunchTemplateOutputWithContext(ctx context.Context) GetNodeGroupLaunchTemplateOutput

func (GetNodeGroupLaunchTemplateOutput) Version

Kubernetes version.

type GetNodeGroupRemoteAccess

type GetNodeGroupRemoteAccess struct {
	// EC2 Key Pair name that provides access for SSH communication with the worker nodes in the EKS Node Group.
	Ec2SshKey string `pulumi:"ec2SshKey"`
	// Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes.
	SourceSecurityGroupIds []string `pulumi:"sourceSecurityGroupIds"`
}

type GetNodeGroupRemoteAccessArgs

type GetNodeGroupRemoteAccessArgs struct {
	// EC2 Key Pair name that provides access for SSH communication with the worker nodes in the EKS Node Group.
	Ec2SshKey pulumi.StringInput `pulumi:"ec2SshKey"`
	// Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes.
	SourceSecurityGroupIds pulumi.StringArrayInput `pulumi:"sourceSecurityGroupIds"`
}

func (GetNodeGroupRemoteAccessArgs) ElementType

func (GetNodeGroupRemoteAccessArgs) ToGetNodeGroupRemoteAccessOutput

func (i GetNodeGroupRemoteAccessArgs) ToGetNodeGroupRemoteAccessOutput() GetNodeGroupRemoteAccessOutput

func (GetNodeGroupRemoteAccessArgs) ToGetNodeGroupRemoteAccessOutputWithContext

func (i GetNodeGroupRemoteAccessArgs) ToGetNodeGroupRemoteAccessOutputWithContext(ctx context.Context) GetNodeGroupRemoteAccessOutput

type GetNodeGroupRemoteAccessArray

type GetNodeGroupRemoteAccessArray []GetNodeGroupRemoteAccessInput

func (GetNodeGroupRemoteAccessArray) ElementType

func (GetNodeGroupRemoteAccessArray) ToGetNodeGroupRemoteAccessArrayOutput

func (i GetNodeGroupRemoteAccessArray) ToGetNodeGroupRemoteAccessArrayOutput() GetNodeGroupRemoteAccessArrayOutput

func (GetNodeGroupRemoteAccessArray) ToGetNodeGroupRemoteAccessArrayOutputWithContext

func (i GetNodeGroupRemoteAccessArray) ToGetNodeGroupRemoteAccessArrayOutputWithContext(ctx context.Context) GetNodeGroupRemoteAccessArrayOutput

type GetNodeGroupRemoteAccessArrayInput

type GetNodeGroupRemoteAccessArrayInput interface {
	pulumi.Input

	ToGetNodeGroupRemoteAccessArrayOutput() GetNodeGroupRemoteAccessArrayOutput
	ToGetNodeGroupRemoteAccessArrayOutputWithContext(context.Context) GetNodeGroupRemoteAccessArrayOutput
}

GetNodeGroupRemoteAccessArrayInput is an input type that accepts GetNodeGroupRemoteAccessArray and GetNodeGroupRemoteAccessArrayOutput values. You can construct a concrete instance of `GetNodeGroupRemoteAccessArrayInput` via:

GetNodeGroupRemoteAccessArray{ GetNodeGroupRemoteAccessArgs{...} }

type GetNodeGroupRemoteAccessArrayOutput

type GetNodeGroupRemoteAccessArrayOutput struct{ *pulumi.OutputState }

func (GetNodeGroupRemoteAccessArrayOutput) ElementType

func (GetNodeGroupRemoteAccessArrayOutput) Index

func (GetNodeGroupRemoteAccessArrayOutput) ToGetNodeGroupRemoteAccessArrayOutput

func (o GetNodeGroupRemoteAccessArrayOutput) ToGetNodeGroupRemoteAccessArrayOutput() GetNodeGroupRemoteAccessArrayOutput

func (GetNodeGroupRemoteAccessArrayOutput) ToGetNodeGroupRemoteAccessArrayOutputWithContext

func (o GetNodeGroupRemoteAccessArrayOutput) ToGetNodeGroupRemoteAccessArrayOutputWithContext(ctx context.Context) GetNodeGroupRemoteAccessArrayOutput

type GetNodeGroupRemoteAccessInput

type GetNodeGroupRemoteAccessInput interface {
	pulumi.Input

	ToGetNodeGroupRemoteAccessOutput() GetNodeGroupRemoteAccessOutput
	ToGetNodeGroupRemoteAccessOutputWithContext(context.Context) GetNodeGroupRemoteAccessOutput
}

GetNodeGroupRemoteAccessInput is an input type that accepts GetNodeGroupRemoteAccessArgs and GetNodeGroupRemoteAccessOutput values. You can construct a concrete instance of `GetNodeGroupRemoteAccessInput` via:

GetNodeGroupRemoteAccessArgs{...}

type GetNodeGroupRemoteAccessOutput

type GetNodeGroupRemoteAccessOutput struct{ *pulumi.OutputState }

func (GetNodeGroupRemoteAccessOutput) Ec2SshKey

EC2 Key Pair name that provides access for SSH communication with the worker nodes in the EKS Node Group.

func (GetNodeGroupRemoteAccessOutput) ElementType

func (GetNodeGroupRemoteAccessOutput) SourceSecurityGroupIds

func (o GetNodeGroupRemoteAccessOutput) SourceSecurityGroupIds() pulumi.StringArrayOutput

Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes.

func (GetNodeGroupRemoteAccessOutput) ToGetNodeGroupRemoteAccessOutput

func (o GetNodeGroupRemoteAccessOutput) ToGetNodeGroupRemoteAccessOutput() GetNodeGroupRemoteAccessOutput

func (GetNodeGroupRemoteAccessOutput) ToGetNodeGroupRemoteAccessOutputWithContext

func (o GetNodeGroupRemoteAccessOutput) ToGetNodeGroupRemoteAccessOutputWithContext(ctx context.Context) GetNodeGroupRemoteAccessOutput

type GetNodeGroupResource

type GetNodeGroupResource struct {
	// List of objects containing information about AutoScaling Groups.
	AutoscalingGroups []GetNodeGroupResourceAutoscalingGroup `pulumi:"autoscalingGroups"`
	// Identifier of the remote access EC2 Security Group.
	RemoteAccessSecurityGroupId string `pulumi:"remoteAccessSecurityGroupId"`
}

type GetNodeGroupResourceArgs

type GetNodeGroupResourceArgs struct {
	// List of objects containing information about AutoScaling Groups.
	AutoscalingGroups GetNodeGroupResourceAutoscalingGroupArrayInput `pulumi:"autoscalingGroups"`
	// Identifier of the remote access EC2 Security Group.
	RemoteAccessSecurityGroupId pulumi.StringInput `pulumi:"remoteAccessSecurityGroupId"`
}

func (GetNodeGroupResourceArgs) ElementType

func (GetNodeGroupResourceArgs) ElementType() reflect.Type

func (GetNodeGroupResourceArgs) ToGetNodeGroupResourceOutput

func (i GetNodeGroupResourceArgs) ToGetNodeGroupResourceOutput() GetNodeGroupResourceOutput

func (GetNodeGroupResourceArgs) ToGetNodeGroupResourceOutputWithContext

func (i GetNodeGroupResourceArgs) ToGetNodeGroupResourceOutputWithContext(ctx context.Context) GetNodeGroupResourceOutput

type GetNodeGroupResourceArray

type GetNodeGroupResourceArray []GetNodeGroupResourceInput

func (GetNodeGroupResourceArray) ElementType

func (GetNodeGroupResourceArray) ElementType() reflect.Type

func (GetNodeGroupResourceArray) ToGetNodeGroupResourceArrayOutput

func (i GetNodeGroupResourceArray) ToGetNodeGroupResourceArrayOutput() GetNodeGroupResourceArrayOutput

func (GetNodeGroupResourceArray) ToGetNodeGroupResourceArrayOutputWithContext

func (i GetNodeGroupResourceArray) ToGetNodeGroupResourceArrayOutputWithContext(ctx context.Context) GetNodeGroupResourceArrayOutput

type GetNodeGroupResourceArrayInput

type GetNodeGroupResourceArrayInput interface {
	pulumi.Input

	ToGetNodeGroupResourceArrayOutput() GetNodeGroupResourceArrayOutput
	ToGetNodeGroupResourceArrayOutputWithContext(context.Context) GetNodeGroupResourceArrayOutput
}

GetNodeGroupResourceArrayInput is an input type that accepts GetNodeGroupResourceArray and GetNodeGroupResourceArrayOutput values. You can construct a concrete instance of `GetNodeGroupResourceArrayInput` via:

GetNodeGroupResourceArray{ GetNodeGroupResourceArgs{...} }

type GetNodeGroupResourceArrayOutput

type GetNodeGroupResourceArrayOutput struct{ *pulumi.OutputState }

func (GetNodeGroupResourceArrayOutput) ElementType

func (GetNodeGroupResourceArrayOutput) Index

func (GetNodeGroupResourceArrayOutput) ToGetNodeGroupResourceArrayOutput

func (o GetNodeGroupResourceArrayOutput) ToGetNodeGroupResourceArrayOutput() GetNodeGroupResourceArrayOutput

func (GetNodeGroupResourceArrayOutput) ToGetNodeGroupResourceArrayOutputWithContext

func (o GetNodeGroupResourceArrayOutput) ToGetNodeGroupResourceArrayOutputWithContext(ctx context.Context) GetNodeGroupResourceArrayOutput

type GetNodeGroupResourceAutoscalingGroup

type GetNodeGroupResourceAutoscalingGroup struct {
	// Name of the AutoScaling Group.
	Name string `pulumi:"name"`
}

type GetNodeGroupResourceAutoscalingGroupArgs

type GetNodeGroupResourceAutoscalingGroupArgs struct {
	// Name of the AutoScaling Group.
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetNodeGroupResourceAutoscalingGroupArgs) ElementType

func (GetNodeGroupResourceAutoscalingGroupArgs) ToGetNodeGroupResourceAutoscalingGroupOutput

func (i GetNodeGroupResourceAutoscalingGroupArgs) ToGetNodeGroupResourceAutoscalingGroupOutput() GetNodeGroupResourceAutoscalingGroupOutput

func (GetNodeGroupResourceAutoscalingGroupArgs) ToGetNodeGroupResourceAutoscalingGroupOutputWithContext

func (i GetNodeGroupResourceAutoscalingGroupArgs) ToGetNodeGroupResourceAutoscalingGroupOutputWithContext(ctx context.Context) GetNodeGroupResourceAutoscalingGroupOutput

type GetNodeGroupResourceAutoscalingGroupArray

type GetNodeGroupResourceAutoscalingGroupArray []GetNodeGroupResourceAutoscalingGroupInput

func (GetNodeGroupResourceAutoscalingGroupArray) ElementType

func (GetNodeGroupResourceAutoscalingGroupArray) ToGetNodeGroupResourceAutoscalingGroupArrayOutput

func (i GetNodeGroupResourceAutoscalingGroupArray) ToGetNodeGroupResourceAutoscalingGroupArrayOutput() GetNodeGroupResourceAutoscalingGroupArrayOutput

func (GetNodeGroupResourceAutoscalingGroupArray) ToGetNodeGroupResourceAutoscalingGroupArrayOutputWithContext

func (i GetNodeGroupResourceAutoscalingGroupArray) ToGetNodeGroupResourceAutoscalingGroupArrayOutputWithContext(ctx context.Context) GetNodeGroupResourceAutoscalingGroupArrayOutput

type GetNodeGroupResourceAutoscalingGroupArrayInput

type GetNodeGroupResourceAutoscalingGroupArrayInput interface {
	pulumi.Input

	ToGetNodeGroupResourceAutoscalingGroupArrayOutput() GetNodeGroupResourceAutoscalingGroupArrayOutput
	ToGetNodeGroupResourceAutoscalingGroupArrayOutputWithContext(context.Context) GetNodeGroupResourceAutoscalingGroupArrayOutput
}

GetNodeGroupResourceAutoscalingGroupArrayInput is an input type that accepts GetNodeGroupResourceAutoscalingGroupArray and GetNodeGroupResourceAutoscalingGroupArrayOutput values. You can construct a concrete instance of `GetNodeGroupResourceAutoscalingGroupArrayInput` via:

GetNodeGroupResourceAutoscalingGroupArray{ GetNodeGroupResourceAutoscalingGroupArgs{...} }

type GetNodeGroupResourceAutoscalingGroupArrayOutput

type GetNodeGroupResourceAutoscalingGroupArrayOutput struct{ *pulumi.OutputState }

func (GetNodeGroupResourceAutoscalingGroupArrayOutput) ElementType

func (GetNodeGroupResourceAutoscalingGroupArrayOutput) Index

func (GetNodeGroupResourceAutoscalingGroupArrayOutput) ToGetNodeGroupResourceAutoscalingGroupArrayOutput

func (o GetNodeGroupResourceAutoscalingGroupArrayOutput) ToGetNodeGroupResourceAutoscalingGroupArrayOutput() GetNodeGroupResourceAutoscalingGroupArrayOutput

func (GetNodeGroupResourceAutoscalingGroupArrayOutput) ToGetNodeGroupResourceAutoscalingGroupArrayOutputWithContext

func (o GetNodeGroupResourceAutoscalingGroupArrayOutput) ToGetNodeGroupResourceAutoscalingGroupArrayOutputWithContext(ctx context.Context) GetNodeGroupResourceAutoscalingGroupArrayOutput

type GetNodeGroupResourceAutoscalingGroupInput

type GetNodeGroupResourceAutoscalingGroupInput interface {
	pulumi.Input

	ToGetNodeGroupResourceAutoscalingGroupOutput() GetNodeGroupResourceAutoscalingGroupOutput
	ToGetNodeGroupResourceAutoscalingGroupOutputWithContext(context.Context) GetNodeGroupResourceAutoscalingGroupOutput
}

GetNodeGroupResourceAutoscalingGroupInput is an input type that accepts GetNodeGroupResourceAutoscalingGroupArgs and GetNodeGroupResourceAutoscalingGroupOutput values. You can construct a concrete instance of `GetNodeGroupResourceAutoscalingGroupInput` via:

GetNodeGroupResourceAutoscalingGroupArgs{...}

type GetNodeGroupResourceAutoscalingGroupOutput

type GetNodeGroupResourceAutoscalingGroupOutput struct{ *pulumi.OutputState }

func (GetNodeGroupResourceAutoscalingGroupOutput) ElementType

func (GetNodeGroupResourceAutoscalingGroupOutput) Name

Name of the AutoScaling Group.

func (GetNodeGroupResourceAutoscalingGroupOutput) ToGetNodeGroupResourceAutoscalingGroupOutput

func (o GetNodeGroupResourceAutoscalingGroupOutput) ToGetNodeGroupResourceAutoscalingGroupOutput() GetNodeGroupResourceAutoscalingGroupOutput

func (GetNodeGroupResourceAutoscalingGroupOutput) ToGetNodeGroupResourceAutoscalingGroupOutputWithContext

func (o GetNodeGroupResourceAutoscalingGroupOutput) ToGetNodeGroupResourceAutoscalingGroupOutputWithContext(ctx context.Context) GetNodeGroupResourceAutoscalingGroupOutput

type GetNodeGroupResourceInput

type GetNodeGroupResourceInput interface {
	pulumi.Input

	ToGetNodeGroupResourceOutput() GetNodeGroupResourceOutput
	ToGetNodeGroupResourceOutputWithContext(context.Context) GetNodeGroupResourceOutput
}

GetNodeGroupResourceInput is an input type that accepts GetNodeGroupResourceArgs and GetNodeGroupResourceOutput values. You can construct a concrete instance of `GetNodeGroupResourceInput` via:

GetNodeGroupResourceArgs{...}

type GetNodeGroupResourceOutput

type GetNodeGroupResourceOutput struct{ *pulumi.OutputState }

func (GetNodeGroupResourceOutput) AutoscalingGroups

List of objects containing information about AutoScaling Groups.

func (GetNodeGroupResourceOutput) ElementType

func (GetNodeGroupResourceOutput) ElementType() reflect.Type

func (GetNodeGroupResourceOutput) RemoteAccessSecurityGroupId

func (o GetNodeGroupResourceOutput) RemoteAccessSecurityGroupId() pulumi.StringOutput

Identifier of the remote access EC2 Security Group.

func (GetNodeGroupResourceOutput) ToGetNodeGroupResourceOutput

func (o GetNodeGroupResourceOutput) ToGetNodeGroupResourceOutput() GetNodeGroupResourceOutput

func (GetNodeGroupResourceOutput) ToGetNodeGroupResourceOutputWithContext

func (o GetNodeGroupResourceOutput) ToGetNodeGroupResourceOutputWithContext(ctx context.Context) GetNodeGroupResourceOutput

type GetNodeGroupScalingConfig

type GetNodeGroupScalingConfig struct {
	// Desired number of worker nodes.
	DesiredSize int `pulumi:"desiredSize"`
	// Maximum number of worker nodes.
	MaxSize int `pulumi:"maxSize"`
	// Minimum number of worker nodes.
	MinSize int `pulumi:"minSize"`
}

type GetNodeGroupScalingConfigArgs

type GetNodeGroupScalingConfigArgs struct {
	// Desired number of worker nodes.
	DesiredSize pulumi.IntInput `pulumi:"desiredSize"`
	// Maximum number of worker nodes.
	MaxSize pulumi.IntInput `pulumi:"maxSize"`
	// Minimum number of worker nodes.
	MinSize pulumi.IntInput `pulumi:"minSize"`
}

func (GetNodeGroupScalingConfigArgs) ElementType

func (GetNodeGroupScalingConfigArgs) ToGetNodeGroupScalingConfigOutput

func (i GetNodeGroupScalingConfigArgs) ToGetNodeGroupScalingConfigOutput() GetNodeGroupScalingConfigOutput

func (GetNodeGroupScalingConfigArgs) ToGetNodeGroupScalingConfigOutputWithContext

func (i GetNodeGroupScalingConfigArgs) ToGetNodeGroupScalingConfigOutputWithContext(ctx context.Context) GetNodeGroupScalingConfigOutput

type GetNodeGroupScalingConfigArray

type GetNodeGroupScalingConfigArray []GetNodeGroupScalingConfigInput

func (GetNodeGroupScalingConfigArray) ElementType

func (GetNodeGroupScalingConfigArray) ToGetNodeGroupScalingConfigArrayOutput

func (i GetNodeGroupScalingConfigArray) ToGetNodeGroupScalingConfigArrayOutput() GetNodeGroupScalingConfigArrayOutput

func (GetNodeGroupScalingConfigArray) ToGetNodeGroupScalingConfigArrayOutputWithContext

func (i GetNodeGroupScalingConfigArray) ToGetNodeGroupScalingConfigArrayOutputWithContext(ctx context.Context) GetNodeGroupScalingConfigArrayOutput

type GetNodeGroupScalingConfigArrayInput

type GetNodeGroupScalingConfigArrayInput interface {
	pulumi.Input

	ToGetNodeGroupScalingConfigArrayOutput() GetNodeGroupScalingConfigArrayOutput
	ToGetNodeGroupScalingConfigArrayOutputWithContext(context.Context) GetNodeGroupScalingConfigArrayOutput
}

GetNodeGroupScalingConfigArrayInput is an input type that accepts GetNodeGroupScalingConfigArray and GetNodeGroupScalingConfigArrayOutput values. You can construct a concrete instance of `GetNodeGroupScalingConfigArrayInput` via:

GetNodeGroupScalingConfigArray{ GetNodeGroupScalingConfigArgs{...} }

type GetNodeGroupScalingConfigArrayOutput

type GetNodeGroupScalingConfigArrayOutput struct{ *pulumi.OutputState }

func (GetNodeGroupScalingConfigArrayOutput) ElementType

func (GetNodeGroupScalingConfigArrayOutput) Index

func (GetNodeGroupScalingConfigArrayOutput) ToGetNodeGroupScalingConfigArrayOutput

func (o GetNodeGroupScalingConfigArrayOutput) ToGetNodeGroupScalingConfigArrayOutput() GetNodeGroupScalingConfigArrayOutput

func (GetNodeGroupScalingConfigArrayOutput) ToGetNodeGroupScalingConfigArrayOutputWithContext

func (o GetNodeGroupScalingConfigArrayOutput) ToGetNodeGroupScalingConfigArrayOutputWithContext(ctx context.Context) GetNodeGroupScalingConfigArrayOutput

type GetNodeGroupScalingConfigInput

type GetNodeGroupScalingConfigInput interface {
	pulumi.Input

	ToGetNodeGroupScalingConfigOutput() GetNodeGroupScalingConfigOutput
	ToGetNodeGroupScalingConfigOutputWithContext(context.Context) GetNodeGroupScalingConfigOutput
}

GetNodeGroupScalingConfigInput is an input type that accepts GetNodeGroupScalingConfigArgs and GetNodeGroupScalingConfigOutput values. You can construct a concrete instance of `GetNodeGroupScalingConfigInput` via:

GetNodeGroupScalingConfigArgs{...}

type GetNodeGroupScalingConfigOutput

type GetNodeGroupScalingConfigOutput struct{ *pulumi.OutputState }

func (GetNodeGroupScalingConfigOutput) DesiredSize

Desired number of worker nodes.

func (GetNodeGroupScalingConfigOutput) ElementType

func (GetNodeGroupScalingConfigOutput) MaxSize

Maximum number of worker nodes.

func (GetNodeGroupScalingConfigOutput) MinSize

Minimum number of worker nodes.

func (GetNodeGroupScalingConfigOutput) ToGetNodeGroupScalingConfigOutput

func (o GetNodeGroupScalingConfigOutput) ToGetNodeGroupScalingConfigOutput() GetNodeGroupScalingConfigOutput

func (GetNodeGroupScalingConfigOutput) ToGetNodeGroupScalingConfigOutputWithContext

func (o GetNodeGroupScalingConfigOutput) ToGetNodeGroupScalingConfigOutputWithContext(ctx context.Context) GetNodeGroupScalingConfigOutput

type GetNodeGroupTaint

type GetNodeGroupTaint struct {
	// The effect of the taint.
	Effect string `pulumi:"effect"`
	// The key of the taint.
	Key string `pulumi:"key"`
	// The value of the taint.
	Value string `pulumi:"value"`
}

type GetNodeGroupTaintArgs

type GetNodeGroupTaintArgs struct {
	// The effect of the taint.
	Effect pulumi.StringInput `pulumi:"effect"`
	// The key of the taint.
	Key pulumi.StringInput `pulumi:"key"`
	// The value of the taint.
	Value pulumi.StringInput `pulumi:"value"`
}

func (GetNodeGroupTaintArgs) ElementType

func (GetNodeGroupTaintArgs) ElementType() reflect.Type

func (GetNodeGroupTaintArgs) ToGetNodeGroupTaintOutput

func (i GetNodeGroupTaintArgs) ToGetNodeGroupTaintOutput() GetNodeGroupTaintOutput

func (GetNodeGroupTaintArgs) ToGetNodeGroupTaintOutputWithContext

func (i GetNodeGroupTaintArgs) ToGetNodeGroupTaintOutputWithContext(ctx context.Context) GetNodeGroupTaintOutput

type GetNodeGroupTaintArray

type GetNodeGroupTaintArray []GetNodeGroupTaintInput

func (GetNodeGroupTaintArray) ElementType

func (GetNodeGroupTaintArray) ElementType() reflect.Type

func (GetNodeGroupTaintArray) ToGetNodeGroupTaintArrayOutput

func (i GetNodeGroupTaintArray) ToGetNodeGroupTaintArrayOutput() GetNodeGroupTaintArrayOutput

func (GetNodeGroupTaintArray) ToGetNodeGroupTaintArrayOutputWithContext

func (i GetNodeGroupTaintArray) ToGetNodeGroupTaintArrayOutputWithContext(ctx context.Context) GetNodeGroupTaintArrayOutput

type GetNodeGroupTaintArrayInput

type GetNodeGroupTaintArrayInput interface {
	pulumi.Input

	ToGetNodeGroupTaintArrayOutput() GetNodeGroupTaintArrayOutput
	ToGetNodeGroupTaintArrayOutputWithContext(context.Context) GetNodeGroupTaintArrayOutput
}

GetNodeGroupTaintArrayInput is an input type that accepts GetNodeGroupTaintArray and GetNodeGroupTaintArrayOutput values. You can construct a concrete instance of `GetNodeGroupTaintArrayInput` via:

GetNodeGroupTaintArray{ GetNodeGroupTaintArgs{...} }

type GetNodeGroupTaintArrayOutput

type GetNodeGroupTaintArrayOutput struct{ *pulumi.OutputState }

func (GetNodeGroupTaintArrayOutput) ElementType

func (GetNodeGroupTaintArrayOutput) Index

func (GetNodeGroupTaintArrayOutput) ToGetNodeGroupTaintArrayOutput

func (o GetNodeGroupTaintArrayOutput) ToGetNodeGroupTaintArrayOutput() GetNodeGroupTaintArrayOutput

func (GetNodeGroupTaintArrayOutput) ToGetNodeGroupTaintArrayOutputWithContext

func (o GetNodeGroupTaintArrayOutput) ToGetNodeGroupTaintArrayOutputWithContext(ctx context.Context) GetNodeGroupTaintArrayOutput

type GetNodeGroupTaintInput

type GetNodeGroupTaintInput interface {
	pulumi.Input

	ToGetNodeGroupTaintOutput() GetNodeGroupTaintOutput
	ToGetNodeGroupTaintOutputWithContext(context.Context) GetNodeGroupTaintOutput
}

GetNodeGroupTaintInput is an input type that accepts GetNodeGroupTaintArgs and GetNodeGroupTaintOutput values. You can construct a concrete instance of `GetNodeGroupTaintInput` via:

GetNodeGroupTaintArgs{...}

type GetNodeGroupTaintOutput

type GetNodeGroupTaintOutput struct{ *pulumi.OutputState }

func (GetNodeGroupTaintOutput) Effect

The effect of the taint.

func (GetNodeGroupTaintOutput) ElementType

func (GetNodeGroupTaintOutput) ElementType() reflect.Type

func (GetNodeGroupTaintOutput) Key

The key of the taint.

func (GetNodeGroupTaintOutput) ToGetNodeGroupTaintOutput

func (o GetNodeGroupTaintOutput) ToGetNodeGroupTaintOutput() GetNodeGroupTaintOutput

func (GetNodeGroupTaintOutput) ToGetNodeGroupTaintOutputWithContext

func (o GetNodeGroupTaintOutput) ToGetNodeGroupTaintOutputWithContext(ctx context.Context) GetNodeGroupTaintOutput

func (GetNodeGroupTaintOutput) Value

The value of the taint.

type GetNodeGroupsArgs

type GetNodeGroupsArgs struct {
	// Name of the cluster.
	ClusterName string `pulumi:"clusterName"`
}

A collection of arguments for invoking getNodeGroups.

type GetNodeGroupsOutputArgs

type GetNodeGroupsOutputArgs struct {
	// Name of the cluster.
	ClusterName pulumi.StringInput `pulumi:"clusterName"`
}

A collection of arguments for invoking getNodeGroups.

func (GetNodeGroupsOutputArgs) ElementType

func (GetNodeGroupsOutputArgs) ElementType() reflect.Type

type GetNodeGroupsResult

type GetNodeGroupsResult struct {
	ClusterName string `pulumi:"clusterName"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Set of all node group names in an EKS Cluster.
	Names []string `pulumi:"names"`
}

A collection of values returned by getNodeGroups.

func GetNodeGroups

func GetNodeGroups(ctx *pulumi.Context, args *GetNodeGroupsArgs, opts ...pulumi.InvokeOption) (*GetNodeGroupsResult, error)

Retrieve the EKS Node Groups associated with a named EKS cluster. This will allow you to pass a list of Node Group names to other resources.

type GetNodeGroupsResultOutput

type GetNodeGroupsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getNodeGroups.

func (GetNodeGroupsResultOutput) ClusterName

func (GetNodeGroupsResultOutput) ElementType

func (GetNodeGroupsResultOutput) ElementType() reflect.Type

func (GetNodeGroupsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetNodeGroupsResultOutput) Names

Set of all node group names in an EKS Cluster.

func (GetNodeGroupsResultOutput) ToGetNodeGroupsResultOutput

func (o GetNodeGroupsResultOutput) ToGetNodeGroupsResultOutput() GetNodeGroupsResultOutput

func (GetNodeGroupsResultOutput) ToGetNodeGroupsResultOutputWithContext

func (o GetNodeGroupsResultOutput) ToGetNodeGroupsResultOutputWithContext(ctx context.Context) GetNodeGroupsResultOutput

type IdentityProviderConfig

type IdentityProviderConfig struct {
	pulumi.CustomResourceState

	// Amazon Resource Name (ARN) of the EKS Identity Provider Configuration.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Name of the EKS Cluster.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// Nested attribute containing [OpenID Connect](https://openid.net/connect/) identity provider information for the cluster. Detailed below.
	Oidc IdentityProviderConfigOidcOutput `pulumi:"oidc"`
	// Status of the EKS Identity Provider Configuration.
	Status pulumi.StringOutput `pulumi:"status"`
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Manages an EKS Identity Provider Configuration.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := eks.NewIdentityProviderConfig(ctx, "example", &eks.IdentityProviderConfigArgs{
			ClusterName: pulumi.Any(exampleAwsEksCluster.Name),
			Oidc: &eks.IdentityProviderConfigOidcArgs{
				ClientId:                   pulumi.String("your client_id"),
				IdentityProviderConfigName: pulumi.String("example"),
				IssuerUrl:                  pulumi.String("your issuer_url"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import EKS Identity Provider Configurations using the `cluster_name` and `identity_provider_config_name` separated by a colon (`:`). For example:

```sh $ pulumi import aws:eks/identityProviderConfig:IdentityProviderConfig my_identity_provider_config my_cluster:my_identity_provider_config ```

func GetIdentityProviderConfig

func GetIdentityProviderConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *IdentityProviderConfigState, opts ...pulumi.ResourceOption) (*IdentityProviderConfig, error)

GetIdentityProviderConfig gets an existing IdentityProviderConfig resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewIdentityProviderConfig

func NewIdentityProviderConfig(ctx *pulumi.Context,
	name string, args *IdentityProviderConfigArgs, opts ...pulumi.ResourceOption) (*IdentityProviderConfig, error)

NewIdentityProviderConfig registers a new resource with the given unique name, arguments, and options.

func (*IdentityProviderConfig) ElementType

func (*IdentityProviderConfig) ElementType() reflect.Type

func (*IdentityProviderConfig) ToIdentityProviderConfigOutput

func (i *IdentityProviderConfig) ToIdentityProviderConfigOutput() IdentityProviderConfigOutput

func (*IdentityProviderConfig) ToIdentityProviderConfigOutputWithContext

func (i *IdentityProviderConfig) ToIdentityProviderConfigOutputWithContext(ctx context.Context) IdentityProviderConfigOutput

type IdentityProviderConfigArgs

type IdentityProviderConfigArgs struct {
	// Name of the EKS Cluster.
	ClusterName pulumi.StringInput
	// Nested attribute containing [OpenID Connect](https://openid.net/connect/) identity provider information for the cluster. Detailed below.
	Oidc IdentityProviderConfigOidcInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a IdentityProviderConfig resource.

func (IdentityProviderConfigArgs) ElementType

func (IdentityProviderConfigArgs) ElementType() reflect.Type

type IdentityProviderConfigArray

type IdentityProviderConfigArray []IdentityProviderConfigInput

func (IdentityProviderConfigArray) ElementType

func (IdentityProviderConfigArray) ToIdentityProviderConfigArrayOutput

func (i IdentityProviderConfigArray) ToIdentityProviderConfigArrayOutput() IdentityProviderConfigArrayOutput

func (IdentityProviderConfigArray) ToIdentityProviderConfigArrayOutputWithContext

func (i IdentityProviderConfigArray) ToIdentityProviderConfigArrayOutputWithContext(ctx context.Context) IdentityProviderConfigArrayOutput

type IdentityProviderConfigArrayInput

type IdentityProviderConfigArrayInput interface {
	pulumi.Input

	ToIdentityProviderConfigArrayOutput() IdentityProviderConfigArrayOutput
	ToIdentityProviderConfigArrayOutputWithContext(context.Context) IdentityProviderConfigArrayOutput
}

IdentityProviderConfigArrayInput is an input type that accepts IdentityProviderConfigArray and IdentityProviderConfigArrayOutput values. You can construct a concrete instance of `IdentityProviderConfigArrayInput` via:

IdentityProviderConfigArray{ IdentityProviderConfigArgs{...} }

type IdentityProviderConfigArrayOutput

type IdentityProviderConfigArrayOutput struct{ *pulumi.OutputState }

func (IdentityProviderConfigArrayOutput) ElementType

func (IdentityProviderConfigArrayOutput) Index

func (IdentityProviderConfigArrayOutput) ToIdentityProviderConfigArrayOutput

func (o IdentityProviderConfigArrayOutput) ToIdentityProviderConfigArrayOutput() IdentityProviderConfigArrayOutput

func (IdentityProviderConfigArrayOutput) ToIdentityProviderConfigArrayOutputWithContext

func (o IdentityProviderConfigArrayOutput) ToIdentityProviderConfigArrayOutputWithContext(ctx context.Context) IdentityProviderConfigArrayOutput

type IdentityProviderConfigInput

type IdentityProviderConfigInput interface {
	pulumi.Input

	ToIdentityProviderConfigOutput() IdentityProviderConfigOutput
	ToIdentityProviderConfigOutputWithContext(ctx context.Context) IdentityProviderConfigOutput
}

type IdentityProviderConfigMap

type IdentityProviderConfigMap map[string]IdentityProviderConfigInput

func (IdentityProviderConfigMap) ElementType

func (IdentityProviderConfigMap) ElementType() reflect.Type

func (IdentityProviderConfigMap) ToIdentityProviderConfigMapOutput

func (i IdentityProviderConfigMap) ToIdentityProviderConfigMapOutput() IdentityProviderConfigMapOutput

func (IdentityProviderConfigMap) ToIdentityProviderConfigMapOutputWithContext

func (i IdentityProviderConfigMap) ToIdentityProviderConfigMapOutputWithContext(ctx context.Context) IdentityProviderConfigMapOutput

type IdentityProviderConfigMapInput

type IdentityProviderConfigMapInput interface {
	pulumi.Input

	ToIdentityProviderConfigMapOutput() IdentityProviderConfigMapOutput
	ToIdentityProviderConfigMapOutputWithContext(context.Context) IdentityProviderConfigMapOutput
}

IdentityProviderConfigMapInput is an input type that accepts IdentityProviderConfigMap and IdentityProviderConfigMapOutput values. You can construct a concrete instance of `IdentityProviderConfigMapInput` via:

IdentityProviderConfigMap{ "key": IdentityProviderConfigArgs{...} }

type IdentityProviderConfigMapOutput

type IdentityProviderConfigMapOutput struct{ *pulumi.OutputState }

func (IdentityProviderConfigMapOutput) ElementType

func (IdentityProviderConfigMapOutput) MapIndex

func (IdentityProviderConfigMapOutput) ToIdentityProviderConfigMapOutput

func (o IdentityProviderConfigMapOutput) ToIdentityProviderConfigMapOutput() IdentityProviderConfigMapOutput

func (IdentityProviderConfigMapOutput) ToIdentityProviderConfigMapOutputWithContext

func (o IdentityProviderConfigMapOutput) ToIdentityProviderConfigMapOutputWithContext(ctx context.Context) IdentityProviderConfigMapOutput

type IdentityProviderConfigOidc

type IdentityProviderConfigOidc struct {
	// Client ID for the OpenID Connect identity provider.
	ClientId string `pulumi:"clientId"`
	// The JWT claim that the provider will use to return groups.
	GroupsClaim *string `pulumi:"groupsClaim"`
	// A prefix that is prepended to group claims e.g., `oidc:`.
	GroupsPrefix *string `pulumi:"groupsPrefix"`
	// The name of the identity provider config.
	IdentityProviderConfigName string `pulumi:"identityProviderConfigName"`
	// Issuer URL for the OpenID Connect identity provider.
	IssuerUrl string `pulumi:"issuerUrl"`
	// The key value pairs that describe required claims in the identity token.
	RequiredClaims map[string]string `pulumi:"requiredClaims"`
	// The JWT claim that the provider will use as the username.
	UsernameClaim *string `pulumi:"usernameClaim"`
	// A prefix that is prepended to username claims.
	UsernamePrefix *string `pulumi:"usernamePrefix"`
}

type IdentityProviderConfigOidcArgs

type IdentityProviderConfigOidcArgs struct {
	// Client ID for the OpenID Connect identity provider.
	ClientId pulumi.StringInput `pulumi:"clientId"`
	// The JWT claim that the provider will use to return groups.
	GroupsClaim pulumi.StringPtrInput `pulumi:"groupsClaim"`
	// A prefix that is prepended to group claims e.g., `oidc:`.
	GroupsPrefix pulumi.StringPtrInput `pulumi:"groupsPrefix"`
	// The name of the identity provider config.
	IdentityProviderConfigName pulumi.StringInput `pulumi:"identityProviderConfigName"`
	// Issuer URL for the OpenID Connect identity provider.
	IssuerUrl pulumi.StringInput `pulumi:"issuerUrl"`
	// The key value pairs that describe required claims in the identity token.
	RequiredClaims pulumi.StringMapInput `pulumi:"requiredClaims"`
	// The JWT claim that the provider will use as the username.
	UsernameClaim pulumi.StringPtrInput `pulumi:"usernameClaim"`
	// A prefix that is prepended to username claims.
	UsernamePrefix pulumi.StringPtrInput `pulumi:"usernamePrefix"`
}

func (IdentityProviderConfigOidcArgs) ElementType

func (IdentityProviderConfigOidcArgs) ToIdentityProviderConfigOidcOutput

func (i IdentityProviderConfigOidcArgs) ToIdentityProviderConfigOidcOutput() IdentityProviderConfigOidcOutput

func (IdentityProviderConfigOidcArgs) ToIdentityProviderConfigOidcOutputWithContext

func (i IdentityProviderConfigOidcArgs) ToIdentityProviderConfigOidcOutputWithContext(ctx context.Context) IdentityProviderConfigOidcOutput

func (IdentityProviderConfigOidcArgs) ToIdentityProviderConfigOidcPtrOutput

func (i IdentityProviderConfigOidcArgs) ToIdentityProviderConfigOidcPtrOutput() IdentityProviderConfigOidcPtrOutput

func (IdentityProviderConfigOidcArgs) ToIdentityProviderConfigOidcPtrOutputWithContext

func (i IdentityProviderConfigOidcArgs) ToIdentityProviderConfigOidcPtrOutputWithContext(ctx context.Context) IdentityProviderConfigOidcPtrOutput

type IdentityProviderConfigOidcInput

type IdentityProviderConfigOidcInput interface {
	pulumi.Input

	ToIdentityProviderConfigOidcOutput() IdentityProviderConfigOidcOutput
	ToIdentityProviderConfigOidcOutputWithContext(context.Context) IdentityProviderConfigOidcOutput
}

IdentityProviderConfigOidcInput is an input type that accepts IdentityProviderConfigOidcArgs and IdentityProviderConfigOidcOutput values. You can construct a concrete instance of `IdentityProviderConfigOidcInput` via:

IdentityProviderConfigOidcArgs{...}

type IdentityProviderConfigOidcOutput

type IdentityProviderConfigOidcOutput struct{ *pulumi.OutputState }

func (IdentityProviderConfigOidcOutput) ClientId

Client ID for the OpenID Connect identity provider.

func (IdentityProviderConfigOidcOutput) ElementType

func (IdentityProviderConfigOidcOutput) GroupsClaim

The JWT claim that the provider will use to return groups.

func (IdentityProviderConfigOidcOutput) GroupsPrefix

A prefix that is prepended to group claims e.g., `oidc:`.

func (IdentityProviderConfigOidcOutput) IdentityProviderConfigName

func (o IdentityProviderConfigOidcOutput) IdentityProviderConfigName() pulumi.StringOutput

The name of the identity provider config.

func (IdentityProviderConfigOidcOutput) IssuerUrl

Issuer URL for the OpenID Connect identity provider.

func (IdentityProviderConfigOidcOutput) RequiredClaims

The key value pairs that describe required claims in the identity token.

func (IdentityProviderConfigOidcOutput) ToIdentityProviderConfigOidcOutput

func (o IdentityProviderConfigOidcOutput) ToIdentityProviderConfigOidcOutput() IdentityProviderConfigOidcOutput

func (IdentityProviderConfigOidcOutput) ToIdentityProviderConfigOidcOutputWithContext

func (o IdentityProviderConfigOidcOutput) ToIdentityProviderConfigOidcOutputWithContext(ctx context.Context) IdentityProviderConfigOidcOutput

func (IdentityProviderConfigOidcOutput) ToIdentityProviderConfigOidcPtrOutput

func (o IdentityProviderConfigOidcOutput) ToIdentityProviderConfigOidcPtrOutput() IdentityProviderConfigOidcPtrOutput

func (IdentityProviderConfigOidcOutput) ToIdentityProviderConfigOidcPtrOutputWithContext

func (o IdentityProviderConfigOidcOutput) ToIdentityProviderConfigOidcPtrOutputWithContext(ctx context.Context) IdentityProviderConfigOidcPtrOutput

func (IdentityProviderConfigOidcOutput) UsernameClaim

The JWT claim that the provider will use as the username.

func (IdentityProviderConfigOidcOutput) UsernamePrefix

A prefix that is prepended to username claims.

type IdentityProviderConfigOidcPtrInput

type IdentityProviderConfigOidcPtrInput interface {
	pulumi.Input

	ToIdentityProviderConfigOidcPtrOutput() IdentityProviderConfigOidcPtrOutput
	ToIdentityProviderConfigOidcPtrOutputWithContext(context.Context) IdentityProviderConfigOidcPtrOutput
}

IdentityProviderConfigOidcPtrInput is an input type that accepts IdentityProviderConfigOidcArgs, IdentityProviderConfigOidcPtr and IdentityProviderConfigOidcPtrOutput values. You can construct a concrete instance of `IdentityProviderConfigOidcPtrInput` via:

        IdentityProviderConfigOidcArgs{...}

or:

        nil

type IdentityProviderConfigOidcPtrOutput

type IdentityProviderConfigOidcPtrOutput struct{ *pulumi.OutputState }

func (IdentityProviderConfigOidcPtrOutput) ClientId

Client ID for the OpenID Connect identity provider.

func (IdentityProviderConfigOidcPtrOutput) Elem

func (IdentityProviderConfigOidcPtrOutput) ElementType

func (IdentityProviderConfigOidcPtrOutput) GroupsClaim

The JWT claim that the provider will use to return groups.

func (IdentityProviderConfigOidcPtrOutput) GroupsPrefix

A prefix that is prepended to group claims e.g., `oidc:`.

func (IdentityProviderConfigOidcPtrOutput) IdentityProviderConfigName

func (o IdentityProviderConfigOidcPtrOutput) IdentityProviderConfigName() pulumi.StringPtrOutput

The name of the identity provider config.

func (IdentityProviderConfigOidcPtrOutput) IssuerUrl

Issuer URL for the OpenID Connect identity provider.

func (IdentityProviderConfigOidcPtrOutput) RequiredClaims

The key value pairs that describe required claims in the identity token.

func (IdentityProviderConfigOidcPtrOutput) ToIdentityProviderConfigOidcPtrOutput

func (o IdentityProviderConfigOidcPtrOutput) ToIdentityProviderConfigOidcPtrOutput() IdentityProviderConfigOidcPtrOutput

func (IdentityProviderConfigOidcPtrOutput) ToIdentityProviderConfigOidcPtrOutputWithContext

func (o IdentityProviderConfigOidcPtrOutput) ToIdentityProviderConfigOidcPtrOutputWithContext(ctx context.Context) IdentityProviderConfigOidcPtrOutput

func (IdentityProviderConfigOidcPtrOutput) UsernameClaim

The JWT claim that the provider will use as the username.

func (IdentityProviderConfigOidcPtrOutput) UsernamePrefix

A prefix that is prepended to username claims.

type IdentityProviderConfigOutput

type IdentityProviderConfigOutput struct{ *pulumi.OutputState }

func (IdentityProviderConfigOutput) Arn

Amazon Resource Name (ARN) of the EKS Identity Provider Configuration.

func (IdentityProviderConfigOutput) ClusterName

Name of the EKS Cluster.

func (IdentityProviderConfigOutput) ElementType

func (IdentityProviderConfigOutput) Oidc

Nested attribute containing [OpenID Connect](https://openid.net/connect/) identity provider information for the cluster. Detailed below.

func (IdentityProviderConfigOutput) Status

Status of the EKS Identity Provider Configuration.

func (IdentityProviderConfigOutput) Tags

Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (IdentityProviderConfigOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (IdentityProviderConfigOutput) ToIdentityProviderConfigOutput

func (o IdentityProviderConfigOutput) ToIdentityProviderConfigOutput() IdentityProviderConfigOutput

func (IdentityProviderConfigOutput) ToIdentityProviderConfigOutputWithContext

func (o IdentityProviderConfigOutput) ToIdentityProviderConfigOutputWithContext(ctx context.Context) IdentityProviderConfigOutput

type IdentityProviderConfigState

type IdentityProviderConfigState struct {
	// Amazon Resource Name (ARN) of the EKS Identity Provider Configuration.
	Arn pulumi.StringPtrInput
	// Name of the EKS Cluster.
	ClusterName pulumi.StringPtrInput
	// Nested attribute containing [OpenID Connect](https://openid.net/connect/) identity provider information for the cluster. Detailed below.
	Oidc IdentityProviderConfigOidcPtrInput
	// Status of the EKS Identity Provider Configuration.
	Status pulumi.StringPtrInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (IdentityProviderConfigState) ElementType

type LookupAccessEntryArgs added in v6.18.2

type LookupAccessEntryArgs struct {
	// Name of the EKS Cluster.
	ClusterName string `pulumi:"clusterName"`
	// The IAM Principal ARN which requires Authentication access to the EKS cluster.
	PrincipalArn string            `pulumi:"principalArn"`
	Tags         map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getAccessEntry.

type LookupAccessEntryOutputArgs added in v6.18.2

type LookupAccessEntryOutputArgs struct {
	// Name of the EKS Cluster.
	ClusterName pulumi.StringInput `pulumi:"clusterName"`
	// The IAM Principal ARN which requires Authentication access to the EKS cluster.
	PrincipalArn pulumi.StringInput    `pulumi:"principalArn"`
	Tags         pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getAccessEntry.

func (LookupAccessEntryOutputArgs) ElementType added in v6.18.2

type LookupAccessEntryResult added in v6.18.2

type LookupAccessEntryResult struct {
	// Amazon Resource Name (ARN) of the Access Entry.
	AccessEntryArn string `pulumi:"accessEntryArn"`
	ClusterName    string `pulumi:"clusterName"`
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was created.
	CreatedAt string `pulumi:"createdAt"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// List of string which can optionally specify the Kubernetes groups the user would belong to when creating an access entry.
	KubernetesGroups []string `pulumi:"kubernetesGroups"`
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was updated.
	ModifiedAt   string            `pulumi:"modifiedAt"`
	PrincipalArn string            `pulumi:"principalArn"`
	Tags         map[string]string `pulumi:"tags"`
	// (Optional) Key-value map of resource tags, including those inherited from the provider `defaultTags` configuration block.
	TagsAll map[string]string `pulumi:"tagsAll"`
	// Defaults to STANDARD which provides the standard workflow. EC2_LINUX, EC2_WINDOWS, FARGATE_LINUX types disallow users to input a username or groups, and prevent associations.
	Type string `pulumi:"type"`
	// Defaults to principal ARN if user is principal else defaults to assume-role/session-name is role is used.
	UserName string `pulumi:"userName"`
}

A collection of values returned by getAccessEntry.

func LookupAccessEntry added in v6.18.2

func LookupAccessEntry(ctx *pulumi.Context, args *LookupAccessEntryArgs, opts ...pulumi.InvokeOption) (*LookupAccessEntryResult, error)

Access Entry Configurations for an EKS Cluster.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := eks.LookupAccessEntry(ctx, &eks.LookupAccessEntryArgs{
			ClusterName:  exampleAwsEksCluster.Name,
			PrincipalArn: exampleAwsIamRole.Arn,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("eksAccessEntryOutputs", exampleAwsEksAccessEntry)
		return nil
	})
}

```

type LookupAccessEntryResultOutput added in v6.18.2

type LookupAccessEntryResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAccessEntry.

func LookupAccessEntryOutput added in v6.18.2

func (LookupAccessEntryResultOutput) AccessEntryArn added in v6.18.2

Amazon Resource Name (ARN) of the Access Entry.

func (LookupAccessEntryResultOutput) ClusterName added in v6.18.2

func (LookupAccessEntryResultOutput) CreatedAt added in v6.18.2

Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was created.

func (LookupAccessEntryResultOutput) ElementType added in v6.18.2

func (LookupAccessEntryResultOutput) Id added in v6.18.2

The provider-assigned unique ID for this managed resource.

func (LookupAccessEntryResultOutput) KubernetesGroups added in v6.18.2

List of string which can optionally specify the Kubernetes groups the user would belong to when creating an access entry.

func (LookupAccessEntryResultOutput) ModifiedAt added in v6.18.2

Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was updated.

func (LookupAccessEntryResultOutput) PrincipalArn added in v6.18.2

func (LookupAccessEntryResultOutput) Tags added in v6.18.2

func (LookupAccessEntryResultOutput) TagsAll added in v6.18.2

(Optional) Key-value map of resource tags, including those inherited from the provider `defaultTags` configuration block.

func (LookupAccessEntryResultOutput) ToLookupAccessEntryResultOutput added in v6.18.2

func (o LookupAccessEntryResultOutput) ToLookupAccessEntryResultOutput() LookupAccessEntryResultOutput

func (LookupAccessEntryResultOutput) ToLookupAccessEntryResultOutputWithContext added in v6.18.2

func (o LookupAccessEntryResultOutput) ToLookupAccessEntryResultOutputWithContext(ctx context.Context) LookupAccessEntryResultOutput

func (LookupAccessEntryResultOutput) Type added in v6.18.2

Defaults to STANDARD which provides the standard workflow. EC2_LINUX, EC2_WINDOWS, FARGATE_LINUX types disallow users to input a username or groups, and prevent associations.

func (LookupAccessEntryResultOutput) UserName added in v6.18.2

Defaults to principal ARN if user is principal else defaults to assume-role/session-name is role is used.

type LookupAddonArgs

type LookupAddonArgs struct {
	// Name of the EKS add-on. The name must match one of
	// the names returned by [list-addon](https://docs.aws.amazon.com/cli/latest/reference/eks/list-addons.html).
	AddonName string `pulumi:"addonName"`
	// Name of the EKS Cluster.
	ClusterName string            `pulumi:"clusterName"`
	Tags        map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getAddon.

type LookupAddonOutputArgs

type LookupAddonOutputArgs struct {
	// Name of the EKS add-on. The name must match one of
	// the names returned by [list-addon](https://docs.aws.amazon.com/cli/latest/reference/eks/list-addons.html).
	AddonName pulumi.StringInput `pulumi:"addonName"`
	// Name of the EKS Cluster.
	ClusterName pulumi.StringInput    `pulumi:"clusterName"`
	Tags        pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getAddon.

func (LookupAddonOutputArgs) ElementType

func (LookupAddonOutputArgs) ElementType() reflect.Type

type LookupAddonResult

type LookupAddonResult struct {
	AddonName string `pulumi:"addonName"`
	// Version of EKS add-on.
	AddonVersion string `pulumi:"addonVersion"`
	// ARN of the EKS add-on.
	Arn         string `pulumi:"arn"`
	ClusterName string `pulumi:"clusterName"`
	// Configuration values for the addon with a single JSON string.
	ConfigurationValues string `pulumi:"configurationValues"`
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was created.
	CreatedAt string `pulumi:"createdAt"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was updated.
	ModifiedAt string `pulumi:"modifiedAt"`
	// ARN of IAM role used for EKS add-on. If value is empty -
	// then add-on uses the IAM role assigned to the EKS Cluster node.
	ServiceAccountRoleArn string            `pulumi:"serviceAccountRoleArn"`
	Tags                  map[string]string `pulumi:"tags"`
}

A collection of values returned by getAddon.

func LookupAddon

func LookupAddon(ctx *pulumi.Context, args *LookupAddonArgs, opts ...pulumi.InvokeOption) (*LookupAddonResult, error)

Retrieve information about an EKS add-on.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := eks.LookupAddon(ctx, &eks.LookupAddonArgs{
			AddonName:   "vpc-cni",
			ClusterName: exampleAwsEksCluster.Name,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("eksAddonOutputs", exampleAwsEksAddon)
		return nil
	})
}

```

type LookupAddonResultOutput

type LookupAddonResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAddon.

func (LookupAddonResultOutput) AddonName

func (LookupAddonResultOutput) AddonVersion

func (o LookupAddonResultOutput) AddonVersion() pulumi.StringOutput

Version of EKS add-on.

func (LookupAddonResultOutput) Arn

ARN of the EKS add-on.

func (LookupAddonResultOutput) ClusterName

func (LookupAddonResultOutput) ConfigurationValues

func (o LookupAddonResultOutput) ConfigurationValues() pulumi.StringOutput

Configuration values for the addon with a single JSON string.

func (LookupAddonResultOutput) CreatedAt

Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was created.

func (LookupAddonResultOutput) ElementType

func (LookupAddonResultOutput) ElementType() reflect.Type

func (LookupAddonResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupAddonResultOutput) ModifiedAt

Date and time in [RFC3339 format](https://tools.ietf.org/html/rfc3339#section-5.8) that the EKS add-on was updated.

func (LookupAddonResultOutput) ServiceAccountRoleArn

func (o LookupAddonResultOutput) ServiceAccountRoleArn() pulumi.StringOutput

ARN of IAM role used for EKS add-on. If value is empty - then add-on uses the IAM role assigned to the EKS Cluster node.

func (LookupAddonResultOutput) Tags

func (LookupAddonResultOutput) ToLookupAddonResultOutput

func (o LookupAddonResultOutput) ToLookupAddonResultOutput() LookupAddonResultOutput

func (LookupAddonResultOutput) ToLookupAddonResultOutputWithContext

func (o LookupAddonResultOutput) ToLookupAddonResultOutputWithContext(ctx context.Context) LookupAddonResultOutput

type LookupClusterArgs

type LookupClusterArgs struct {
	// Name of the cluster.
	Name string `pulumi:"name"`
	// Key-value map of resource tags.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getCluster.

type LookupClusterOutputArgs

type LookupClusterOutputArgs struct {
	// Name of the cluster.
	Name pulumi.StringInput `pulumi:"name"`
	// Key-value map of resource tags.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getCluster.

func (LookupClusterOutputArgs) ElementType

func (LookupClusterOutputArgs) ElementType() reflect.Type

type LookupClusterResult

type LookupClusterResult struct {
	// Configuration block for access config.
	AccessConfigs []GetClusterAccessConfig `pulumi:"accessConfigs"`
	// ARN of the cluster.
	Arn string `pulumi:"arn"`
	// Nested attribute containing `certificate-authority-data` for your cluster.
	CertificateAuthorities []GetClusterCertificateAuthority `pulumi:"certificateAuthorities"`
	// The ID of your local Amazon EKS cluster on the AWS Outpost. This attribute isn't available for an AWS EKS cluster on AWS cloud.
	ClusterId string `pulumi:"clusterId"`
	// Unix epoch time stamp in seconds for when the cluster was created.
	CreatedAt string `pulumi:"createdAt"`
	// The enabled control plane logs.
	EnabledClusterLogTypes []string `pulumi:"enabledClusterLogTypes"`
	// Endpoint for your Kubernetes API server.
	Endpoint string `pulumi:"endpoint"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Nested attribute containing identity provider information for your cluster. Only available on Kubernetes version 1.13 and 1.14 clusters created or upgraded on or after September 3, 2019. For an example using this information to enable IAM Roles for Service Accounts, see the `eks.Cluster` resource documentation.
	Identities []GetClusterIdentity `pulumi:"identities"`
	// Nested list containing Kubernetes Network Configuration.
	KubernetesNetworkConfigs []GetClusterKubernetesNetworkConfig `pulumi:"kubernetesNetworkConfigs"`
	Name                     string                              `pulumi:"name"`
	// Contains Outpost Configuration.
	OutpostConfigs []GetClusterOutpostConfig `pulumi:"outpostConfigs"`
	// Platform version for the cluster.
	PlatformVersion string `pulumi:"platformVersion"`
	// ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.
	RoleArn string `pulumi:"roleArn"`
	// Status of the EKS cluster. One of `CREATING`, `ACTIVE`, `DELETING`, `FAILED`.
	Status string `pulumi:"status"`
	// Key-value map of resource tags.
	Tags map[string]string `pulumi:"tags"`
	// Kubernetes server version for the cluster.
	Version string `pulumi:"version"`
	// Nested list containing VPC configuration for the cluster.
	VpcConfig GetClusterVpcConfig `pulumi:"vpcConfig"`
}

A collection of values returned by getCluster.

func LookupCluster

func LookupCluster(ctx *pulumi.Context, args *LookupClusterArgs, opts ...pulumi.InvokeOption) (*LookupClusterResult, error)

Retrieve information about an EKS Cluster.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := eks.LookupCluster(ctx, &eks.LookupClusterArgs{
			Name: "example",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("endpoint", example.Endpoint)
		ctx.Export("kubeconfig-certificate-authority-data", example.CertificateAuthorities[0].Data)
		ctx.Export("identity-oidc-issuer", example.Identities[0].Oidcs[0].Issuer)
		return nil
	})
}

```

type LookupClusterResultOutput

type LookupClusterResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getCluster.

func (LookupClusterResultOutput) AccessConfigs added in v6.18.2

Configuration block for access config.

func (LookupClusterResultOutput) Arn

ARN of the cluster.

func (LookupClusterResultOutput) CertificateAuthorities

Nested attribute containing `certificate-authority-data` for your cluster.

func (LookupClusterResultOutput) ClusterId

The ID of your local Amazon EKS cluster on the AWS Outpost. This attribute isn't available for an AWS EKS cluster on AWS cloud.

func (LookupClusterResultOutput) CreatedAt

Unix epoch time stamp in seconds for when the cluster was created.

func (LookupClusterResultOutput) ElementType

func (LookupClusterResultOutput) ElementType() reflect.Type

func (LookupClusterResultOutput) EnabledClusterLogTypes

func (o LookupClusterResultOutput) EnabledClusterLogTypes() pulumi.StringArrayOutput

The enabled control plane logs.

func (LookupClusterResultOutput) Endpoint

Endpoint for your Kubernetes API server.

func (LookupClusterResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupClusterResultOutput) Identities

Nested attribute containing identity provider information for your cluster. Only available on Kubernetes version 1.13 and 1.14 clusters created or upgraded on or after September 3, 2019. For an example using this information to enable IAM Roles for Service Accounts, see the `eks.Cluster` resource documentation.

func (LookupClusterResultOutput) KubernetesNetworkConfigs

Nested list containing Kubernetes Network Configuration.

func (LookupClusterResultOutput) Name

func (LookupClusterResultOutput) OutpostConfigs

Contains Outpost Configuration.

func (LookupClusterResultOutput) PlatformVersion

func (o LookupClusterResultOutput) PlatformVersion() pulumi.StringOutput

Platform version for the cluster.

func (LookupClusterResultOutput) RoleArn

ARN of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.

func (LookupClusterResultOutput) Status

Status of the EKS cluster. One of `CREATING`, `ACTIVE`, `DELETING`, `FAILED`.

func (LookupClusterResultOutput) Tags

Key-value map of resource tags.

func (LookupClusterResultOutput) ToLookupClusterResultOutput

func (o LookupClusterResultOutput) ToLookupClusterResultOutput() LookupClusterResultOutput

func (LookupClusterResultOutput) ToLookupClusterResultOutputWithContext

func (o LookupClusterResultOutput) ToLookupClusterResultOutputWithContext(ctx context.Context) LookupClusterResultOutput

func (LookupClusterResultOutput) Version

Kubernetes server version for the cluster.

func (LookupClusterResultOutput) VpcConfig

Nested list containing VPC configuration for the cluster.

type LookupNodeGroupArgs

type LookupNodeGroupArgs struct {
	// Name of the cluster.
	ClusterName string `pulumi:"clusterName"`
	// Name of the node group.
	NodeGroupName string `pulumi:"nodeGroupName"`
	// Key-value map of resource tags.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getNodeGroup.

type LookupNodeGroupOutputArgs

type LookupNodeGroupOutputArgs struct {
	// Name of the cluster.
	ClusterName pulumi.StringInput `pulumi:"clusterName"`
	// Name of the node group.
	NodeGroupName pulumi.StringInput `pulumi:"nodeGroupName"`
	// Key-value map of resource tags.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getNodeGroup.

func (LookupNodeGroupOutputArgs) ElementType

func (LookupNodeGroupOutputArgs) ElementType() reflect.Type

type LookupNodeGroupResult

type LookupNodeGroupResult struct {
	// Type of Amazon Machine Image (AMI) associated with the EKS Node Group.
	AmiType string `pulumi:"amiType"`
	// ARN of the EKS Node Group.
	Arn string `pulumi:"arn"`
	// Type of capacity associated with the EKS Node Group. Valid values: `ON_DEMAND`, `SPOT`.
	CapacityType string `pulumi:"capacityType"`
	ClusterName  string `pulumi:"clusterName"`
	// Disk size in GiB for worker nodes.
	DiskSize int `pulumi:"diskSize"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Set of instance types associated with the EKS Node Group.
	InstanceTypes []string `pulumi:"instanceTypes"`
	// Key-value map of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed.
	Labels map[string]string `pulumi:"labels"`
	// Nested attribute containing information about the launch template used to create the EKS Node Group.
	LaunchTemplates []GetNodeGroupLaunchTemplate `pulumi:"launchTemplates"`
	NodeGroupName   string                       `pulumi:"nodeGroupName"`
	// ARN of the IAM Role that provides permissions for the EKS Node Group.
	NodeRoleArn string `pulumi:"nodeRoleArn"`
	// AMI version of the EKS Node Group.
	ReleaseVersion string `pulumi:"releaseVersion"`
	// Configuration block with remote access settings.
	RemoteAccesses []GetNodeGroupRemoteAccess `pulumi:"remoteAccesses"`
	// List of objects containing information about underlying resources.
	Resources []GetNodeGroupResource `pulumi:"resources"`
	// Configuration block with scaling settings.
	ScalingConfigs []GetNodeGroupScalingConfig `pulumi:"scalingConfigs"`
	// Status of the EKS Node Group.
	Status string `pulumi:"status"`
	// Identifiers of EC2 Subnets to associate with the EKS Node Group.
	SubnetIds []string `pulumi:"subnetIds"`
	// Key-value map of resource tags.
	Tags map[string]string `pulumi:"tags"`
	// List of objects containing information about taints applied to the nodes in the EKS Node Group.
	Taints []GetNodeGroupTaint `pulumi:"taints"`
	// Kubernetes version.
	Version string `pulumi:"version"`
}

A collection of values returned by getNodeGroup.

func LookupNodeGroup

func LookupNodeGroup(ctx *pulumi.Context, args *LookupNodeGroupArgs, opts ...pulumi.InvokeOption) (*LookupNodeGroupResult, error)

Retrieve information about an EKS Node Group.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := eks.LookupNodeGroup(ctx, &eks.LookupNodeGroupArgs{
			ClusterName:   "example",
			NodeGroupName: "example",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupNodeGroupResultOutput

type LookupNodeGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getNodeGroup.

func (LookupNodeGroupResultOutput) AmiType

Type of Amazon Machine Image (AMI) associated with the EKS Node Group.

func (LookupNodeGroupResultOutput) Arn

ARN of the EKS Node Group.

func (LookupNodeGroupResultOutput) CapacityType

Type of capacity associated with the EKS Node Group. Valid values: `ON_DEMAND`, `SPOT`.

func (LookupNodeGroupResultOutput) ClusterName

func (LookupNodeGroupResultOutput) DiskSize

Disk size in GiB for worker nodes.

func (LookupNodeGroupResultOutput) ElementType

func (LookupNodeGroupResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupNodeGroupResultOutput) InstanceTypes

Set of instance types associated with the EKS Node Group.

func (LookupNodeGroupResultOutput) Labels

Key-value map of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed.

func (LookupNodeGroupResultOutput) LaunchTemplates

Nested attribute containing information about the launch template used to create the EKS Node Group.

func (LookupNodeGroupResultOutput) NodeGroupName

func (LookupNodeGroupResultOutput) NodeRoleArn

ARN of the IAM Role that provides permissions for the EKS Node Group.

func (LookupNodeGroupResultOutput) ReleaseVersion

func (o LookupNodeGroupResultOutput) ReleaseVersion() pulumi.StringOutput

AMI version of the EKS Node Group.

func (LookupNodeGroupResultOutput) RemoteAccesses

Configuration block with remote access settings.

func (LookupNodeGroupResultOutput) Resources

List of objects containing information about underlying resources.

func (LookupNodeGroupResultOutput) ScalingConfigs

Configuration block with scaling settings.

func (LookupNodeGroupResultOutput) Status

Status of the EKS Node Group.

func (LookupNodeGroupResultOutput) SubnetIds

Identifiers of EC2 Subnets to associate with the EKS Node Group.

func (LookupNodeGroupResultOutput) Tags

Key-value map of resource tags.

func (LookupNodeGroupResultOutput) Taints

List of objects containing information about taints applied to the nodes in the EKS Node Group.

func (LookupNodeGroupResultOutput) ToLookupNodeGroupResultOutput

func (o LookupNodeGroupResultOutput) ToLookupNodeGroupResultOutput() LookupNodeGroupResultOutput

func (LookupNodeGroupResultOutput) ToLookupNodeGroupResultOutputWithContext

func (o LookupNodeGroupResultOutput) ToLookupNodeGroupResultOutputWithContext(ctx context.Context) LookupNodeGroupResultOutput

func (LookupNodeGroupResultOutput) Version

Kubernetes version.

type NodeGroup

type NodeGroup struct {
	pulumi.CustomResourceState

	// Type of Amazon Machine Image (AMI) associated with the EKS Node Group. See the [AWS documentation](https://docs.aws.amazon.com/eks/latest/APIReference/API_Nodegroup.html#AmazonEKS-Type-Nodegroup-amiType) for valid values. This provider will only perform drift detection if a configuration value is provided.
	AmiType pulumi.StringOutput `pulumi:"amiType"`
	// Amazon Resource Name (ARN) of the EKS Node Group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Type of capacity associated with the EKS Node Group. Valid values: `ON_DEMAND`, `SPOT`. This provider will only perform drift detection if a configuration value is provided.
	CapacityType pulumi.StringOutput `pulumi:"capacityType"`
	// Name of the EKS Cluster.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// Disk size in GiB for worker nodes. Defaults to `50` for Windows, `20` all other node groups. The provider will only perform drift detection if a configuration value is provided.
	DiskSize pulumi.IntOutput `pulumi:"diskSize"`
	// Force version update if existing pods are unable to be drained due to a pod disruption budget issue.
	ForceUpdateVersion pulumi.BoolPtrOutput `pulumi:"forceUpdateVersion"`
	// List of instance types associated with the EKS Node Group. Defaults to `["t3.medium"]`. The provider will only perform drift detection if a configuration value is provided.
	InstanceTypes pulumi.StringArrayOutput `pulumi:"instanceTypes"`
	// Key-value map of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// Configuration block with Launch Template settings. See `launchTemplate` below for details. Conflicts with `remoteAccess`.
	LaunchTemplate NodeGroupLaunchTemplatePtrOutput `pulumi:"launchTemplate"`
	// Name of the EKS Node Group. If omitted, the provider will assign a random, unique name. Conflicts with `nodeGroupNamePrefix`. The node group name can't be longer than 63 characters. It must start with a letter or digit, but can also include hyphens and underscores for the remaining characters.
	NodeGroupName pulumi.StringOutput `pulumi:"nodeGroupName"`
	// Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`.
	NodeGroupNamePrefix pulumi.StringOutput `pulumi:"nodeGroupNamePrefix"`
	// Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group.
	NodeRoleArn pulumi.StringOutput `pulumi:"nodeRoleArn"`
	// AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version.
	ReleaseVersion pulumi.StringOutput `pulumi:"releaseVersion"`
	// Configuration block with remote access settings. See `remoteAccess` below for details. Conflicts with `launchTemplate`.
	RemoteAccess NodeGroupRemoteAccessPtrOutput `pulumi:"remoteAccess"`
	// List of objects containing information about underlying resources.
	Resources NodeGroupResourceArrayOutput `pulumi:"resources"`
	// Configuration block with scaling settings. See `scalingConfig` below for details.
	ScalingConfig NodeGroupScalingConfigOutput `pulumi:"scalingConfig"`
	// Status of the EKS Node Group.
	Status pulumi.StringOutput `pulumi:"status"`
	// Identifiers of EC2 Subnets to associate with the EKS Node Group.
	//
	// The following arguments are optional:
	SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"`
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The Kubernetes taints to be applied to the nodes in the node group. Maximum of 50 taints per node group. See taint below for details.
	Taints NodeGroupTaintArrayOutput `pulumi:"taints"`
	// Configuration block with update settings. See `updateConfig` below for details.
	UpdateConfig NodeGroupUpdateConfigOutput `pulumi:"updateConfig"`
	// Kubernetes version. Defaults to EKS Cluster Kubernetes version. The provider will only perform drift detection if a configuration value is provided.
	Version pulumi.StringOutput `pulumi:"version"`
}

Manages an EKS Node Group, which can provision and optionally update an Auto Scaling Group of Kubernetes worker nodes compatible with EKS. Additional documentation about this functionality can be found in the [EKS User Guide](https://docs.aws.amazon.com/eks/latest/userguide/managed-node-groups.html).

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

) func main() { pulumi.Run(func(ctx *pulumi.Context) error { var splat0 []interface{} for _, val0 := range exampleAwsSubnet { splat0 = append(splat0, val0.Id) } _, err := eks.NewNodeGroup(ctx, "example", &eks.NodeGroupArgs{ ClusterName: pulumi.Any(exampleAwsEksCluster.Name), NodeGroupName: pulumi.String("example"), NodeRoleArn: pulumi.Any(exampleAwsIamRole.Arn), SubnetIds: toPulumiArray(splat0), ScalingConfig: &eks.NodeGroupScalingConfigArgs{ DesiredSize: pulumi.Int(1), MaxSize: pulumi.Int(2), MinSize: pulumi.Int(1), }, UpdateConfig: &eks.NodeGroupUpdateConfigArgs{ MaxUnavailable: pulumi.Int(1), }, }, pulumi.DependsOn([]pulumi.Resource{ example_AmazonEKSWorkerNodePolicy, example_AmazonEKSCNIPolicy, example_AmazonEC2ContainerRegistryReadOnly, })) if err != nil { return err } return nil }) } func toPulumiArray(arr []) pulumi.Array { var pulumiArr pulumi.Array for _, v := range arr { pulumiArr = append(pulumiArr, pulumi.(v)) } return pulumiArr } ```

### Ignoring Changes to Desired Size

You can utilize [ignoreChanges](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) create an EKS Node Group with an initial size of running instances, then ignore any changes to that count caused externally (e.g. Application Autoscaling).

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := eks.NewNodeGroup(ctx, "example", &eks.NodeGroupArgs{
			ScalingConfig: &eks.NodeGroupScalingConfigArgs{
				DesiredSize: pulumi.Int(2),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Example IAM Role for EKS Node Group

```go package main

import (

"encoding/json"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"Statement": []map[string]interface{}{
				map[string]interface{}{
					"Action": "sts:AssumeRole",
					"Effect": "Allow",
					"Principal": map[string]interface{}{
						"Service": "ec2.amazonaws.com",
					},
				},
			},
			"Version": "2012-10-17",
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		example, err := iam.NewRole(ctx, "example", &iam.RoleArgs{
			Name:             pulumi.String("eks-node-group-example"),
			AssumeRolePolicy: pulumi.String(json0),
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "example-AmazonEKSWorkerNodePolicy", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy"),
			Role:      example.Name,
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "example-AmazonEKS_CNI_Policy", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy"),
			Role:      example.Name,
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "example-AmazonEC2ContainerRegistryReadOnly", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"),
			Role:      example.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Example Subnets for EKS Node Group

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		available, err := aws.GetAvailabilityZones(ctx, &aws.GetAvailabilityZonesArgs{
			State: pulumi.StringRef("available"),
		}, nil)
		if err != nil {
			return err
		}
		invokeCidrsubnet, err := std.Cidrsubnet(ctx, &std.CidrsubnetArgs{
			Input:   exampleAwsVpc.CidrBlock,
			Newbits: 8,
			Netnum:  val0,
		}, nil)
		if err != nil {
			return err
		}
		var example []*ec2.Subnet
		for index := 0; index < 2; index++ {
			key0 := index
			val0 := index
			__res, err := ec2.NewSubnet(ctx, fmt.Sprintf("example-%v", key0), &ec2.SubnetArgs{
				AvailabilityZone: available.Names[val0],
				CidrBlock:        invokeCidrsubnet.Result,
				VpcId:            pulumi.Any(exampleAwsVpc.Id),
			})
			if err != nil {
				return err
			}
			example = append(example, __res)
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import EKS Node Groups using the `cluster_name` and `node_group_name` separated by a colon (`:`). For example:

```sh $ pulumi import aws:eks/nodeGroup:NodeGroup my_node_group my_cluster:my_node_group ```

func GetNodeGroup

func GetNodeGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NodeGroupState, opts ...pulumi.ResourceOption) (*NodeGroup, error)

GetNodeGroup gets an existing NodeGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNodeGroup

func NewNodeGroup(ctx *pulumi.Context,
	name string, args *NodeGroupArgs, opts ...pulumi.ResourceOption) (*NodeGroup, error)

NewNodeGroup registers a new resource with the given unique name, arguments, and options.

func (*NodeGroup) ElementType

func (*NodeGroup) ElementType() reflect.Type

func (*NodeGroup) ToNodeGroupOutput

func (i *NodeGroup) ToNodeGroupOutput() NodeGroupOutput

func (*NodeGroup) ToNodeGroupOutputWithContext

func (i *NodeGroup) ToNodeGroupOutputWithContext(ctx context.Context) NodeGroupOutput

type NodeGroupArgs

type NodeGroupArgs struct {
	// Type of Amazon Machine Image (AMI) associated with the EKS Node Group. See the [AWS documentation](https://docs.aws.amazon.com/eks/latest/APIReference/API_Nodegroup.html#AmazonEKS-Type-Nodegroup-amiType) for valid values. This provider will only perform drift detection if a configuration value is provided.
	AmiType pulumi.StringPtrInput
	// Type of capacity associated with the EKS Node Group. Valid values: `ON_DEMAND`, `SPOT`. This provider will only perform drift detection if a configuration value is provided.
	CapacityType pulumi.StringPtrInput
	// Name of the EKS Cluster.
	ClusterName pulumi.StringInput
	// Disk size in GiB for worker nodes. Defaults to `50` for Windows, `20` all other node groups. The provider will only perform drift detection if a configuration value is provided.
	DiskSize pulumi.IntPtrInput
	// Force version update if existing pods are unable to be drained due to a pod disruption budget issue.
	ForceUpdateVersion pulumi.BoolPtrInput
	// List of instance types associated with the EKS Node Group. Defaults to `["t3.medium"]`. The provider will only perform drift detection if a configuration value is provided.
	InstanceTypes pulumi.StringArrayInput
	// Key-value map of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed.
	Labels pulumi.StringMapInput
	// Configuration block with Launch Template settings. See `launchTemplate` below for details. Conflicts with `remoteAccess`.
	LaunchTemplate NodeGroupLaunchTemplatePtrInput
	// Name of the EKS Node Group. If omitted, the provider will assign a random, unique name. Conflicts with `nodeGroupNamePrefix`. The node group name can't be longer than 63 characters. It must start with a letter or digit, but can also include hyphens and underscores for the remaining characters.
	NodeGroupName pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`.
	NodeGroupNamePrefix pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group.
	NodeRoleArn pulumi.StringInput
	// AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version.
	ReleaseVersion pulumi.StringPtrInput
	// Configuration block with remote access settings. See `remoteAccess` below for details. Conflicts with `launchTemplate`.
	RemoteAccess NodeGroupRemoteAccessPtrInput
	// Configuration block with scaling settings. See `scalingConfig` below for details.
	ScalingConfig NodeGroupScalingConfigInput
	// Identifiers of EC2 Subnets to associate with the EKS Node Group.
	//
	// The following arguments are optional:
	SubnetIds pulumi.StringArrayInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// The Kubernetes taints to be applied to the nodes in the node group. Maximum of 50 taints per node group. See taint below for details.
	Taints NodeGroupTaintArrayInput
	// Configuration block with update settings. See `updateConfig` below for details.
	UpdateConfig NodeGroupUpdateConfigPtrInput
	// Kubernetes version. Defaults to EKS Cluster Kubernetes version. The provider will only perform drift detection if a configuration value is provided.
	Version pulumi.StringPtrInput
}

The set of arguments for constructing a NodeGroup resource.

func (NodeGroupArgs) ElementType

func (NodeGroupArgs) ElementType() reflect.Type

type NodeGroupArray

type NodeGroupArray []NodeGroupInput

func (NodeGroupArray) ElementType

func (NodeGroupArray) ElementType() reflect.Type

func (NodeGroupArray) ToNodeGroupArrayOutput

func (i NodeGroupArray) ToNodeGroupArrayOutput() NodeGroupArrayOutput

func (NodeGroupArray) ToNodeGroupArrayOutputWithContext

func (i NodeGroupArray) ToNodeGroupArrayOutputWithContext(ctx context.Context) NodeGroupArrayOutput

type NodeGroupArrayInput

type NodeGroupArrayInput interface {
	pulumi.Input

	ToNodeGroupArrayOutput() NodeGroupArrayOutput
	ToNodeGroupArrayOutputWithContext(context.Context) NodeGroupArrayOutput
}

NodeGroupArrayInput is an input type that accepts NodeGroupArray and NodeGroupArrayOutput values. You can construct a concrete instance of `NodeGroupArrayInput` via:

NodeGroupArray{ NodeGroupArgs{...} }

type NodeGroupArrayOutput

type NodeGroupArrayOutput struct{ *pulumi.OutputState }

func (NodeGroupArrayOutput) ElementType

func (NodeGroupArrayOutput) ElementType() reflect.Type

func (NodeGroupArrayOutput) Index

func (NodeGroupArrayOutput) ToNodeGroupArrayOutput

func (o NodeGroupArrayOutput) ToNodeGroupArrayOutput() NodeGroupArrayOutput

func (NodeGroupArrayOutput) ToNodeGroupArrayOutputWithContext

func (o NodeGroupArrayOutput) ToNodeGroupArrayOutputWithContext(ctx context.Context) NodeGroupArrayOutput

type NodeGroupInput

type NodeGroupInput interface {
	pulumi.Input

	ToNodeGroupOutput() NodeGroupOutput
	ToNodeGroupOutputWithContext(ctx context.Context) NodeGroupOutput
}

type NodeGroupLaunchTemplate

type NodeGroupLaunchTemplate struct {
	// Identifier of the EC2 Launch Template. Conflicts with `name`.
	Id *string `pulumi:"id"`
	// Name of the EC2 Launch Template. Conflicts with `id`.
	Name *string `pulumi:"name"`
	// EC2 Launch Template version number. While the API accepts values like `$Default` and `$Latest`, the API will convert the value to the associated version number (e.g., `1`) on read and the provider will show a difference on next plan. Using the `defaultVersion` or `latestVersion` attribute of the `ec2.LaunchTemplate` resource or data source is recommended for this argument.
	Version string `pulumi:"version"`
}

type NodeGroupLaunchTemplateArgs

type NodeGroupLaunchTemplateArgs struct {
	// Identifier of the EC2 Launch Template. Conflicts with `name`.
	Id pulumi.StringPtrInput `pulumi:"id"`
	// Name of the EC2 Launch Template. Conflicts with `id`.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// EC2 Launch Template version number. While the API accepts values like `$Default` and `$Latest`, the API will convert the value to the associated version number (e.g., `1`) on read and the provider will show a difference on next plan. Using the `defaultVersion` or `latestVersion` attribute of the `ec2.LaunchTemplate` resource or data source is recommended for this argument.
	Version pulumi.StringInput `pulumi:"version"`
}

func (NodeGroupLaunchTemplateArgs) ElementType

func (NodeGroupLaunchTemplateArgs) ToNodeGroupLaunchTemplateOutput

func (i NodeGroupLaunchTemplateArgs) ToNodeGroupLaunchTemplateOutput() NodeGroupLaunchTemplateOutput

func (NodeGroupLaunchTemplateArgs) ToNodeGroupLaunchTemplateOutputWithContext

func (i NodeGroupLaunchTemplateArgs) ToNodeGroupLaunchTemplateOutputWithContext(ctx context.Context) NodeGroupLaunchTemplateOutput

func (NodeGroupLaunchTemplateArgs) ToNodeGroupLaunchTemplatePtrOutput

func (i NodeGroupLaunchTemplateArgs) ToNodeGroupLaunchTemplatePtrOutput() NodeGroupLaunchTemplatePtrOutput

func (NodeGroupLaunchTemplateArgs) ToNodeGroupLaunchTemplatePtrOutputWithContext

func (i NodeGroupLaunchTemplateArgs) ToNodeGroupLaunchTemplatePtrOutputWithContext(ctx context.Context) NodeGroupLaunchTemplatePtrOutput

type NodeGroupLaunchTemplateInput

type NodeGroupLaunchTemplateInput interface {
	pulumi.Input

	ToNodeGroupLaunchTemplateOutput() NodeGroupLaunchTemplateOutput
	ToNodeGroupLaunchTemplateOutputWithContext(context.Context) NodeGroupLaunchTemplateOutput
}

NodeGroupLaunchTemplateInput is an input type that accepts NodeGroupLaunchTemplateArgs and NodeGroupLaunchTemplateOutput values. You can construct a concrete instance of `NodeGroupLaunchTemplateInput` via:

NodeGroupLaunchTemplateArgs{...}

type NodeGroupLaunchTemplateOutput

type NodeGroupLaunchTemplateOutput struct{ *pulumi.OutputState }

func (NodeGroupLaunchTemplateOutput) ElementType

func (NodeGroupLaunchTemplateOutput) Id

Identifier of the EC2 Launch Template. Conflicts with `name`.

func (NodeGroupLaunchTemplateOutput) Name

Name of the EC2 Launch Template. Conflicts with `id`.

func (NodeGroupLaunchTemplateOutput) ToNodeGroupLaunchTemplateOutput

func (o NodeGroupLaunchTemplateOutput) ToNodeGroupLaunchTemplateOutput() NodeGroupLaunchTemplateOutput

func (NodeGroupLaunchTemplateOutput) ToNodeGroupLaunchTemplateOutputWithContext

func (o NodeGroupLaunchTemplateOutput) ToNodeGroupLaunchTemplateOutputWithContext(ctx context.Context) NodeGroupLaunchTemplateOutput

func (NodeGroupLaunchTemplateOutput) ToNodeGroupLaunchTemplatePtrOutput

func (o NodeGroupLaunchTemplateOutput) ToNodeGroupLaunchTemplatePtrOutput() NodeGroupLaunchTemplatePtrOutput

func (NodeGroupLaunchTemplateOutput) ToNodeGroupLaunchTemplatePtrOutputWithContext

func (o NodeGroupLaunchTemplateOutput) ToNodeGroupLaunchTemplatePtrOutputWithContext(ctx context.Context) NodeGroupLaunchTemplatePtrOutput

func (NodeGroupLaunchTemplateOutput) Version

EC2 Launch Template version number. While the API accepts values like `$Default` and `$Latest`, the API will convert the value to the associated version number (e.g., `1`) on read and the provider will show a difference on next plan. Using the `defaultVersion` or `latestVersion` attribute of the `ec2.LaunchTemplate` resource or data source is recommended for this argument.

type NodeGroupLaunchTemplatePtrInput

type NodeGroupLaunchTemplatePtrInput interface {
	pulumi.Input

	ToNodeGroupLaunchTemplatePtrOutput() NodeGroupLaunchTemplatePtrOutput
	ToNodeGroupLaunchTemplatePtrOutputWithContext(context.Context) NodeGroupLaunchTemplatePtrOutput
}

NodeGroupLaunchTemplatePtrInput is an input type that accepts NodeGroupLaunchTemplateArgs, NodeGroupLaunchTemplatePtr and NodeGroupLaunchTemplatePtrOutput values. You can construct a concrete instance of `NodeGroupLaunchTemplatePtrInput` via:

        NodeGroupLaunchTemplateArgs{...}

or:

        nil

type NodeGroupLaunchTemplatePtrOutput

type NodeGroupLaunchTemplatePtrOutput struct{ *pulumi.OutputState }

func (NodeGroupLaunchTemplatePtrOutput) Elem

func (NodeGroupLaunchTemplatePtrOutput) ElementType

func (NodeGroupLaunchTemplatePtrOutput) Id

Identifier of the EC2 Launch Template. Conflicts with `name`.

func (NodeGroupLaunchTemplatePtrOutput) Name

Name of the EC2 Launch Template. Conflicts with `id`.

func (NodeGroupLaunchTemplatePtrOutput) ToNodeGroupLaunchTemplatePtrOutput

func (o NodeGroupLaunchTemplatePtrOutput) ToNodeGroupLaunchTemplatePtrOutput() NodeGroupLaunchTemplatePtrOutput

func (NodeGroupLaunchTemplatePtrOutput) ToNodeGroupLaunchTemplatePtrOutputWithContext

func (o NodeGroupLaunchTemplatePtrOutput) ToNodeGroupLaunchTemplatePtrOutputWithContext(ctx context.Context) NodeGroupLaunchTemplatePtrOutput

func (NodeGroupLaunchTemplatePtrOutput) Version

EC2 Launch Template version number. While the API accepts values like `$Default` and `$Latest`, the API will convert the value to the associated version number (e.g., `1`) on read and the provider will show a difference on next plan. Using the `defaultVersion` or `latestVersion` attribute of the `ec2.LaunchTemplate` resource or data source is recommended for this argument.

type NodeGroupMap

type NodeGroupMap map[string]NodeGroupInput

func (NodeGroupMap) ElementType

func (NodeGroupMap) ElementType() reflect.Type

func (NodeGroupMap) ToNodeGroupMapOutput

func (i NodeGroupMap) ToNodeGroupMapOutput() NodeGroupMapOutput

func (NodeGroupMap) ToNodeGroupMapOutputWithContext

func (i NodeGroupMap) ToNodeGroupMapOutputWithContext(ctx context.Context) NodeGroupMapOutput

type NodeGroupMapInput

type NodeGroupMapInput interface {
	pulumi.Input

	ToNodeGroupMapOutput() NodeGroupMapOutput
	ToNodeGroupMapOutputWithContext(context.Context) NodeGroupMapOutput
}

NodeGroupMapInput is an input type that accepts NodeGroupMap and NodeGroupMapOutput values. You can construct a concrete instance of `NodeGroupMapInput` via:

NodeGroupMap{ "key": NodeGroupArgs{...} }

type NodeGroupMapOutput

type NodeGroupMapOutput struct{ *pulumi.OutputState }

func (NodeGroupMapOutput) ElementType

func (NodeGroupMapOutput) ElementType() reflect.Type

func (NodeGroupMapOutput) MapIndex

func (NodeGroupMapOutput) ToNodeGroupMapOutput

func (o NodeGroupMapOutput) ToNodeGroupMapOutput() NodeGroupMapOutput

func (NodeGroupMapOutput) ToNodeGroupMapOutputWithContext

func (o NodeGroupMapOutput) ToNodeGroupMapOutputWithContext(ctx context.Context) NodeGroupMapOutput

type NodeGroupOutput

type NodeGroupOutput struct{ *pulumi.OutputState }

func (NodeGroupOutput) AmiType

func (o NodeGroupOutput) AmiType() pulumi.StringOutput

Type of Amazon Machine Image (AMI) associated with the EKS Node Group. See the [AWS documentation](https://docs.aws.amazon.com/eks/latest/APIReference/API_Nodegroup.html#AmazonEKS-Type-Nodegroup-amiType) for valid values. This provider will only perform drift detection if a configuration value is provided.

func (NodeGroupOutput) Arn

Amazon Resource Name (ARN) of the EKS Node Group.

func (NodeGroupOutput) CapacityType

func (o NodeGroupOutput) CapacityType() pulumi.StringOutput

Type of capacity associated with the EKS Node Group. Valid values: `ON_DEMAND`, `SPOT`. This provider will only perform drift detection if a configuration value is provided.

func (NodeGroupOutput) ClusterName

func (o NodeGroupOutput) ClusterName() pulumi.StringOutput

Name of the EKS Cluster.

func (NodeGroupOutput) DiskSize

func (o NodeGroupOutput) DiskSize() pulumi.IntOutput

Disk size in GiB for worker nodes. Defaults to `50` for Windows, `20` all other node groups. The provider will only perform drift detection if a configuration value is provided.

func (NodeGroupOutput) ElementType

func (NodeGroupOutput) ElementType() reflect.Type

func (NodeGroupOutput) ForceUpdateVersion

func (o NodeGroupOutput) ForceUpdateVersion() pulumi.BoolPtrOutput

Force version update if existing pods are unable to be drained due to a pod disruption budget issue.

func (NodeGroupOutput) InstanceTypes

func (o NodeGroupOutput) InstanceTypes() pulumi.StringArrayOutput

List of instance types associated with the EKS Node Group. Defaults to `["t3.medium"]`. The provider will only perform drift detection if a configuration value is provided.

func (NodeGroupOutput) Labels

Key-value map of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed.

func (NodeGroupOutput) LaunchTemplate

Configuration block with Launch Template settings. See `launchTemplate` below for details. Conflicts with `remoteAccess`.

func (NodeGroupOutput) NodeGroupName

func (o NodeGroupOutput) NodeGroupName() pulumi.StringOutput

Name of the EKS Node Group. If omitted, the provider will assign a random, unique name. Conflicts with `nodeGroupNamePrefix`. The node group name can't be longer than 63 characters. It must start with a letter or digit, but can also include hyphens and underscores for the remaining characters.

func (NodeGroupOutput) NodeGroupNamePrefix

func (o NodeGroupOutput) NodeGroupNamePrefix() pulumi.StringOutput

Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`.

func (NodeGroupOutput) NodeRoleArn

func (o NodeGroupOutput) NodeRoleArn() pulumi.StringOutput

Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group.

func (NodeGroupOutput) ReleaseVersion

func (o NodeGroupOutput) ReleaseVersion() pulumi.StringOutput

AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version.

func (NodeGroupOutput) RemoteAccess

Configuration block with remote access settings. See `remoteAccess` below for details. Conflicts with `launchTemplate`.

func (NodeGroupOutput) Resources

List of objects containing information about underlying resources.

func (NodeGroupOutput) ScalingConfig

Configuration block with scaling settings. See `scalingConfig` below for details.

func (NodeGroupOutput) Status

func (o NodeGroupOutput) Status() pulumi.StringOutput

Status of the EKS Node Group.

func (NodeGroupOutput) SubnetIds

Identifiers of EC2 Subnets to associate with the EKS Node Group.

The following arguments are optional:

func (NodeGroupOutput) Tags

Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (NodeGroupOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (NodeGroupOutput) Taints

The Kubernetes taints to be applied to the nodes in the node group. Maximum of 50 taints per node group. See taint below for details.

func (NodeGroupOutput) ToNodeGroupOutput

func (o NodeGroupOutput) ToNodeGroupOutput() NodeGroupOutput

func (NodeGroupOutput) ToNodeGroupOutputWithContext

func (o NodeGroupOutput) ToNodeGroupOutputWithContext(ctx context.Context) NodeGroupOutput

func (NodeGroupOutput) UpdateConfig

Configuration block with update settings. See `updateConfig` below for details.

func (NodeGroupOutput) Version

func (o NodeGroupOutput) Version() pulumi.StringOutput

Kubernetes version. Defaults to EKS Cluster Kubernetes version. The provider will only perform drift detection if a configuration value is provided.

type NodeGroupRemoteAccess

type NodeGroupRemoteAccess struct {
	// EC2 Key Pair name that provides access for remote communication with the worker nodes in the EKS Node Group. If you specify this configuration, but do not specify `sourceSecurityGroupIds` when you create an EKS Node Group, either port 3389 for Windows, or port 22 for all other operating systems is opened on the worker nodes to the Internet (0.0.0.0/0). For Windows nodes, this will allow you to use RDP, for all others this allows you to SSH into the worker nodes.
	Ec2SshKey *string `pulumi:"ec2SshKey"`
	// Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes. If you specify `ec2SshKey`, but do not specify this configuration when you create an EKS Node Group, port 22 on the worker nodes is opened to the Internet (0.0.0.0/0).
	SourceSecurityGroupIds []string `pulumi:"sourceSecurityGroupIds"`
}

type NodeGroupRemoteAccessArgs

type NodeGroupRemoteAccessArgs struct {
	// EC2 Key Pair name that provides access for remote communication with the worker nodes in the EKS Node Group. If you specify this configuration, but do not specify `sourceSecurityGroupIds` when you create an EKS Node Group, either port 3389 for Windows, or port 22 for all other operating systems is opened on the worker nodes to the Internet (0.0.0.0/0). For Windows nodes, this will allow you to use RDP, for all others this allows you to SSH into the worker nodes.
	Ec2SshKey pulumi.StringPtrInput `pulumi:"ec2SshKey"`
	// Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes. If you specify `ec2SshKey`, but do not specify this configuration when you create an EKS Node Group, port 22 on the worker nodes is opened to the Internet (0.0.0.0/0).
	SourceSecurityGroupIds pulumi.StringArrayInput `pulumi:"sourceSecurityGroupIds"`
}

func (NodeGroupRemoteAccessArgs) ElementType

func (NodeGroupRemoteAccessArgs) ElementType() reflect.Type

func (NodeGroupRemoteAccessArgs) ToNodeGroupRemoteAccessOutput

func (i NodeGroupRemoteAccessArgs) ToNodeGroupRemoteAccessOutput() NodeGroupRemoteAccessOutput

func (NodeGroupRemoteAccessArgs) ToNodeGroupRemoteAccessOutputWithContext

func (i NodeGroupRemoteAccessArgs) ToNodeGroupRemoteAccessOutputWithContext(ctx context.Context) NodeGroupRemoteAccessOutput

func (NodeGroupRemoteAccessArgs) ToNodeGroupRemoteAccessPtrOutput

func (i NodeGroupRemoteAccessArgs) ToNodeGroupRemoteAccessPtrOutput() NodeGroupRemoteAccessPtrOutput

func (NodeGroupRemoteAccessArgs) ToNodeGroupRemoteAccessPtrOutputWithContext

func (i NodeGroupRemoteAccessArgs) ToNodeGroupRemoteAccessPtrOutputWithContext(ctx context.Context) NodeGroupRemoteAccessPtrOutput

type NodeGroupRemoteAccessInput

type NodeGroupRemoteAccessInput interface {
	pulumi.Input

	ToNodeGroupRemoteAccessOutput() NodeGroupRemoteAccessOutput
	ToNodeGroupRemoteAccessOutputWithContext(context.Context) NodeGroupRemoteAccessOutput
}

NodeGroupRemoteAccessInput is an input type that accepts NodeGroupRemoteAccessArgs and NodeGroupRemoteAccessOutput values. You can construct a concrete instance of `NodeGroupRemoteAccessInput` via:

NodeGroupRemoteAccessArgs{...}

type NodeGroupRemoteAccessOutput

type NodeGroupRemoteAccessOutput struct{ *pulumi.OutputState }

func (NodeGroupRemoteAccessOutput) Ec2SshKey

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

func (NodeGroupRemoteAccessOutput) ElementType

func (NodeGroupRemoteAccessOutput) SourceSecurityGroupIds

func (o NodeGroupRemoteAccessOutput) SourceSecurityGroupIds() pulumi.StringArrayOutput

Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes. If you specify `ec2SshKey`, but do not specify this configuration when you create an EKS Node Group, port 22 on the worker nodes is opened to the Internet (0.0.0.0/0).

func (NodeGroupRemoteAccessOutput) ToNodeGroupRemoteAccessOutput

func (o NodeGroupRemoteAccessOutput) ToNodeGroupRemoteAccessOutput() NodeGroupRemoteAccessOutput

func (NodeGroupRemoteAccessOutput) ToNodeGroupRemoteAccessOutputWithContext

func (o NodeGroupRemoteAccessOutput) ToNodeGroupRemoteAccessOutputWithContext(ctx context.Context) NodeGroupRemoteAccessOutput

func (NodeGroupRemoteAccessOutput) ToNodeGroupRemoteAccessPtrOutput

func (o NodeGroupRemoteAccessOutput) ToNodeGroupRemoteAccessPtrOutput() NodeGroupRemoteAccessPtrOutput

func (NodeGroupRemoteAccessOutput) ToNodeGroupRemoteAccessPtrOutputWithContext

func (o NodeGroupRemoteAccessOutput) ToNodeGroupRemoteAccessPtrOutputWithContext(ctx context.Context) NodeGroupRemoteAccessPtrOutput

type NodeGroupRemoteAccessPtrInput

type NodeGroupRemoteAccessPtrInput interface {
	pulumi.Input

	ToNodeGroupRemoteAccessPtrOutput() NodeGroupRemoteAccessPtrOutput
	ToNodeGroupRemoteAccessPtrOutputWithContext(context.Context) NodeGroupRemoteAccessPtrOutput
}

NodeGroupRemoteAccessPtrInput is an input type that accepts NodeGroupRemoteAccessArgs, NodeGroupRemoteAccessPtr and NodeGroupRemoteAccessPtrOutput values. You can construct a concrete instance of `NodeGroupRemoteAccessPtrInput` via:

        NodeGroupRemoteAccessArgs{...}

or:

        nil

type NodeGroupRemoteAccessPtrOutput

type NodeGroupRemoteAccessPtrOutput struct{ *pulumi.OutputState }

func (NodeGroupRemoteAccessPtrOutput) Ec2SshKey

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

func (NodeGroupRemoteAccessPtrOutput) Elem

func (NodeGroupRemoteAccessPtrOutput) ElementType

func (NodeGroupRemoteAccessPtrOutput) SourceSecurityGroupIds

func (o NodeGroupRemoteAccessPtrOutput) SourceSecurityGroupIds() pulumi.StringArrayOutput

Set of EC2 Security Group IDs to allow SSH access (port 22) from on the worker nodes. If you specify `ec2SshKey`, but do not specify this configuration when you create an EKS Node Group, port 22 on the worker nodes is opened to the Internet (0.0.0.0/0).

func (NodeGroupRemoteAccessPtrOutput) ToNodeGroupRemoteAccessPtrOutput

func (o NodeGroupRemoteAccessPtrOutput) ToNodeGroupRemoteAccessPtrOutput() NodeGroupRemoteAccessPtrOutput

func (NodeGroupRemoteAccessPtrOutput) ToNodeGroupRemoteAccessPtrOutputWithContext

func (o NodeGroupRemoteAccessPtrOutput) ToNodeGroupRemoteAccessPtrOutputWithContext(ctx context.Context) NodeGroupRemoteAccessPtrOutput

type NodeGroupResource

type NodeGroupResource struct {
	// List of objects containing information about AutoScaling Groups.
	AutoscalingGroups []NodeGroupResourceAutoscalingGroup `pulumi:"autoscalingGroups"`
	// Identifier of the remote access EC2 Security Group.
	RemoteAccessSecurityGroupId *string `pulumi:"remoteAccessSecurityGroupId"`
}

type NodeGroupResourceArgs

type NodeGroupResourceArgs struct {
	// List of objects containing information about AutoScaling Groups.
	AutoscalingGroups NodeGroupResourceAutoscalingGroupArrayInput `pulumi:"autoscalingGroups"`
	// Identifier of the remote access EC2 Security Group.
	RemoteAccessSecurityGroupId pulumi.StringPtrInput `pulumi:"remoteAccessSecurityGroupId"`
}

func (NodeGroupResourceArgs) ElementType

func (NodeGroupResourceArgs) ElementType() reflect.Type

func (NodeGroupResourceArgs) ToNodeGroupResourceOutput

func (i NodeGroupResourceArgs) ToNodeGroupResourceOutput() NodeGroupResourceOutput

func (NodeGroupResourceArgs) ToNodeGroupResourceOutputWithContext

func (i NodeGroupResourceArgs) ToNodeGroupResourceOutputWithContext(ctx context.Context) NodeGroupResourceOutput

type NodeGroupResourceArray

type NodeGroupResourceArray []NodeGroupResourceInput

func (NodeGroupResourceArray) ElementType

func (NodeGroupResourceArray) ElementType() reflect.Type

func (NodeGroupResourceArray) ToNodeGroupResourceArrayOutput

func (i NodeGroupResourceArray) ToNodeGroupResourceArrayOutput() NodeGroupResourceArrayOutput

func (NodeGroupResourceArray) ToNodeGroupResourceArrayOutputWithContext

func (i NodeGroupResourceArray) ToNodeGroupResourceArrayOutputWithContext(ctx context.Context) NodeGroupResourceArrayOutput

type NodeGroupResourceArrayInput

type NodeGroupResourceArrayInput interface {
	pulumi.Input

	ToNodeGroupResourceArrayOutput() NodeGroupResourceArrayOutput
	ToNodeGroupResourceArrayOutputWithContext(context.Context) NodeGroupResourceArrayOutput
}

NodeGroupResourceArrayInput is an input type that accepts NodeGroupResourceArray and NodeGroupResourceArrayOutput values. You can construct a concrete instance of `NodeGroupResourceArrayInput` via:

NodeGroupResourceArray{ NodeGroupResourceArgs{...} }

type NodeGroupResourceArrayOutput

type NodeGroupResourceArrayOutput struct{ *pulumi.OutputState }

func (NodeGroupResourceArrayOutput) ElementType

func (NodeGroupResourceArrayOutput) Index

func (NodeGroupResourceArrayOutput) ToNodeGroupResourceArrayOutput

func (o NodeGroupResourceArrayOutput) ToNodeGroupResourceArrayOutput() NodeGroupResourceArrayOutput

func (NodeGroupResourceArrayOutput) ToNodeGroupResourceArrayOutputWithContext

func (o NodeGroupResourceArrayOutput) ToNodeGroupResourceArrayOutputWithContext(ctx context.Context) NodeGroupResourceArrayOutput

type NodeGroupResourceAutoscalingGroup

type NodeGroupResourceAutoscalingGroup struct {
	// Name of the AutoScaling Group.
	Name *string `pulumi:"name"`
}

type NodeGroupResourceAutoscalingGroupArgs

type NodeGroupResourceAutoscalingGroupArgs struct {
	// Name of the AutoScaling Group.
	Name pulumi.StringPtrInput `pulumi:"name"`
}

func (NodeGroupResourceAutoscalingGroupArgs) ElementType

func (NodeGroupResourceAutoscalingGroupArgs) ToNodeGroupResourceAutoscalingGroupOutput

func (i NodeGroupResourceAutoscalingGroupArgs) ToNodeGroupResourceAutoscalingGroupOutput() NodeGroupResourceAutoscalingGroupOutput

func (NodeGroupResourceAutoscalingGroupArgs) ToNodeGroupResourceAutoscalingGroupOutputWithContext

func (i NodeGroupResourceAutoscalingGroupArgs) ToNodeGroupResourceAutoscalingGroupOutputWithContext(ctx context.Context) NodeGroupResourceAutoscalingGroupOutput

type NodeGroupResourceAutoscalingGroupArray

type NodeGroupResourceAutoscalingGroupArray []NodeGroupResourceAutoscalingGroupInput

func (NodeGroupResourceAutoscalingGroupArray) ElementType

func (NodeGroupResourceAutoscalingGroupArray) ToNodeGroupResourceAutoscalingGroupArrayOutput

func (i NodeGroupResourceAutoscalingGroupArray) ToNodeGroupResourceAutoscalingGroupArrayOutput() NodeGroupResourceAutoscalingGroupArrayOutput

func (NodeGroupResourceAutoscalingGroupArray) ToNodeGroupResourceAutoscalingGroupArrayOutputWithContext

func (i NodeGroupResourceAutoscalingGroupArray) ToNodeGroupResourceAutoscalingGroupArrayOutputWithContext(ctx context.Context) NodeGroupResourceAutoscalingGroupArrayOutput

type NodeGroupResourceAutoscalingGroupArrayInput

type NodeGroupResourceAutoscalingGroupArrayInput interface {
	pulumi.Input

	ToNodeGroupResourceAutoscalingGroupArrayOutput() NodeGroupResourceAutoscalingGroupArrayOutput
	ToNodeGroupResourceAutoscalingGroupArrayOutputWithContext(context.Context) NodeGroupResourceAutoscalingGroupArrayOutput
}

NodeGroupResourceAutoscalingGroupArrayInput is an input type that accepts NodeGroupResourceAutoscalingGroupArray and NodeGroupResourceAutoscalingGroupArrayOutput values. You can construct a concrete instance of `NodeGroupResourceAutoscalingGroupArrayInput` via:

NodeGroupResourceAutoscalingGroupArray{ NodeGroupResourceAutoscalingGroupArgs{...} }

type NodeGroupResourceAutoscalingGroupArrayOutput

type NodeGroupResourceAutoscalingGroupArrayOutput struct{ *pulumi.OutputState }

func (NodeGroupResourceAutoscalingGroupArrayOutput) ElementType

func (NodeGroupResourceAutoscalingGroupArrayOutput) Index

func (NodeGroupResourceAutoscalingGroupArrayOutput) ToNodeGroupResourceAutoscalingGroupArrayOutput

func (o NodeGroupResourceAutoscalingGroupArrayOutput) ToNodeGroupResourceAutoscalingGroupArrayOutput() NodeGroupResourceAutoscalingGroupArrayOutput

func (NodeGroupResourceAutoscalingGroupArrayOutput) ToNodeGroupResourceAutoscalingGroupArrayOutputWithContext

func (o NodeGroupResourceAutoscalingGroupArrayOutput) ToNodeGroupResourceAutoscalingGroupArrayOutputWithContext(ctx context.Context) NodeGroupResourceAutoscalingGroupArrayOutput

type NodeGroupResourceAutoscalingGroupInput

type NodeGroupResourceAutoscalingGroupInput interface {
	pulumi.Input

	ToNodeGroupResourceAutoscalingGroupOutput() NodeGroupResourceAutoscalingGroupOutput
	ToNodeGroupResourceAutoscalingGroupOutputWithContext(context.Context) NodeGroupResourceAutoscalingGroupOutput
}

NodeGroupResourceAutoscalingGroupInput is an input type that accepts NodeGroupResourceAutoscalingGroupArgs and NodeGroupResourceAutoscalingGroupOutput values. You can construct a concrete instance of `NodeGroupResourceAutoscalingGroupInput` via:

NodeGroupResourceAutoscalingGroupArgs{...}

type NodeGroupResourceAutoscalingGroupOutput

type NodeGroupResourceAutoscalingGroupOutput struct{ *pulumi.OutputState }

func (NodeGroupResourceAutoscalingGroupOutput) ElementType

func (NodeGroupResourceAutoscalingGroupOutput) Name

Name of the AutoScaling Group.

func (NodeGroupResourceAutoscalingGroupOutput) ToNodeGroupResourceAutoscalingGroupOutput

func (o NodeGroupResourceAutoscalingGroupOutput) ToNodeGroupResourceAutoscalingGroupOutput() NodeGroupResourceAutoscalingGroupOutput

func (NodeGroupResourceAutoscalingGroupOutput) ToNodeGroupResourceAutoscalingGroupOutputWithContext

func (o NodeGroupResourceAutoscalingGroupOutput) ToNodeGroupResourceAutoscalingGroupOutputWithContext(ctx context.Context) NodeGroupResourceAutoscalingGroupOutput

type NodeGroupResourceInput

type NodeGroupResourceInput interface {
	pulumi.Input

	ToNodeGroupResourceOutput() NodeGroupResourceOutput
	ToNodeGroupResourceOutputWithContext(context.Context) NodeGroupResourceOutput
}

NodeGroupResourceInput is an input type that accepts NodeGroupResourceArgs and NodeGroupResourceOutput values. You can construct a concrete instance of `NodeGroupResourceInput` via:

NodeGroupResourceArgs{...}

type NodeGroupResourceOutput

type NodeGroupResourceOutput struct{ *pulumi.OutputState }

func (NodeGroupResourceOutput) AutoscalingGroups

List of objects containing information about AutoScaling Groups.

func (NodeGroupResourceOutput) ElementType

func (NodeGroupResourceOutput) ElementType() reflect.Type

func (NodeGroupResourceOutput) RemoteAccessSecurityGroupId

func (o NodeGroupResourceOutput) RemoteAccessSecurityGroupId() pulumi.StringPtrOutput

Identifier of the remote access EC2 Security Group.

func (NodeGroupResourceOutput) ToNodeGroupResourceOutput

func (o NodeGroupResourceOutput) ToNodeGroupResourceOutput() NodeGroupResourceOutput

func (NodeGroupResourceOutput) ToNodeGroupResourceOutputWithContext

func (o NodeGroupResourceOutput) ToNodeGroupResourceOutputWithContext(ctx context.Context) NodeGroupResourceOutput

type NodeGroupScalingConfig

type NodeGroupScalingConfig struct {
	// Desired number of worker nodes.
	DesiredSize int `pulumi:"desiredSize"`
	// Maximum number of worker nodes.
	MaxSize int `pulumi:"maxSize"`
	// Minimum number of worker nodes.
	MinSize int `pulumi:"minSize"`
}

type NodeGroupScalingConfigArgs

type NodeGroupScalingConfigArgs struct {
	// Desired number of worker nodes.
	DesiredSize pulumi.IntInput `pulumi:"desiredSize"`
	// Maximum number of worker nodes.
	MaxSize pulumi.IntInput `pulumi:"maxSize"`
	// Minimum number of worker nodes.
	MinSize pulumi.IntInput `pulumi:"minSize"`
}

func (NodeGroupScalingConfigArgs) ElementType

func (NodeGroupScalingConfigArgs) ElementType() reflect.Type

func (NodeGroupScalingConfigArgs) ToNodeGroupScalingConfigOutput

func (i NodeGroupScalingConfigArgs) ToNodeGroupScalingConfigOutput() NodeGroupScalingConfigOutput

func (NodeGroupScalingConfigArgs) ToNodeGroupScalingConfigOutputWithContext

func (i NodeGroupScalingConfigArgs) ToNodeGroupScalingConfigOutputWithContext(ctx context.Context) NodeGroupScalingConfigOutput

func (NodeGroupScalingConfigArgs) ToNodeGroupScalingConfigPtrOutput

func (i NodeGroupScalingConfigArgs) ToNodeGroupScalingConfigPtrOutput() NodeGroupScalingConfigPtrOutput

func (NodeGroupScalingConfigArgs) ToNodeGroupScalingConfigPtrOutputWithContext

func (i NodeGroupScalingConfigArgs) ToNodeGroupScalingConfigPtrOutputWithContext(ctx context.Context) NodeGroupScalingConfigPtrOutput

type NodeGroupScalingConfigInput

type NodeGroupScalingConfigInput interface {
	pulumi.Input

	ToNodeGroupScalingConfigOutput() NodeGroupScalingConfigOutput
	ToNodeGroupScalingConfigOutputWithContext(context.Context) NodeGroupScalingConfigOutput
}

NodeGroupScalingConfigInput is an input type that accepts NodeGroupScalingConfigArgs and NodeGroupScalingConfigOutput values. You can construct a concrete instance of `NodeGroupScalingConfigInput` via:

NodeGroupScalingConfigArgs{...}

type NodeGroupScalingConfigOutput

type NodeGroupScalingConfigOutput struct{ *pulumi.OutputState }

func (NodeGroupScalingConfigOutput) DesiredSize

Desired number of worker nodes.

func (NodeGroupScalingConfigOutput) ElementType

func (NodeGroupScalingConfigOutput) MaxSize

Maximum number of worker nodes.

func (NodeGroupScalingConfigOutput) MinSize

Minimum number of worker nodes.

func (NodeGroupScalingConfigOutput) ToNodeGroupScalingConfigOutput

func (o NodeGroupScalingConfigOutput) ToNodeGroupScalingConfigOutput() NodeGroupScalingConfigOutput

func (NodeGroupScalingConfigOutput) ToNodeGroupScalingConfigOutputWithContext

func (o NodeGroupScalingConfigOutput) ToNodeGroupScalingConfigOutputWithContext(ctx context.Context) NodeGroupScalingConfigOutput

func (NodeGroupScalingConfigOutput) ToNodeGroupScalingConfigPtrOutput

func (o NodeGroupScalingConfigOutput) ToNodeGroupScalingConfigPtrOutput() NodeGroupScalingConfigPtrOutput

func (NodeGroupScalingConfigOutput) ToNodeGroupScalingConfigPtrOutputWithContext

func (o NodeGroupScalingConfigOutput) ToNodeGroupScalingConfigPtrOutputWithContext(ctx context.Context) NodeGroupScalingConfigPtrOutput

type NodeGroupScalingConfigPtrInput

type NodeGroupScalingConfigPtrInput interface {
	pulumi.Input

	ToNodeGroupScalingConfigPtrOutput() NodeGroupScalingConfigPtrOutput
	ToNodeGroupScalingConfigPtrOutputWithContext(context.Context) NodeGroupScalingConfigPtrOutput
}

NodeGroupScalingConfigPtrInput is an input type that accepts NodeGroupScalingConfigArgs, NodeGroupScalingConfigPtr and NodeGroupScalingConfigPtrOutput values. You can construct a concrete instance of `NodeGroupScalingConfigPtrInput` via:

        NodeGroupScalingConfigArgs{...}

or:

        nil

type NodeGroupScalingConfigPtrOutput

type NodeGroupScalingConfigPtrOutput struct{ *pulumi.OutputState }

func (NodeGroupScalingConfigPtrOutput) DesiredSize

Desired number of worker nodes.

func (NodeGroupScalingConfigPtrOutput) Elem

func (NodeGroupScalingConfigPtrOutput) ElementType

func (NodeGroupScalingConfigPtrOutput) MaxSize

Maximum number of worker nodes.

func (NodeGroupScalingConfigPtrOutput) MinSize

Minimum number of worker nodes.

func (NodeGroupScalingConfigPtrOutput) ToNodeGroupScalingConfigPtrOutput

func (o NodeGroupScalingConfigPtrOutput) ToNodeGroupScalingConfigPtrOutput() NodeGroupScalingConfigPtrOutput

func (NodeGroupScalingConfigPtrOutput) ToNodeGroupScalingConfigPtrOutputWithContext

func (o NodeGroupScalingConfigPtrOutput) ToNodeGroupScalingConfigPtrOutputWithContext(ctx context.Context) NodeGroupScalingConfigPtrOutput

type NodeGroupState

type NodeGroupState struct {
	// Type of Amazon Machine Image (AMI) associated with the EKS Node Group. See the [AWS documentation](https://docs.aws.amazon.com/eks/latest/APIReference/API_Nodegroup.html#AmazonEKS-Type-Nodegroup-amiType) for valid values. This provider will only perform drift detection if a configuration value is provided.
	AmiType pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the EKS Node Group.
	Arn pulumi.StringPtrInput
	// Type of capacity associated with the EKS Node Group. Valid values: `ON_DEMAND`, `SPOT`. This provider will only perform drift detection if a configuration value is provided.
	CapacityType pulumi.StringPtrInput
	// Name of the EKS Cluster.
	ClusterName pulumi.StringPtrInput
	// Disk size in GiB for worker nodes. Defaults to `50` for Windows, `20` all other node groups. The provider will only perform drift detection if a configuration value is provided.
	DiskSize pulumi.IntPtrInput
	// Force version update if existing pods are unable to be drained due to a pod disruption budget issue.
	ForceUpdateVersion pulumi.BoolPtrInput
	// List of instance types associated with the EKS Node Group. Defaults to `["t3.medium"]`. The provider will only perform drift detection if a configuration value is provided.
	InstanceTypes pulumi.StringArrayInput
	// Key-value map of Kubernetes labels. Only labels that are applied with the EKS API are managed by this argument. Other Kubernetes labels applied to the EKS Node Group will not be managed.
	Labels pulumi.StringMapInput
	// Configuration block with Launch Template settings. See `launchTemplate` below for details. Conflicts with `remoteAccess`.
	LaunchTemplate NodeGroupLaunchTemplatePtrInput
	// Name of the EKS Node Group. If omitted, the provider will assign a random, unique name. Conflicts with `nodeGroupNamePrefix`. The node group name can't be longer than 63 characters. It must start with a letter or digit, but can also include hyphens and underscores for the remaining characters.
	NodeGroupName pulumi.StringPtrInput
	// Creates a unique name beginning with the specified prefix. Conflicts with `nodeGroupName`.
	NodeGroupNamePrefix pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the IAM Role that provides permissions for the EKS Node Group.
	NodeRoleArn pulumi.StringPtrInput
	// AMI version of the EKS Node Group. Defaults to latest version for Kubernetes version.
	ReleaseVersion pulumi.StringPtrInput
	// Configuration block with remote access settings. See `remoteAccess` below for details. Conflicts with `launchTemplate`.
	RemoteAccess NodeGroupRemoteAccessPtrInput
	// List of objects containing information about underlying resources.
	Resources NodeGroupResourceArrayInput
	// Configuration block with scaling settings. See `scalingConfig` below for details.
	ScalingConfig NodeGroupScalingConfigPtrInput
	// Status of the EKS Node Group.
	Status pulumi.StringPtrInput
	// Identifiers of EC2 Subnets to associate with the EKS Node Group.
	//
	// The following arguments are optional:
	SubnetIds pulumi.StringArrayInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// The Kubernetes taints to be applied to the nodes in the node group. Maximum of 50 taints per node group. See taint below for details.
	Taints NodeGroupTaintArrayInput
	// Configuration block with update settings. See `updateConfig` below for details.
	UpdateConfig NodeGroupUpdateConfigPtrInput
	// Kubernetes version. Defaults to EKS Cluster Kubernetes version. The provider will only perform drift detection if a configuration value is provided.
	Version pulumi.StringPtrInput
}

func (NodeGroupState) ElementType

func (NodeGroupState) ElementType() reflect.Type

type NodeGroupTaint

type NodeGroupTaint struct {
	// The effect of the taint. Valid values: `NO_SCHEDULE`, `NO_EXECUTE`, `PREFER_NO_SCHEDULE`.
	Effect string `pulumi:"effect"`
	// The key of the taint. Maximum length of 63.
	Key string `pulumi:"key"`
	// The value of the taint. Maximum length of 63.
	Value *string `pulumi:"value"`
}

type NodeGroupTaintArgs

type NodeGroupTaintArgs struct {
	// The effect of the taint. Valid values: `NO_SCHEDULE`, `NO_EXECUTE`, `PREFER_NO_SCHEDULE`.
	Effect pulumi.StringInput `pulumi:"effect"`
	// The key of the taint. Maximum length of 63.
	Key pulumi.StringInput `pulumi:"key"`
	// The value of the taint. Maximum length of 63.
	Value pulumi.StringPtrInput `pulumi:"value"`
}

func (NodeGroupTaintArgs) ElementType

func (NodeGroupTaintArgs) ElementType() reflect.Type

func (NodeGroupTaintArgs) ToNodeGroupTaintOutput

func (i NodeGroupTaintArgs) ToNodeGroupTaintOutput() NodeGroupTaintOutput

func (NodeGroupTaintArgs) ToNodeGroupTaintOutputWithContext

func (i NodeGroupTaintArgs) ToNodeGroupTaintOutputWithContext(ctx context.Context) NodeGroupTaintOutput

type NodeGroupTaintArray

type NodeGroupTaintArray []NodeGroupTaintInput

func (NodeGroupTaintArray) ElementType

func (NodeGroupTaintArray) ElementType() reflect.Type

func (NodeGroupTaintArray) ToNodeGroupTaintArrayOutput

func (i NodeGroupTaintArray) ToNodeGroupTaintArrayOutput() NodeGroupTaintArrayOutput

func (NodeGroupTaintArray) ToNodeGroupTaintArrayOutputWithContext

func (i NodeGroupTaintArray) ToNodeGroupTaintArrayOutputWithContext(ctx context.Context) NodeGroupTaintArrayOutput

type NodeGroupTaintArrayInput

type NodeGroupTaintArrayInput interface {
	pulumi.Input

	ToNodeGroupTaintArrayOutput() NodeGroupTaintArrayOutput
	ToNodeGroupTaintArrayOutputWithContext(context.Context) NodeGroupTaintArrayOutput
}

NodeGroupTaintArrayInput is an input type that accepts NodeGroupTaintArray and NodeGroupTaintArrayOutput values. You can construct a concrete instance of `NodeGroupTaintArrayInput` via:

NodeGroupTaintArray{ NodeGroupTaintArgs{...} }

type NodeGroupTaintArrayOutput

type NodeGroupTaintArrayOutput struct{ *pulumi.OutputState }

func (NodeGroupTaintArrayOutput) ElementType

func (NodeGroupTaintArrayOutput) ElementType() reflect.Type

func (NodeGroupTaintArrayOutput) Index

func (NodeGroupTaintArrayOutput) ToNodeGroupTaintArrayOutput

func (o NodeGroupTaintArrayOutput) ToNodeGroupTaintArrayOutput() NodeGroupTaintArrayOutput

func (NodeGroupTaintArrayOutput) ToNodeGroupTaintArrayOutputWithContext

func (o NodeGroupTaintArrayOutput) ToNodeGroupTaintArrayOutputWithContext(ctx context.Context) NodeGroupTaintArrayOutput

type NodeGroupTaintInput

type NodeGroupTaintInput interface {
	pulumi.Input

	ToNodeGroupTaintOutput() NodeGroupTaintOutput
	ToNodeGroupTaintOutputWithContext(context.Context) NodeGroupTaintOutput
}

NodeGroupTaintInput is an input type that accepts NodeGroupTaintArgs and NodeGroupTaintOutput values. You can construct a concrete instance of `NodeGroupTaintInput` via:

NodeGroupTaintArgs{...}

type NodeGroupTaintOutput

type NodeGroupTaintOutput struct{ *pulumi.OutputState }

func (NodeGroupTaintOutput) Effect

The effect of the taint. Valid values: `NO_SCHEDULE`, `NO_EXECUTE`, `PREFER_NO_SCHEDULE`.

func (NodeGroupTaintOutput) ElementType

func (NodeGroupTaintOutput) ElementType() reflect.Type

func (NodeGroupTaintOutput) Key

The key of the taint. Maximum length of 63.

func (NodeGroupTaintOutput) ToNodeGroupTaintOutput

func (o NodeGroupTaintOutput) ToNodeGroupTaintOutput() NodeGroupTaintOutput

func (NodeGroupTaintOutput) ToNodeGroupTaintOutputWithContext

func (o NodeGroupTaintOutput) ToNodeGroupTaintOutputWithContext(ctx context.Context) NodeGroupTaintOutput

func (NodeGroupTaintOutput) Value

The value of the taint. Maximum length of 63.

type NodeGroupUpdateConfig

type NodeGroupUpdateConfig struct {
	// Desired max number of unavailable worker nodes during node group update.
	MaxUnavailable *int `pulumi:"maxUnavailable"`
	// Desired max percentage of unavailable worker nodes during node group update.
	MaxUnavailablePercentage *int `pulumi:"maxUnavailablePercentage"`
}

type NodeGroupUpdateConfigArgs

type NodeGroupUpdateConfigArgs struct {
	// Desired max number of unavailable worker nodes during node group update.
	MaxUnavailable pulumi.IntPtrInput `pulumi:"maxUnavailable"`
	// Desired max percentage of unavailable worker nodes during node group update.
	MaxUnavailablePercentage pulumi.IntPtrInput `pulumi:"maxUnavailablePercentage"`
}

func (NodeGroupUpdateConfigArgs) ElementType

func (NodeGroupUpdateConfigArgs) ElementType() reflect.Type

func (NodeGroupUpdateConfigArgs) ToNodeGroupUpdateConfigOutput

func (i NodeGroupUpdateConfigArgs) ToNodeGroupUpdateConfigOutput() NodeGroupUpdateConfigOutput

func (NodeGroupUpdateConfigArgs) ToNodeGroupUpdateConfigOutputWithContext

func (i NodeGroupUpdateConfigArgs) ToNodeGroupUpdateConfigOutputWithContext(ctx context.Context) NodeGroupUpdateConfigOutput

func (NodeGroupUpdateConfigArgs) ToNodeGroupUpdateConfigPtrOutput

func (i NodeGroupUpdateConfigArgs) ToNodeGroupUpdateConfigPtrOutput() NodeGroupUpdateConfigPtrOutput

func (NodeGroupUpdateConfigArgs) ToNodeGroupUpdateConfigPtrOutputWithContext

func (i NodeGroupUpdateConfigArgs) ToNodeGroupUpdateConfigPtrOutputWithContext(ctx context.Context) NodeGroupUpdateConfigPtrOutput

type NodeGroupUpdateConfigInput

type NodeGroupUpdateConfigInput interface {
	pulumi.Input

	ToNodeGroupUpdateConfigOutput() NodeGroupUpdateConfigOutput
	ToNodeGroupUpdateConfigOutputWithContext(context.Context) NodeGroupUpdateConfigOutput
}

NodeGroupUpdateConfigInput is an input type that accepts NodeGroupUpdateConfigArgs and NodeGroupUpdateConfigOutput values. You can construct a concrete instance of `NodeGroupUpdateConfigInput` via:

NodeGroupUpdateConfigArgs{...}

type NodeGroupUpdateConfigOutput

type NodeGroupUpdateConfigOutput struct{ *pulumi.OutputState }

func (NodeGroupUpdateConfigOutput) ElementType

func (NodeGroupUpdateConfigOutput) MaxUnavailable

func (o NodeGroupUpdateConfigOutput) MaxUnavailable() pulumi.IntPtrOutput

Desired max number of unavailable worker nodes during node group update.

func (NodeGroupUpdateConfigOutput) MaxUnavailablePercentage

func (o NodeGroupUpdateConfigOutput) MaxUnavailablePercentage() pulumi.IntPtrOutput

Desired max percentage of unavailable worker nodes during node group update.

func (NodeGroupUpdateConfigOutput) ToNodeGroupUpdateConfigOutput

func (o NodeGroupUpdateConfigOutput) ToNodeGroupUpdateConfigOutput() NodeGroupUpdateConfigOutput

func (NodeGroupUpdateConfigOutput) ToNodeGroupUpdateConfigOutputWithContext

func (o NodeGroupUpdateConfigOutput) ToNodeGroupUpdateConfigOutputWithContext(ctx context.Context) NodeGroupUpdateConfigOutput

func (NodeGroupUpdateConfigOutput) ToNodeGroupUpdateConfigPtrOutput

func (o NodeGroupUpdateConfigOutput) ToNodeGroupUpdateConfigPtrOutput() NodeGroupUpdateConfigPtrOutput

func (NodeGroupUpdateConfigOutput) ToNodeGroupUpdateConfigPtrOutputWithContext

func (o NodeGroupUpdateConfigOutput) ToNodeGroupUpdateConfigPtrOutputWithContext(ctx context.Context) NodeGroupUpdateConfigPtrOutput

type NodeGroupUpdateConfigPtrInput

type NodeGroupUpdateConfigPtrInput interface {
	pulumi.Input

	ToNodeGroupUpdateConfigPtrOutput() NodeGroupUpdateConfigPtrOutput
	ToNodeGroupUpdateConfigPtrOutputWithContext(context.Context) NodeGroupUpdateConfigPtrOutput
}

NodeGroupUpdateConfigPtrInput is an input type that accepts NodeGroupUpdateConfigArgs, NodeGroupUpdateConfigPtr and NodeGroupUpdateConfigPtrOutput values. You can construct a concrete instance of `NodeGroupUpdateConfigPtrInput` via:

        NodeGroupUpdateConfigArgs{...}

or:

        nil

type NodeGroupUpdateConfigPtrOutput

type NodeGroupUpdateConfigPtrOutput struct{ *pulumi.OutputState }

func (NodeGroupUpdateConfigPtrOutput) Elem

func (NodeGroupUpdateConfigPtrOutput) ElementType

func (NodeGroupUpdateConfigPtrOutput) MaxUnavailable

Desired max number of unavailable worker nodes during node group update.

func (NodeGroupUpdateConfigPtrOutput) MaxUnavailablePercentage

func (o NodeGroupUpdateConfigPtrOutput) MaxUnavailablePercentage() pulumi.IntPtrOutput

Desired max percentage of unavailable worker nodes during node group update.

func (NodeGroupUpdateConfigPtrOutput) ToNodeGroupUpdateConfigPtrOutput

func (o NodeGroupUpdateConfigPtrOutput) ToNodeGroupUpdateConfigPtrOutput() NodeGroupUpdateConfigPtrOutput

func (NodeGroupUpdateConfigPtrOutput) ToNodeGroupUpdateConfigPtrOutputWithContext

func (o NodeGroupUpdateConfigPtrOutput) ToNodeGroupUpdateConfigPtrOutputWithContext(ctx context.Context) NodeGroupUpdateConfigPtrOutput

type PodIdentityAssociation added in v6.13.2

type PodIdentityAssociation struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the association.
	AssociationArn pulumi.StringOutput `pulumi:"associationArn"`
	// The ID of the association.
	AssociationId pulumi.StringOutput `pulumi:"associationId"`
	// The name of the cluster to create the association in.
	ClusterName pulumi.StringOutput `pulumi:"clusterName"`
	// 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.
	Namespace pulumi.StringOutput `pulumi:"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 pulumi.StringOutput `pulumi:"roleArn"`
	// The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.
	//
	// The following arguments are optional:
	ServiceAccount pulumi.StringOutput `pulumi:"serviceAccount"`
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Resource for managing an AWS EKS (Elastic Kubernetes) Pod Identity Association.

Creates an EKS Pod Identity association between a service account in an Amazon EKS cluster and an IAM role with EKS Pod Identity. Use EKS Pod Identity to give temporary IAM credentials to pods and the credentials are rotated automatically.

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

If a pod uses a service account that has an association, Amazon EKS sets environment variables in the containers of the pod. The environment variables configure the Amazon Web Services SDKs, including the Command Line Interface, to use the EKS Pod Identity credentials.

Pod Identity is a simpler method than IAM roles for service accounts, as this method doesn’t use OIDC identity providers. Additionally, you can configure a role for Pod Identity once, and reuse it across clusters.

## Example Usage

### Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/eks"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		assumeRole, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
			Statements: []iam.GetPolicyDocumentStatement{
				{
					Effect: pulumi.StringRef("Allow"),
					Principals: []iam.GetPolicyDocumentStatementPrincipal{
						{
							Type: "Service",
							Identifiers: []string{
								"pods.eks.amazonaws.com",
							},
						},
					},
					Actions: []string{
						"sts:AssumeRole",
						"sts:TagSession",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		example, err := iam.NewRole(ctx, "example", &iam.RoleArgs{
			Name:             pulumi.String("eks-pod-identity-example"),
			AssumeRolePolicy: pulumi.String(assumeRole.Json),
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicyAttachment(ctx, "example_s3", &iam.RolePolicyAttachmentArgs{
			PolicyArn: pulumi.String("arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess"),
			Role:      example.Name,
		})
		if err != nil {
			return err
		}
		_, err = eks.NewPodIdentityAssociation(ctx, "example", &eks.PodIdentityAssociationArgs{
			ClusterName:    pulumi.Any(exampleAwsEksCluster.Name),
			Namespace:      pulumi.String("example"),
			ServiceAccount: pulumi.String("example-sa"),
			RoleArn:        example.Arn,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import EKS (Elastic Kubernetes) Pod Identity Association using the `cluster_name` and `association_id` separated by a comma (`,`). For example:

```sh $ pulumi import aws:eks/podIdentityAssociation:PodIdentityAssociation example example,a-12345678 ```

func GetPodIdentityAssociation added in v6.13.2

func GetPodIdentityAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PodIdentityAssociationState, opts ...pulumi.ResourceOption) (*PodIdentityAssociation, error)

GetPodIdentityAssociation gets an existing PodIdentityAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPodIdentityAssociation added in v6.13.2

func NewPodIdentityAssociation(ctx *pulumi.Context,
	name string, args *PodIdentityAssociationArgs, opts ...pulumi.ResourceOption) (*PodIdentityAssociation, error)

NewPodIdentityAssociation registers a new resource with the given unique name, arguments, and options.

func (*PodIdentityAssociation) ElementType added in v6.13.2

func (*PodIdentityAssociation) ElementType() reflect.Type

func (*PodIdentityAssociation) ToPodIdentityAssociationOutput added in v6.13.2

func (i *PodIdentityAssociation) ToPodIdentityAssociationOutput() PodIdentityAssociationOutput

func (*PodIdentityAssociation) ToPodIdentityAssociationOutputWithContext added in v6.13.2

func (i *PodIdentityAssociation) ToPodIdentityAssociationOutputWithContext(ctx context.Context) PodIdentityAssociationOutput

type PodIdentityAssociationArgs added in v6.13.2

type PodIdentityAssociationArgs struct {
	// The name of the cluster to create the association in.
	ClusterName pulumi.StringInput
	// 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.
	Namespace pulumi.StringInput
	// 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 pulumi.StringInput
	// The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.
	//
	// The following arguments are optional:
	ServiceAccount pulumi.StringInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a PodIdentityAssociation resource.

func (PodIdentityAssociationArgs) ElementType added in v6.13.2

func (PodIdentityAssociationArgs) ElementType() reflect.Type

type PodIdentityAssociationArray added in v6.13.2

type PodIdentityAssociationArray []PodIdentityAssociationInput

func (PodIdentityAssociationArray) ElementType added in v6.13.2

func (PodIdentityAssociationArray) ToPodIdentityAssociationArrayOutput added in v6.13.2

func (i PodIdentityAssociationArray) ToPodIdentityAssociationArrayOutput() PodIdentityAssociationArrayOutput

func (PodIdentityAssociationArray) ToPodIdentityAssociationArrayOutputWithContext added in v6.13.2

func (i PodIdentityAssociationArray) ToPodIdentityAssociationArrayOutputWithContext(ctx context.Context) PodIdentityAssociationArrayOutput

type PodIdentityAssociationArrayInput added in v6.13.2

type PodIdentityAssociationArrayInput interface {
	pulumi.Input

	ToPodIdentityAssociationArrayOutput() PodIdentityAssociationArrayOutput
	ToPodIdentityAssociationArrayOutputWithContext(context.Context) PodIdentityAssociationArrayOutput
}

PodIdentityAssociationArrayInput is an input type that accepts PodIdentityAssociationArray and PodIdentityAssociationArrayOutput values. You can construct a concrete instance of `PodIdentityAssociationArrayInput` via:

PodIdentityAssociationArray{ PodIdentityAssociationArgs{...} }

type PodIdentityAssociationArrayOutput added in v6.13.2

type PodIdentityAssociationArrayOutput struct{ *pulumi.OutputState }

func (PodIdentityAssociationArrayOutput) ElementType added in v6.13.2

func (PodIdentityAssociationArrayOutput) Index added in v6.13.2

func (PodIdentityAssociationArrayOutput) ToPodIdentityAssociationArrayOutput added in v6.13.2

func (o PodIdentityAssociationArrayOutput) ToPodIdentityAssociationArrayOutput() PodIdentityAssociationArrayOutput

func (PodIdentityAssociationArrayOutput) ToPodIdentityAssociationArrayOutputWithContext added in v6.13.2

func (o PodIdentityAssociationArrayOutput) ToPodIdentityAssociationArrayOutputWithContext(ctx context.Context) PodIdentityAssociationArrayOutput

type PodIdentityAssociationInput added in v6.13.2

type PodIdentityAssociationInput interface {
	pulumi.Input

	ToPodIdentityAssociationOutput() PodIdentityAssociationOutput
	ToPodIdentityAssociationOutputWithContext(ctx context.Context) PodIdentityAssociationOutput
}

type PodIdentityAssociationMap added in v6.13.2

type PodIdentityAssociationMap map[string]PodIdentityAssociationInput

func (PodIdentityAssociationMap) ElementType added in v6.13.2

func (PodIdentityAssociationMap) ElementType() reflect.Type

func (PodIdentityAssociationMap) ToPodIdentityAssociationMapOutput added in v6.13.2

func (i PodIdentityAssociationMap) ToPodIdentityAssociationMapOutput() PodIdentityAssociationMapOutput

func (PodIdentityAssociationMap) ToPodIdentityAssociationMapOutputWithContext added in v6.13.2

func (i PodIdentityAssociationMap) ToPodIdentityAssociationMapOutputWithContext(ctx context.Context) PodIdentityAssociationMapOutput

type PodIdentityAssociationMapInput added in v6.13.2

type PodIdentityAssociationMapInput interface {
	pulumi.Input

	ToPodIdentityAssociationMapOutput() PodIdentityAssociationMapOutput
	ToPodIdentityAssociationMapOutputWithContext(context.Context) PodIdentityAssociationMapOutput
}

PodIdentityAssociationMapInput is an input type that accepts PodIdentityAssociationMap and PodIdentityAssociationMapOutput values. You can construct a concrete instance of `PodIdentityAssociationMapInput` via:

PodIdentityAssociationMap{ "key": PodIdentityAssociationArgs{...} }

type PodIdentityAssociationMapOutput added in v6.13.2

type PodIdentityAssociationMapOutput struct{ *pulumi.OutputState }

func (PodIdentityAssociationMapOutput) ElementType added in v6.13.2

func (PodIdentityAssociationMapOutput) MapIndex added in v6.13.2

func (PodIdentityAssociationMapOutput) ToPodIdentityAssociationMapOutput added in v6.13.2

func (o PodIdentityAssociationMapOutput) ToPodIdentityAssociationMapOutput() PodIdentityAssociationMapOutput

func (PodIdentityAssociationMapOutput) ToPodIdentityAssociationMapOutputWithContext added in v6.13.2

func (o PodIdentityAssociationMapOutput) ToPodIdentityAssociationMapOutputWithContext(ctx context.Context) PodIdentityAssociationMapOutput

type PodIdentityAssociationOutput added in v6.13.2

type PodIdentityAssociationOutput struct{ *pulumi.OutputState }

func (PodIdentityAssociationOutput) AssociationArn added in v6.13.2

The Amazon Resource Name (ARN) of the association.

func (PodIdentityAssociationOutput) AssociationId added in v6.13.2

The ID of the association.

func (PodIdentityAssociationOutput) ClusterName added in v6.13.2

The name of the cluster to create the association in.

func (PodIdentityAssociationOutput) ElementType added in v6.13.2

func (PodIdentityAssociationOutput) Namespace added in v6.13.2

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.

func (PodIdentityAssociationOutput) RoleArn added in v6.13.2

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.

func (PodIdentityAssociationOutput) ServiceAccount added in v6.13.2

The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.

The following arguments are optional:

func (PodIdentityAssociationOutput) Tags added in v6.13.2

Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (PodIdentityAssociationOutput) TagsAll deprecated added in v6.13.2

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (PodIdentityAssociationOutput) ToPodIdentityAssociationOutput added in v6.13.2

func (o PodIdentityAssociationOutput) ToPodIdentityAssociationOutput() PodIdentityAssociationOutput

func (PodIdentityAssociationOutput) ToPodIdentityAssociationOutputWithContext added in v6.13.2

func (o PodIdentityAssociationOutput) ToPodIdentityAssociationOutputWithContext(ctx context.Context) PodIdentityAssociationOutput

type PodIdentityAssociationState added in v6.13.2

type PodIdentityAssociationState struct {
	// The Amazon Resource Name (ARN) of the association.
	AssociationArn pulumi.StringPtrInput
	// The ID of the association.
	AssociationId pulumi.StringPtrInput
	// The name of the cluster to create the association in.
	ClusterName pulumi.StringPtrInput
	// 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.
	Namespace pulumi.StringPtrInput
	// 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 pulumi.StringPtrInput
	// The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.
	//
	// The following arguments are optional:
	ServiceAccount pulumi.StringPtrInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (PodIdentityAssociationState) ElementType added in v6.13.2

Jump to

Keyboard shortcuts

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