CfnCapabilityProps

class aws_cdk.aws_eks.CfnCapabilityProps(*, capability_name, cluster_name, delete_propagation_policy, role_arn, type, configuration=None, tags=None)

Bases: object

Properties for defining a CfnCapability.

Parameters:
  • capability_name (str) – A unique name for the capability. The name must be unique within your cluster and can contain alphanumeric characters, hyphens, and underscores.

  • cluster_name (str) – The name of the EKS cluster where you want to create the capability.

  • delete_propagation_policy (str) – Specifies how Kubernetes resources managed by the capability should be handled when the capability is deleted. Currently, the only supported value is RETAIN which retains all Kubernetes resources managed by the capability when the capability is deleted.

  • role_arn (str) – The Amazon Resource Name (ARN) of the IAM role that the capability uses to interact with AWS services. This role must have a trust policy that allows the EKS service principal to assume it, and it must have the necessary permissions for the capability type you’re creating.

  • type (str) – The type of capability to create. Valid values are: ACK (AWS Controllers for Kubernetes, which lets you manage AWS resources directly from Kubernetes), ARGOCD (Argo CD for GitOps-based continuous delivery), or KRO (Kube Resource Orchestrator for composing and managing custom Kubernetes resources).

  • configuration (Union[IResolvable, CapabilityConfigurationProperty, Dict[str, Any], None]) – Configuration settings for a capability. The structure of this object varies depending on the capability type.

  • tags (Optional[Sequence[Union[CfnTag, Dict[str, Any]]]]) – An array of key-value pairs to apply to this resource.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_eks as eks

cfn_capability_props = eks.CfnCapabilityProps(
    capability_name="capabilityName",
    cluster_name="clusterName",
    delete_propagation_policy="deletePropagationPolicy",
    role_arn="roleArn",
    type="type",

    # the properties below are optional
    configuration=eks.CfnCapability.CapabilityConfigurationProperty(
        argo_cd=eks.CfnCapability.ArgoCdProperty(
            aws_idc=eks.CfnCapability.AwsIdcProperty(
                idc_instance_arn="idcInstanceArn",

                # the properties below are optional
                idc_managed_application_arn="idcManagedApplicationArn",
                idc_region="idcRegion"
            ),

            # the properties below are optional
            namespace="namespace",
            network_access=eks.CfnCapability.NetworkAccessProperty(
                vpce_ids=["vpceIds"]
            ),
            rbac_role_mappings=[eks.CfnCapability.ArgoCdRoleMappingProperty(
                identities=[eks.CfnCapability.SsoIdentityProperty(
                    id="id",
                    type="type"
                )],
                role="role"
            )],
            server_url="serverUrl"
        )
    ),
    tags=[CfnTag(
        key="key",
        value="value"
    )]
)

Attributes

capability_name

A unique name for the capability.

The name must be unique within your cluster and can contain alphanumeric characters, hyphens, and underscores.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html#cfn-eks-capability-capabilityname

cluster_name

The name of the EKS cluster where you want to create the capability.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html#cfn-eks-capability-clustername

configuration

Configuration settings for a capability.

The structure of this object varies depending on the capability type.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html#cfn-eks-capability-configuration

delete_propagation_policy

Specifies how Kubernetes resources managed by the capability should be handled when the capability is deleted.

Currently, the only supported value is RETAIN which retains all Kubernetes resources managed by the capability when the capability is deleted.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html#cfn-eks-capability-deletepropagationpolicy

role_arn

The Amazon Resource Name (ARN) of the IAM role that the capability uses to interact with AWS services.

This role must have a trust policy that allows the EKS service principal to assume it, and it must have the necessary permissions for the capability type you’re creating.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html#cfn-eks-capability-rolearn

tags

An array of key-value pairs to apply to this resource.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html#cfn-eks-capability-tags

type

The type of capability to create.

Valid values are: ACK (AWS Controllers for Kubernetes, which lets you manage AWS resources directly from Kubernetes), ARGOCD (Argo CD for GitOps-based continuous delivery), or KRO (Kube Resource Orchestrator for composing and managing custom Kubernetes resources).

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-capability.html#cfn-eks-capability-type