Class CfnAddonProps.Builder

java.lang.Object
software.amazon.awscdk.services.eks.CfnAddonProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnAddonProps>
Enclosing interface:
CfnAddonProps

@Stability(Stable) public static final class CfnAddonProps.Builder extends Object implements software.amazon.jsii.Builder<CfnAddonProps>
A builder for CfnAddonProps
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • addonName

      @Stability(Stable) public CfnAddonProps.Builder addonName(String addonName)
      Parameters:
      addonName - The name of the add-on. This parameter is required.
      Returns:
      this
    • clusterName

      @Stability(Stable) public CfnAddonProps.Builder clusterName(String clusterName)
      Parameters:
      clusterName - The name of your cluster. This parameter is required.
      Returns:
      this
    • addonVersion

      @Stability(Stable) public CfnAddonProps.Builder addonVersion(String addonVersion)
      Parameters:
      addonVersion - The version of the add-on.
      Returns:
      this
    • configurationValues

      @Stability(Stable) public CfnAddonProps.Builder configurationValues(String configurationValues)
      Parameters:
      configurationValues - The configuration values that you provided.
      Returns:
      this
    • podIdentityAssociations

      @Stability(Stable) public CfnAddonProps.Builder podIdentityAssociations(IResolvable podIdentityAssociations)
      Parameters:
      podIdentityAssociations - An array of Pod Identity Assocations owned by the Addon. Each EKS Pod Identity association maps a role to a service account in a namespace in the cluster.

      For more information, see Attach an IAM Role to an Amazon EKS add-on using Pod Identity in the EKS User Guide.

      Returns:
      this
    • podIdentityAssociations

      @Stability(Stable) public CfnAddonProps.Builder podIdentityAssociations(List<? extends Object> podIdentityAssociations)
      Parameters:
      podIdentityAssociations - An array of Pod Identity Assocations owned by the Addon. Each EKS Pod Identity association maps a role to a service account in a namespace in the cluster.

      For more information, see Attach an IAM Role to an Amazon EKS add-on using Pod Identity in the EKS User Guide.

      Returns:
      this
    • preserveOnDelete

      @Stability(Stable) public CfnAddonProps.Builder preserveOnDelete(Boolean preserveOnDelete)
      Parameters:
      preserveOnDelete - Specifying this option preserves the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on. If an IAM account is associated with the add-on, it isn't removed.
      Returns:
      this
    • preserveOnDelete

      @Stability(Stable) public CfnAddonProps.Builder preserveOnDelete(IResolvable preserveOnDelete)
      Parameters:
      preserveOnDelete - Specifying this option preserves the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on. If an IAM account is associated with the add-on, it isn't removed.
      Returns:
      this
    • resolveConflicts

      @Stability(Stable) public CfnAddonProps.Builder resolveConflicts(String resolveConflicts)
      Parameters:
      resolveConflicts - How to resolve field value conflicts for an Amazon EKS add-on. Conflicts are handled based on the value you choose:

      • None – If the self-managed version of the add-on is installed on your cluster, Amazon EKS doesn't change the value. Creation of the add-on might fail.
      • Overwrite – If the self-managed version of the add-on is installed on your cluster and the Amazon EKS default value is different than the existing value, Amazon EKS changes the value to the Amazon EKS default value.
      • Preserve – This is similar to the NONE option. If the self-managed version of the add-on is installed on your cluster Amazon EKS doesn't change the add-on resource properties. Creation of the add-on might fail if conflicts are detected. This option works differently during the update operation. For more information, see UpdateAddon .

      If you don't currently have the self-managed version of the add-on installed on your cluster, the Amazon EKS add-on is installed. Amazon EKS sets all values to default values, regardless of the option that you specify.

      Returns:
      this
    • serviceAccountRoleArn

      @Stability(Stable) public CfnAddonProps.Builder serviceAccountRoleArn(String serviceAccountRoleArn)
      Parameters:
      serviceAccountRoleArn - 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 in the Amazon EKS User Guide .

      To specify an existing IAM role, you must have an IAM OpenID Connect (OIDC) provider created for your cluster. For more information, see Enabling IAM roles for service accounts on your cluster in the Amazon EKS User Guide .

      Returns:
      this
    • tags

      @Stability(Stable) public CfnAddonProps.Builder tags(List<? extends CfnTag> tags)
      Sets the value of CfnAddonProps.getTags()
      Parameters:
      tags - The metadata that you apply to the add-on to assist with categorization and organization. Each tag consists of a key and an optional value, both of which you define. Add-on tags do not propagate to any other resources associated with the cluster.
      Returns:
      this
    • build

      @Stability(Stable) public CfnAddonProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnAddonProps>
      Returns:
      a new instance of CfnAddonProps
      Throws:
      NullPointerException - if any required attribute was not provided