aws-cdk-lib 2.154.1__py3-none-any.whl → 2.156.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (37) hide show
  1. aws_cdk/__init__.py +2 -2
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.154.1.jsii.tgz → aws-cdk-lib@2.156.0.jsii.tgz} +0 -0
  4. aws_cdk/assertions/__init__.py +17 -17
  5. aws_cdk/aws_bedrock/__init__.py +22 -4
  6. aws_cdk/aws_cloudfront/__init__.py +654 -59
  7. aws_cdk/aws_cloudfront_origins/__init__.py +2034 -91
  8. aws_cdk/aws_codebuild/__init__.py +349 -8
  9. aws_cdk/aws_docdb/__init__.py +78 -6
  10. aws_cdk/aws_ec2/__init__.py +250 -61
  11. aws_cdk/aws_ecs/__init__.py +18 -14
  12. aws_cdk/aws_ecs_patterns/__init__.py +129 -11
  13. aws_cdk/aws_eks/__init__.py +74 -8
  14. aws_cdk/aws_elasticloadbalancingv2/__init__.py +22 -46
  15. aws_cdk/aws_events/__init__.py +40 -14
  16. aws_cdk/aws_events_targets/__init__.py +357 -0
  17. aws_cdk/aws_iam/__init__.py +7 -8
  18. aws_cdk/aws_ivs/__init__.py +10 -8
  19. aws_cdk/aws_kms/__init__.py +89 -10
  20. aws_cdk/aws_lambda/__init__.py +38 -23
  21. aws_cdk/aws_lambda_event_sources/__init__.py +27 -0
  22. aws_cdk/aws_rds/__init__.py +12 -0
  23. aws_cdk/aws_s3/__init__.py +13 -14
  24. aws_cdk/aws_secretsmanager/__init__.py +3 -2
  25. aws_cdk/aws_ses/__init__.py +7 -7
  26. aws_cdk/aws_ssmcontacts/__init__.py +12 -0
  27. aws_cdk/aws_stepfunctions/__init__.py +12 -14
  28. aws_cdk/aws_stepfunctions_tasks/__init__.py +178 -41
  29. aws_cdk/aws_synthetics/__init__.py +26 -0
  30. aws_cdk/custom_resources/__init__.py +106 -1
  31. aws_cdk/cx_api/__init__.py +16 -0
  32. {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.156.0.dist-info}/METADATA +1 -1
  33. {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.156.0.dist-info}/RECORD +37 -37
  34. {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.156.0.dist-info}/LICENSE +0 -0
  35. {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.156.0.dist-info}/NOTICE +0 -0
  36. {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.156.0.dist-info}/WHEEL +0 -0
  37. {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.156.0.dist-info}/top_level.txt +0 -0
@@ -30416,7 +30416,7 @@ class ListenerConfig(
30416
30416
  '''Create a config for adding target group to NLB listener.
30417
30417
 
30418
30418
  :param listener: -
30419
- :param port: The port on which the listener listens for requests. Default: Determined from protocol if known
30419
+ :param port: The port on which the target receives traffic. Default: Determined from protocol if known
30420
30420
  :param deregistration_delay: The amount of time for Elastic Load Balancing to wait before deregistering a target. The range is 0-3600 seconds. Default: Duration.minutes(5)
30421
30421
  :param health_check: Health check configuration. Default: - The default value for each property in this configuration varies depending on the target.
30422
30422
  :param preserve_client_ip: Indicates whether client IP preservation is enabled. Default: false if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, true.
@@ -37605,24 +37605,28 @@ class Cluster(
37605
37605
 
37606
37606
  Example::
37607
37607
 
37608
- from aws_cdk import Tags
37609
-
37608
+ vpc = ec2.Vpc.from_lookup(self, "Vpc",
37609
+ is_default=True
37610
+ )
37611
+ cluster = ecs.Cluster(self, "ECSCluster", vpc=vpc)
37610
37612
 
37611
- vpc = ec2.Vpc(self, "Vpc", max_azs=1)
37612
- cluster = ecs.Cluster(self, "EcsCluster", vpc=vpc)
37613
- task_definition = ecs.FargateTaskDefinition(self, "TaskDef",
37614
- memory_limit_mi_b=512,
37615
- cpu=256
37613
+ task_definition = ecs.TaskDefinition(self, "TD",
37614
+ compatibility=ecs.Compatibility.FARGATE,
37615
+ cpu="256",
37616
+ memory_mi_b="512"
37616
37617
  )
37617
- task_definition.add_container("WebContainer",
37618
- image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
37618
+
37619
+ task_definition.add_container("TheContainer",
37620
+ image=ecs.ContainerImage.from_registry("foo/bar")
37619
37621
  )
37620
- Tags.of(task_definition).add("my-tag", "my-tag-value")
37621
- scheduled_fargate_task = ecs_patterns.ScheduledFargateTask(self, "ScheduledFargateTask",
37622
+
37623
+ run_task = tasks.EcsRunTask(self, "Run",
37624
+ integration_pattern=sfn.IntegrationPattern.RUN_JOB,
37622
37625
  cluster=cluster,
37623
37626
  task_definition=task_definition,
37624
- schedule=appscaling.Schedule.expression("rate(1 minute)"),
37625
- propagate_tags=ecs.PropagatedTagSource.TASK_DEFINITION
37627
+ launch_target=tasks.EcsFargateLaunchTarget(),
37628
+ cpu="1024",
37629
+ memory_mi_b="1048"
37626
37630
  )
37627
37631
  '''
37628
37632
 
@@ -1124,7 +1124,46 @@ queue_processing_fargate_service = ecs_patterns.NetworkLoadBalancedFargateServic
1124
1124
  )
