HelmChartProps

class aws_cdk.aws_eks.HelmChartProps(*, atomic=None, chart=None, chart_asset=None, create_namespace=None, namespace=None, release=None, removal_policy=None, repository=None, skip_crds=None, timeout=None, values=None, version=None, wait=None, cluster)

Bases: HelmChartOptions

Helm Chart properties.

Parameters:
  • atomic (Optional[bool]) – Whether or not Helm should treat this operation as atomic; if set, upgrade process rolls back changes made in case of failed upgrade. The –wait flag will be set automatically if –atomic is used. Default: false

  • chart (Optional[str]) – The name of the chart. Either this or chartAsset must be specified. Default: - No chart name. Implies chartAsset is used.

  • chart_asset (Optional[Asset]) – The chart in the form of an asset. Either this or chart must be specified. Default: - No chart asset. Implies chart is used.

  • create_namespace (Optional[bool]) – create namespace if not exist. Default: true

  • namespace (Optional[str]) – The Kubernetes namespace scope of the requests. Default: default

  • release (Optional[str]) – The name of the release. Default: - If no release name is given, it will use the last 53 characters of the node’s unique id.

  • removal_policy (Optional[RemovalPolicy]) – The removal policy applied to the custom resource that manages the Helm chart. The removal policy controls what happens to the resource if it stops being managed by CloudFormation. This can happen in one of three situations: - The resource is removed from the template, so CloudFormation stops managing it - A change to the resource is made that requires it to be replaced, so CloudFormation stops managing it - The stack is deleted, so CloudFormation stops managing all resources in it Default: RemovalPolicy.DESTROY

  • repository (Optional[str]) – The repository which contains the chart. For example: https://charts.helm.sh/stable/ Default: - No repository will be used, which means that the chart needs to be an absolute URL.

  • skip_crds (Optional[bool]) – if set, no CRDs will be installed. Default: - CRDs are installed if not already present

  • timeout (Optional[Duration]) – Amount of time to wait for any individual Kubernetes operation. Maximum 15 minutes. Default: Duration.minutes(5)

  • values (Optional[Mapping[str, Any]]) – The values to be used by the chart. For nested values use a nested dictionary. For example: values: { installationCRDs: true, webhook: { port: 9443 } } Default: - No values are provided to the chart.

  • version (Optional[str]) – The chart version to install. Default: - If this is not specified, the latest version is installed

  • wait (Optional[bool]) – Whether or not Helm should wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment, StatefulSet, or ReplicaSet are in a ready state before marking the release as successful. Default: - Helm will not wait before marking release as successful

  • cluster (ICluster) – The EKS cluster to apply this configuration to. [disable-awslint:ref-via-interface]

ExampleMetadata:

infused

Example:

# cluster: eks.Cluster

# option 1: use a construct
eks.HelmChart(self, "MyOCIChart",
    cluster=cluster,
    chart="some-chart",
    repository="oci://${ACCOUNT_ID}.dkr.ecr.${ACCOUNT_REGION}.amazonaws.com/${REPO_NAME}",
    namespace="oci",
    version="0.0.1"
)

Attributes

atomic

Whether or not Helm should treat this operation as atomic;

if set, upgrade process rolls back changes made in case of failed upgrade. The –wait flag will be set automatically if –atomic is used.

Default:

false

chart

The name of the chart.

Either this or chartAsset must be specified.

Default:
  • No chart name. Implies chartAsset is used.

chart_asset

The chart in the form of an asset.

Either this or chart must be specified.

Default:
  • No chart asset. Implies chart is used.

cluster

The EKS cluster to apply this configuration to.

[disable-awslint:ref-via-interface]

create_namespace

create namespace if not exist.

Default:

true

namespace

The Kubernetes namespace scope of the requests.

Default:

default

release

The name of the release.

Default:
  • If no release name is given, it will use the last 53 characters of the node’s unique id.

removal_policy

The removal policy applied to the custom resource that manages the Helm chart.

The removal policy controls what happens to the resource if it stops being managed by CloudFormation. This can happen in one of three situations:

  • The resource is removed from the template, so CloudFormation stops managing it

  • A change to the resource is made that requires it to be replaced, so CloudFormation stops managing it

  • The stack is deleted, so CloudFormation stops managing all resources in it

Default:

RemovalPolicy.DESTROY

repository

The repository which contains the chart.

For example: https://charts.helm.sh/stable/

Default:
  • No repository will be used, which means that the chart needs to be an absolute URL.

skip_crds

if set, no CRDs will be installed.

Default:
  • CRDs are installed if not already present

timeout

Amount of time to wait for any individual Kubernetes operation.

Maximum 15 minutes.

Default:

Duration.minutes(5)

values

The values to be used by the chart.

For nested values use a nested dictionary. For example: values: { installationCRDs: true, webhook: { port: 9443 } }

Default:
  • No values are provided to the chart.

version

The chart version to install.

Default:
  • If this is not specified, the latest version is installed

wait

Whether or not Helm should wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment, StatefulSet, or ReplicaSet are in a ready state before marking the release as successful.

Default:
  • Helm will not wait before marking release as successful