1125
1125
  ```
1126
1126
 
1127
- ### Use dualstack NLB
1127
+ ### Use dualstack Load Balancer
1128
+
1129
+ You can use dualstack IP address type for Application Load Balancer and Network Load Balancer.
1130
+
1131
+ To use dualstack IP address type, you must have associated IPv6 CIDR blocks with the VPC and subnets and set the `ipAddressType` to `IpAddressType.DUAL_STACK` when creating the load balancer.
1132
+
1133
+ ### Application Load Balancer
1134
+
1135
+ You can use dualstack Application Load Balancer for Fargate and EC2 services.
1136
+
1137
+ ```python
1138
+ import aws_cdk.aws_elasticloadbalancingv2 as elbv2
1139
+
1140
+
1141
+ # The VPC and subnet must have associated IPv6 CIDR blocks.
1142
+ vpc = ec2.Vpc(self, "Vpc",
1143
+ ip_protocol=ec2.IpProtocol.DUAL_STACK
1144
+ )
1145
+ cluster = ecs.Cluster(self, "EcsCluster", vpc=vpc)
1146
+
1147
+ service = ecs_patterns.ApplicationLoadBalancedFargateService(self, "myService",
1148
+ cluster=cluster,
1149
+ task_image_options=ecsPatterns.ApplicationLoadBalancedTaskImageOptions(
1150
+ image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
1151
+ ),
1152
+ ip_address_type=elbv2.IpAddressType.DUAL_STACK
1153
+ )
1154
+
1155
+ application_load_balanced_ec2_service = ecs_patterns.ApplicationLoadBalancedEc2Service(self, "myService",
1156
+ cluster=cluster,
1157
+ task_image_options=ecsPatterns.ApplicationLoadBalancedTaskImageOptions(
1158
+ image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
1159
+ ),
1160
+ ip_address_type=elbv2.IpAddressType.DUAL_STACK
1161
+ )
1162
+ ```
1163
+
1164
+ ### Network Load Balancer
1165
+
1166
+ You can use dualstack Network Load Balancer for Fargate and EC2 services.
1128
1167
 
1129
1168
  ```python
1130
1169
  import aws_cdk.aws_elasticloadbalancingv2 as elbv2
@@ -1391,6 +1430,7 @@ class ApplicationLoadBalancedServiceBase(
1391
1430
  enable_execute_command: typing.Optional[builtins.bool] = None,
1392
1431
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
1393
1432
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
1433
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
1394
1434
  listener_port: typing.Optional[jsii.Number] = None,
1395
1435
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
1396
1436
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -1426,6 +1466,7 @@ class ApplicationLoadBalancedServiceBase(
1426
1466
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
1427
1467
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
1428
1468
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
1469
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
1429
1470
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
1430
1471
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
1431
1472
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -1462,6 +1503,7 @@ class ApplicationLoadBalancedServiceBase(
1462
1503
  enable_execute_command=enable_execute_command,
1463
1504
  health_check_grace_period=health_check_grace_period,
1464
1505
  idle_timeout=idle_timeout,
1506
+ ip_address_type=ip_address_type,
1465
1507
  listener_port=listener_port,
1466
1508
  load_balancer=load_balancer,
1467
1509
  load_balancer_name=load_balancer_name,
@@ -1592,6 +1634,7 @@ typing.cast(typing.Any, ApplicationLoadBalancedServiceBase).__jsii_proxy_class__
1592
1634
  "enable_execute_command": "enableExecuteCommand",
1593
1635
  "health_check_grace_period": "healthCheckGracePeriod",
1594
1636
  "idle_timeout": "idleTimeout",
1637
+ "ip_address_type": "ipAddressType",
1595
1638
  "listener_port": "listenerPort",
1596
1639
  "load_balancer": "loadBalancer",
1597
1640
  "load_balancer_name": "loadBalancerName",
@@ -1628,6 +1671,7 @@ class ApplicationLoadBalancedServiceBaseProps:
1628
1671
  enable_execute_command: typing.Optional[builtins.bool] = None,
1629
1672
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
1630
1673
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
1674
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
1631
1675
  listener_port: typing.Optional[jsii.Number] = None,
1632
1676
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
1633
1677
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -1661,6 +1705,7 @@ class ApplicationLoadBalancedServiceBaseProps:
1661
1705
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
1662
1706
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
1663
1707
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
1708
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
1664
1709
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
1665
1710
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
1666
1711
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -1740,6 +1785,7 @@ class ApplicationLoadBalancedServiceBaseProps:
1740
1785
  enable_execute_command=False,
1741
1786
  health_check_grace_period=cdk.Duration.minutes(30),
1742
1787
  idle_timeout=cdk.Duration.minutes(30),
1788
+ ip_address_type=elbv2.IpAddressType.IPV4,
1743
1789
  listener_port=123,
1744
1790
  load_balancer=application_load_balancer,
1745
1791
  load_balancer_name="loadBalancerName",
@@ -1804,6 +1850,7 @@ class ApplicationLoadBalancedServiceBaseProps:
1804
1850
  check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
1805
1851
  check_type(argname="argument health_check_grace_period", value=health_check_grace_period, expected_type=type_hints["health_check_grace_period"])
1806
1852
  check_type(argname="argument idle_timeout", value=idle_timeout, expected_type=type_hints["idle_timeout"])
1853
+ check_type(argname="argument ip_address_type", value=ip_address_type, expected_type=type_hints["ip_address_type"])
1807
1854
  check_type(argname="argument listener_port", value=listener_port, expected_type=type_hints["listener_port"])
1808
1855
  check_type(argname="argument load_balancer", value=load_balancer, expected_type=type_hints["load_balancer"])
1809
1856
  check_type(argname="argument load_balancer_name", value=load_balancer_name, expected_type=type_hints["load_balancer_name"])
@@ -1848,6 +1895,8 @@ class ApplicationLoadBalancedServiceBaseProps:
1848
1895
  self._values["health_check_grace_period"] = health_check_grace_period
1849
1896
  if idle_timeout is not None:
1850
1897
  self._values["idle_timeout"] = idle_timeout
1898
+ if ip_address_type is not None:
1899
+ self._values["ip_address_type"] = ip_address_type
1851
1900
  if listener_port is not None:
1852
1901
  self._values["listener_port"] = listener_port
1853
1902
  if load_balancer is not None:
@@ -2027,6 +2076,15 @@ class ApplicationLoadBalancedServiceBaseProps:
2027
2076
  result = self._values.get("idle_timeout")
2028
2077
  return typing.cast(typing.Optional[_Duration_4839e8c3], result)
2029
2078
 
2079
+ @builtins.property
2080
+ def ip_address_type(self) -> typing.Optional[_IpAddressType_c43b240e]:
2081
+ '''The type of IP address to use.
2082
+
2083
+ :default: - IpAddressType.IPV4
2084
+ '''
2085
+ result = self._values.get("ip_address_type")
2086
+ return typing.cast(typing.Optional[_IpAddressType_c43b240e], result)
2087
+
2030
2088
  @builtins.property
2031
2089
  def listener_port(self) -> typing.Optional[jsii.Number]:
2032
2090
  '''Listener port of the application load balancer that will serve traffic to the service.
@@ -7346,6 +7404,7 @@ class ApplicationLoadBalancedEc2Service(
7346
7404
  enable_execute_command: typing.Optional[builtins.bool] = None,
7347
7405
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
7348
7406
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
7407
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
7349
7408
  listener_port: typing.Optional[jsii.Number] = None,
7350
7409
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
7351
7410
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -7387,6 +7446,7 @@ class ApplicationLoadBalancedEc2Service(
7387
7446
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
7388
7447
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
7389
7448
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
7449
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
7390
7450
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
7391
7451
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
7392
7452
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -7429,6 +7489,7 @@ class ApplicationLoadBalancedEc2Service(
7429
7489
  enable_execute_command=enable_execute_command,
7430
7490
  health_check_grace_period=health_check_grace_period,
7431
7491
  idle_timeout=idle_timeout,
7492
+ ip_address_type=ip_address_type,
7432
7493
  listener_port=listener_port,
7433
7494
  load_balancer=load_balancer,
7434
7495
  load_balancer_name=load_balancer_name,
@@ -7480,6 +7541,7 @@ class ApplicationLoadBalancedEc2Service(
7480
7541
  "enable_execute_command": "enableExecuteCommand",
7481
7542
  "health_check_grace_period": "healthCheckGracePeriod",
7482
7543
  "idle_timeout": "idleTimeout",
7544
+ "ip_address_type": "ipAddressType",
7483
7545
  "listener_port": "listenerPort",
7484
7546
  "load_balancer": "loadBalancer",
7485
7547
  "load_balancer_name": "loadBalancerName",
@@ -7522,6 +7584,7 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
7522
7584
  enable_execute_command: typing.Optional[builtins.bool] = None,
7523
7585
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
7524
7586
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
7587
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
7525
7588
  listener_port: typing.Optional[jsii.Number] = None,
7526
7589
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
7527
7590
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -7561,6 +7624,7 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
7561
7624
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
7562
7625
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
7563
7626
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
7627
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
7564
7628
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
7565
7629
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
7566
7630
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -7629,6 +7693,7 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
7629
7693
  check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
7630
7694
  check_type(argname="argument health_check_grace_period", value=health_check_grace_period, expected_type=type_hints["health_check_grace_period"])
7631
7695
  check_type(argname="argument idle_timeout", value=idle_timeout, expected_type=type_hints["idle_timeout"])
7696
+ check_type(argname="argument ip_address_type", value=ip_address_type, expected_type=type_hints["ip_address_type"])
7632
7697
  check_type(argname="argument listener_port", value=listener_port, expected_type=type_hints["listener_port"])
7633
7698
  check_type(argname="argument load_balancer", value=load_balancer, expected_type=type_hints["load_balancer"])
7634
7699
  check_type(argname="argument load_balancer_name", value=load_balancer_name, expected_type=type_hints["load_balancer_name"])
@@ -7679,6 +7744,8 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
7679
7744
  self._values["health_check_grace_period"] = health_check_grace_period
7680
7745
  if idle_timeout is not None:
7681
7746
  self._values["idle_timeout"] = idle_timeout
7747
+ if ip_address_type is not None:
7748
+ self._values["ip_address_type"] = ip_address_type
7682
7749
  if listener_port is not None:
7683
7750
  self._values["listener_port"] = listener_port
7684
7751
  if load_balancer is not None:
@@ -7870,6 +7937,15 @@ class ApplicationLoadBalancedEc2ServiceProps(ApplicationLoadBalancedServiceBaseP
7870
7937
  result = self._values.get("idle_timeout")
7871
7938
  return typing.cast(typing.Optional[_Duration_4839e8c3], result)
7872
7939
 
7940
+ @builtins.property
7941
+ def ip_address_type(self) -> typing.Optional[_IpAddressType_c43b240e]:
7942
+ '''The type of IP address to use.
7943
+
7944
+ :default: - IpAddressType.IPV4
7945
+ '''
7946
+ result = self._values.get("ip_address_type")
7947
+ return typing.cast(typing.Optional[_IpAddressType_c43b240e], result)
7948
+
7873
7949
  @builtins.property
7874
7950
  def listener_port(self) -> typing.Optional[jsii.Number]:
7875
7951
  '''Listener port of the application load balancer that will serve traffic to the service.
@@ -8175,11 +8251,20 @@ class ApplicationLoadBalancedFargateService(
8175
8251
  cpu=512,
8176
8252
  task_image_options=ecsPatterns.ApplicationLoadBalancedTaskImageOptions(
8177
8253
  image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
8178
- ),
8179
- task_subnets=ec2.SubnetSelection(
8180
- subnets=[ec2.Subnet.from_subnet_id(self, "subnet", "VpcISOLATEDSubnet1Subnet80F07FA0")]
8181
- ),
8182
- load_balancer_name="application-lb-name"
8254
+ )
8255
+ )
8256
+
8257
+ scalable_target = load_balanced_fargate_service.service.auto_scale_task_count(
8258
+ min_capacity=1,
8259
+ max_capacity=20
8260
+ )
8261
+
8262
+ scalable_target.scale_on_cpu_utilization("CpuScaling",
8263
+ target_utilization_percent=50
8264
+ )
8265
+
8266
+ scalable_target.scale_on_memory_utilization("MemoryScaling",
8267
+ target_utilization_percent=50
8183
8268
  )
8184
8269
  '''
8185
8270
 
@@ -8205,6 +8290,7 @@ class ApplicationLoadBalancedFargateService(
8205
8290
  enable_execute_command: typing.Optional[builtins.bool] = None,
8206
8291
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
8207
8292
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
8293
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
8208
8294
  listener_port: typing.Optional[jsii.Number] = None,
8209
8295
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
8210
8296
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -8250,6 +8336,7 @@ class ApplicationLoadBalancedFargateService(
8250
8336
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
8251
8337
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
8252
8338
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
8339
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
8253
8340
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
8254
8341
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
8255
8342
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -8296,6 +8383,7 @@ class ApplicationLoadBalancedFargateService(
8296
8383
  enable_execute_command=enable_execute_command,
8297
8384
  health_check_grace_period=health_check_grace_period,
8298
8385
  idle_timeout=idle_timeout,
8386
+ ip_address_type=ip_address_type,
8299
8387
  listener_port=listener_port,
8300
8388
  load_balancer=load_balancer,
8301
8389
  load_balancer_name=load_balancer_name,
@@ -8361,6 +8449,7 @@ class ApplicationLoadBalancedFargateService(
8361
8449
  "enable_execute_command": "enableExecuteCommand",
8362
8450
  "health_check_grace_period": "healthCheckGracePeriod",
8363
8451
  "idle_timeout": "idleTimeout",
8452
+ "ip_address_type": "ipAddressType",
8364
8453
  "listener_port": "listenerPort",
8365
8454
  "load_balancer": "loadBalancer",
8366
8455
  "load_balancer_name": "loadBalancerName",
@@ -8410,6 +8499,7 @@ class ApplicationLoadBalancedFargateServiceProps(
8410
8499
  enable_execute_command: typing.Optional[builtins.bool] = None,
8411
8500
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
8412
8501
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
8502
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
8413
8503
  listener_port: typing.Optional[jsii.Number] = None,
8414
8504
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
8415
8505
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -8453,6 +8543,7 @@ class ApplicationLoadBalancedFargateServiceProps(
8453
8543
  :param enable_execute_command: Whether ECS Exec should be enabled. Default: - false
8454
8544
  :param health_check_grace_period: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started. Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
8455
8545
  :param idle_timeout: The load balancer idle timeout, in seconds. Can be between 1 and 4000 seconds Default: - CloudFormation sets idle timeout to 60 seconds
8546
+ :param ip_address_type: The type of IP address to use. Default: - IpAddressType.IPV4
8456
8547
  :param listener_port: Listener port of the application load balancer that will serve traffic to the service. Default: - The default listener port is determined from the protocol (port 80 for HTTP, port 443 for HTTPS). A domain name and zone must be also be specified if using HTTPS.
8457
8548
  :param load_balancer: The application load balancer that will serve traffic to the service. The VPC attribute of a load balancer must be specified for it to be used to create a new service with this pattern. [disable-awslint:ref-via-interface] Default: - a new load balancer will be created.
8458
8549
  :param load_balancer_name: Name of the load balancer. Default: - Automatically generated name.
@@ -8494,11 +8585,20 @@ class ApplicationLoadBalancedFargateServiceProps(
8494
8585
  cpu=512,
8495
8586
  task_image_options=ecsPatterns.ApplicationLoadBalancedTaskImageOptions(
8496
8587
  image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
8497
- ),
8498
- task_subnets=ec2.SubnetSelection(
8499
- subnets=[ec2.Subnet.from_subnet_id(self, "subnet", "VpcISOLATEDSubnet1Subnet80F07FA0")]
8500
- ),
8501
- load_balancer_name="application-lb-name"
8588
+ )
8589
+ )
8590
+
8591
+ scalable_target = load_balanced_fargate_service.service.auto_scale_task_count(
8592
+ min_capacity=1,
8593
+ max_capacity=20
8594
+ )
8595
+
8596
+ scalable_target.scale_on_cpu_utilization("CpuScaling",
8597
+ target_utilization_percent=50
8598
+ )
8599
+
8600
+ scalable_target.scale_on_memory_utilization("MemoryScaling",
8601
+ target_utilization_percent=50
8502
8602
  )
8503
8603
  '''
8504
8604
  if isinstance(circuit_breaker, dict):
@@ -8530,6 +8630,7 @@ class ApplicationLoadBalancedFargateServiceProps(
8530
8630
  check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
8531
8631
  check_type(argname="argument health_check_grace_period", value=health_check_grace_period, expected_type=type_hints["health_check_grace_period"])
8532
8632
  check_type(argname="argument idle_timeout", value=idle_timeout, expected_type=type_hints["idle_timeout"])
8633
+ check_type(argname="argument ip_address_type", value=ip_address_type, expected_type=type_hints["ip_address_type"])
8533
8634
  check_type(argname="argument listener_port", value=listener_port, expected_type=type_hints["listener_port"])
8534
8635
  check_type(argname="argument load_balancer", value=load_balancer, expected_type=type_hints["load_balancer"])
8535
8636
  check_type(argname="argument load_balancer_name", value=load_balancer_name, expected_type=type_hints["load_balancer_name"])
@@ -8584,6 +8685,8 @@ class ApplicationLoadBalancedFargateServiceProps(
8584
8685
  self._values["health_check_grace_period"] = health_check_grace_period
8585
8686
  if idle_timeout is not None:
8586
8687
  self._values["idle_timeout"] = idle_timeout
8688
+ if ip_address_type is not None:
8689
+ self._values["ip_address_type"] = ip_address_type
8587
8690
  if listener_port is not None:
8588
8691
  self._values["listener_port"] = listener_port
8589
8692
  if load_balancer is not None:
@@ -8783,6 +8886,15 @@ class ApplicationLoadBalancedFargateServiceProps(
8783
8886
  result = self._values.get("idle_timeout")
8784
8887
  return typing.cast(typing.Optional[_Duration_4839e8c3], result)
8785
8888
 
8889
+ @builtins.property
8890
+ def ip_address_type(self) -> typing.Optional[_IpAddressType_c43b240e]:
8891
+ '''The type of IP address to use.
8892
+
8893
+ :default: - IpAddressType.IPV4
8894
+ '''
8895
+ result = self._values.get("ip_address_type")
8896
+ return typing.cast(typing.Optional[_IpAddressType_c43b240e], result)
8897
+
8786
8898
  @builtins.property
8787
8899
  def listener_port(self) -> typing.Optional[jsii.Number]:
8788
8900
  '''Listener port of the application load balancer that will serve traffic to the service.
@@ -16055,6 +16167,7 @@ def _typecheckingstub__8c3ede040de35ed817f7c39537976690e81673c7be443b152e959f7f9
16055
16167
  enable_execute_command: typing.Optional[builtins.bool] = None,
16056
16168
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16057
16169
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16170
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16058
16171
  listener_port: typing.Optional[jsii.Number] = None,
16059
16172
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16060
16173
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -16110,6 +16223,7 @@ def _typecheckingstub__a68b3d7133b7b22b27e8c904e21f15f3a38d6a44c16a16cdf89d4051b
16110
16223
  enable_execute_command: typing.Optional[builtins.bool] = None,
16111
16224
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16112
16225
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16226
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16113
16227
  listener_port: typing.Optional[jsii.Number] = None,
16114
16228
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16115
16229
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -16694,6 +16808,7 @@ def _typecheckingstub__c7c2728dc66395799b8f32553505628c230427b49bbbc6fd682aa7208
16694
16808
  enable_execute_command: typing.Optional[builtins.bool] = None,
16695
16809
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16696
16810
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16811
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16697
16812
  listener_port: typing.Optional[jsii.Number] = None,
16698
16813
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16699
16814
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -16730,6 +16845,7 @@ def _typecheckingstub__b3f33e583b66138930e8047d22ea9454885645ecc97e1b8505d5c0a26
16730
16845
  enable_execute_command: typing.Optional[builtins.bool] = None,
16731
16846
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16732
16847
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16848
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16733
16849
  listener_port: typing.Optional[jsii.Number] = None,
16734
16850
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16735
16851
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -16778,6 +16894,7 @@ def _typecheckingstub__52e4707f036e6b5ab8a12a1dd88ad78656d9ef102eb7d04caef957d69
16778
16894
  enable_execute_command: typing.Optional[builtins.bool] = None,
16779
16895
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16780
16896
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16897
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16781
16898
  listener_port: typing.Optional[jsii.Number] = None,
16782
16899
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16783
16900
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -16820,6 +16937,7 @@ def _typecheckingstub__cdcb8bd483faaddad588ad37d4527fa1a0028fc2307a21fc3690044a0
16820
16937
  enable_execute_command: typing.Optional[builtins.bool] = None,
16821
16938
  health_check_grace_period: typing.Optional[_Duration_4839e8c3] = None,
16822
16939
  idle_timeout: typing.Optional[_Duration_4839e8c3] = None,
16940
+ ip_address_type: typing.Optional[_IpAddressType_c43b240e] = None,
16823
16941
  listener_port: typing.Optional[jsii.Number] = None,
16824
16942
  load_balancer: typing.Optional[_IApplicationLoadBalancer_4cbd50ab] = None,
16825
16943
  load_balancer_name: typing.Optional[builtins.str] = None,
@@ -660,7 +660,7 @@ The default value is `eks.EndpointAccess.PUBLIC_AND_PRIVATE`. Which means the cl
660
660
 
661
661
  ### Alb Controller
662
662
 
663
- Some Kubernetes resources are commonly implemented on AWS with the help of the [ALB Controller](https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.5/).
663
+ Some Kubernetes resources are commonly implemented on AWS with the help of the [ALB Controller](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/).
664
664
 
665
665
  From the docs:
666
666
 
@@ -675,7 +675,7 @@ To deploy the controller on your EKS cluster, configure the `albController` prop
675
675
  eks.Cluster(self, "HelloEKS",
676
676
  version=eks.KubernetesVersion.V1_30,
677
677
  alb_controller=eks.AlbControllerOptions(
678
- version=eks.AlbControllerVersion.V2_6_2
678
+ version=eks.AlbControllerVersion.V2_8_2
679
679
  )
680
680
  )
681
681
  ```
@@ -1862,7 +1862,9 @@ load_balancer_address = cluster.get_service_load_balancer_address("my-service")
1862
1862
  eks.Addon(self, "Addon",
1863
1863
  cluster=cluster,
1864
1864
  addon_name="aws-guardduty-agent",
1865
- addon_version="v1.6.1"
1865
+ addon_version="v1.6.1",
1866
+ # whether to preserve the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on.
1867
+ preserve_on_delete=False
1866
1868
  )
1867
1869
  ```
1868
1870
 
@@ -2656,6 +2658,7 @@ class AddonAttributes:
2656
2658
  "addon_name": "addonName",
2657
2659
  "cluster": "cluster",
2658
2660
  "addon_version": "addonVersion",
2661
+ "preserve_on_delete": "preserveOnDelete",
2659
2662
  },
2660
2663
  )
2661
2664
  class AddonProps:
@@ -2665,12 +2668,14 @@ class AddonProps:
2665
2668
  addon_name: builtins.str,
2666
2669
  cluster: "ICluster",
2667
2670
  addon_version: typing.Optional[builtins.str] = None,
2671
+ preserve_on_delete: typing.Optional[builtins.bool] = None,
2668
2672
  ) -> None:
2669
2673
  '''Properties for creating an Amazon EKS Add-On.
2670
2674
 
2671
2675
  :param addon_name: Name of the Add-On.
2672
2676
  :param cluster: The EKS cluster the Add-On is associated with.
2673
2677
  :param addon_version: Version of the Add-On. You can check all available versions with describe-addon-versons. For example, this lists all available versions for the ``eks-pod-identity-agent`` addon: $ aws eks describe-addon-versions --addon-name eks-pod-identity-agent --query 'addons[*].addonVersions[*].addonVersion' Default: the latest version.
2678
+ :param preserve_on_delete: 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. Default: true
2674
2679
 
2675
2680
  :exampleMetadata: infused
2676
2681
 
@@ -2682,7 +2687,9 @@ class AddonProps:
2682
2687
  eks.Addon(self, "Addon",
2683
2688
  cluster=cluster,
2684
2689
  addon_name="aws-guardduty-agent",
2685
- addon_version="v1.6.1"
2690
+ addon_version="v1.6.1",
2691
+ # whether to preserve the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on.
2692
+ preserve_on_delete=False
2686
2693
  )
2687
2694
  '''
2688
2695
  if __debug__:
@@ -2690,12 +2697,15 @@ class AddonProps:
2690
2697
  check_type(argname="argument addon_name", value=addon_name, expected_type=type_hints["addon_name"])
2691
2698
  check_type(argname="argument cluster", value=cluster, expected_type=type_hints["cluster"])
2692
2699
  check_type(argname="argument addon_version", value=addon_version, expected_type=type_hints["addon_version"])
2700
+ check_type(argname="argument preserve_on_delete", value=preserve_on_delete, expected_type=type_hints["preserve_on_delete"])
2693
2701
  self._values: typing.Dict[builtins.str, typing.Any] = {
2694
2702
  "addon_name": addon_name,
2695
2703
  "cluster": cluster,
2696
2704
  }
2697
2705
  if addon_version is not None:
2698
2706
  self._values["addon_version"] = addon_version
2707
+ if preserve_on_delete is not None:
2708
+ self._values["preserve_on_delete"] = preserve_on_delete
2699
2709
 
2700
2710
  @builtins.property
2701
2711
  def addon_name(self) -> builtins.str:
@@ -2725,6 +2735,17 @@ class AddonProps:
2725
2735
  result = self._values.get("addon_version")
2726
2736
  return typing.cast(typing.Optional[builtins.str], result)
2727
2737
 
2738
+ @builtins.property
2739
+ def preserve_on_delete(self) -> typing.Optional[builtins.bool]:
2740
+ '''Specifying this option preserves the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on.
2741
+
2742
+ If an IAM account is associated with the add-on, it isn't removed.
2743
+
2744
+ :default: true
2745
+ '''
2746
+ result = self._values.get("preserve_on_delete")
2747
+ return typing.cast(typing.Optional[builtins.bool], result)
2748
+
2728
2749
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
2729
2750
  return isinstance(rhs, self.__class__) and rhs._values == self._values
2730
2751
 
@@ -2858,7 +2879,7 @@ class AlbControllerOptions:
2858
2879
  eks.Cluster(self, "HelloEKS",
2859
2880
  version=eks.KubernetesVersion.V1_30,
2860
2881
  alb_controller=eks.AlbControllerOptions(
2861
- version=eks.AlbControllerVersion.V2_6_2
2882
+ version=eks.AlbControllerVersion.V2_8_2
2862
2883
  )
2863
2884
  )
2864
2885
  '''
@@ -3051,7 +3072,7 @@ class AlbControllerVersion(
3051
3072
  eks.Cluster(self, "HelloEKS",
3052
3073
  version=eks.KubernetesVersion.V1_30,
3053
3074
  alb_controller=eks.AlbControllerOptions(
3054
- version=eks.AlbControllerVersion.V2_6_2
3075
+ version=eks.AlbControllerVersion.V2_8_2
3055
3076
  )
3056
3077
  )
3057
3078
  '''
@@ -3248,6 +3269,42 @@ class AlbControllerVersion(
3248
3269
  '''v2.6.2.'''
3249
3270
  return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_6_2"))
3250
3271
 
3272
+ @jsii.python.classproperty
3273
+ @jsii.member(jsii_name="V2_7_0")
3274
+ def V2_7_0(cls) -> "AlbControllerVersion":
3275
+ '''v2.7.0.'''
3276
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_7_0"))
3277
+
3278
+ @jsii.python.classproperty
3279
+ @jsii.member(jsii_name="V2_7_1")
3280
+ def V2_7_1(cls) -> "AlbControllerVersion":
3281
+ '''v2.7.1.'''
3282
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_7_1"))
3283
+
3284
+ @jsii.python.classproperty
3285
+ @jsii.member(jsii_name="V2_7_2")
3286
+ def V2_7_2(cls) -> "AlbControllerVersion":
3287
+ '''v2.7.2.'''
3288
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_7_2"))
3289
+
3290
+ @jsii.python.classproperty
3291
+ @jsii.member(jsii_name="V2_8_0")
3292
+ def V2_8_0(cls) -> "AlbControllerVersion":
3293
+ '''v2.8.0.'''
3294
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_8_0"))
3295
+
3296
+ @jsii.python.classproperty
3297
+ @jsii.member(jsii_name="V2_8_1")
3298
+ def V2_8_1(cls) -> "AlbControllerVersion":
3299
+ '''v2.8.1.'''
3300
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_8_1"))
3301
+
3302
+ @jsii.python.classproperty
3303
+ @jsii.member(jsii_name="V2_8_2")
3304
+ def V2_8_2(cls) -> "AlbControllerVersion":
3305
+ '''v2.8.2.'''
3306
+ return typing.cast("AlbControllerVersion", jsii.sget(cls, "V2_8_2"))
3307
+
3251
3308
  @builtins.property
3252
3309
  @jsii.member(jsii_name="custom")
3253
3310
  def custom(self) -> builtins.bool:
@@ -16806,7 +16863,9 @@ class Addon(
16806
16863
  eks.Addon(self, "Addon",
16807
16864
  cluster=cluster,
16808
16865
  addon_name="aws-guardduty-agent",
16809
- addon_version="v1.6.1"
16866
+ addon_version="v1.6.1",
16867
+ # whether to preserve the add-on software on your cluster but Amazon EKS stops managing any settings for the add-on.
16868
+ preserve_on_delete=False
16810
16869
  )
16811
16870
  '''
16812
16871
 
@@ -16818,6 +16877,7 @@ class Addon(
16818
16877
  addon_name: builtins.str,
16819
16878
  cluster: ICluster,
16820
16879
  addon_version: typing.Optional[builtins.str] = None,
16880
+ preserve_on_delete: typing.Optional[builtins.bool] = None,
16821
16881
  ) -> None:
16822
16882
  '''Creates a new Amazon EKS Add-On.
16823
16883
 
@@ -16826,13 +16886,17 @@ class Addon(
16826
16886
  :param addon_name: Name of the Add-On.
16827
16887
  :param cluster: The EKS cluster the Add-On is associated with.
16828
16888
  :param addon_version: Version of the Add-On. You can check all available versions with describe-addon-versons. For example, this lists all available versions for the ``eks-pod-identity-agent`` addon: $ aws eks describe-addon-versions --addon-name eks-pod-identity-agent --query 'addons[*].addonVersions[*].addonVersion' Default: the latest version.
16889
+ :param preserve_on_delete: 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. Default: true
16829
16890
  '''
16830
16891
  if __debug__:
16831
16892
  type_hints = typing.get_type_hints(_typecheckingstub__a8342124e215d4789acf852df764143c4809251dbcaa86f6b4a11860e46f830d)
16832
16893
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
16833
16894
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
16834
16895
  props = AddonProps(
16835
- addon_name=addon_name, cluster=cluster, addon_version=addon_version
16896
+ addon_name=addon_name,
16897
+ cluster=cluster,
16898
+ addon_version=addon_version,
16899
+ preserve_on_delete=preserve_on_delete,
16836
16900
  )
16837
16901
 
16838
16902
  jsii.create(self.__class__, self, [scope, id, props])
@@ -20043,6 +20107,7 @@ def _typecheckingstub__febc9f6cb4243d885b1b1838be38d633e7c5fc6534eaaf731f00a2465
20043
20107
  addon_name: builtins.str,
20044
20108
  cluster: ICluster,
20045
20109
  addon_version: typing.Optional[builtins.str] = None,
20110
+ preserve_on_delete: typing.Optional[builtins.bool] = None,
20046
20111
  ) -> None:
20047
20112
  """Type checking stubs"""
20048
20113
  pass
@@ -21672,6 +21737,7 @@ def _typecheckingstub__a8342124e215d4789acf852df764143c4809251dbcaa86f6b4a11860e
21672
21737
  addon_name: builtins.str,
21673
21738
  cluster: ICluster,
21674
21739
  addon_version: typing.Optional[builtins.str] = None,
21740
+ preserve_on_delete: typing.Optional[builtins.bool] = None,
21675
21741
  ) -> None:
21676
21742
  """Type checking stubs"""
21677
21743
  pass