aws-cdk-lib 2.219.0__py3-none-any.whl → 2.221.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 (290) hide show
  1. aws_cdk/__init__.py +33 -35
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.219.0.jsii.tgz → aws-cdk-lib@2.221.0.jsii.tgz} +0 -0
  4. aws_cdk/alexa_ask/__init__.py +3 -0
  5. aws_cdk/aws_accessanalyzer/__init__.py +3 -0
  6. aws_cdk/aws_acmpca/__init__.py +4 -1
  7. aws_cdk/aws_aiops/__init__.py +3 -0
  8. aws_cdk/aws_amazonmq/__init__.py +3 -29
  9. aws_cdk/aws_amplify/__init__.py +3 -0
  10. aws_cdk/aws_amplifyuibuilder/__init__.py +3 -0
  11. aws_cdk/aws_apigateway/__init__.py +3 -0
  12. aws_cdk/aws_apigatewayv2/__init__.py +3 -0
  13. aws_cdk/aws_appconfig/__init__.py +3 -29
  14. aws_cdk/aws_appflow/__init__.py +3 -0
  15. aws_cdk/aws_appintegrations/__init__.py +3 -0
  16. aws_cdk/aws_applicationautoscaling/__init__.py +3 -0
  17. aws_cdk/aws_applicationinsights/__init__.py +3 -0
  18. aws_cdk/aws_applicationsignals/__init__.py +453 -2
  19. aws_cdk/aws_appmesh/__init__.py +3 -0
  20. aws_cdk/aws_apprunner/__init__.py +3 -0
  21. aws_cdk/aws_appstream/__init__.py +3 -0
  22. aws_cdk/aws_appsync/__init__.py +3 -0
  23. aws_cdk/aws_apptest/__init__.py +3 -0
  24. aws_cdk/aws_aps/__init__.py +1168 -83
  25. aws_cdk/aws_arcregionswitch/__init__.py +11 -0
  26. aws_cdk/aws_arczonalshift/__init__.py +3 -0
  27. aws_cdk/aws_athena/__init__.py +3 -0
  28. aws_cdk/aws_auditmanager/__init__.py +3 -0
  29. aws_cdk/aws_autoscaling/__init__.py +3 -0
  30. aws_cdk/aws_autoscaling_common/__init__.py +3 -0
  31. aws_cdk/aws_autoscalingplans/__init__.py +3 -0
  32. aws_cdk/aws_b2bi/__init__.py +3 -0
  33. aws_cdk/aws_backup/__init__.py +32 -29
  34. aws_cdk/aws_backupgateway/__init__.py +3 -0
  35. aws_cdk/aws_batch/__init__.py +112 -7
  36. aws_cdk/aws_bcmdataexports/__init__.py +3 -0
  37. aws_cdk/aws_bedrock/__init__.py +53 -45
  38. aws_cdk/aws_bedrockagentcore/__init__.py +8499 -1732
  39. aws_cdk/aws_billingconductor/__init__.py +3 -0
  40. aws_cdk/aws_budgets/__init__.py +3 -0
  41. aws_cdk/aws_cassandra/__init__.py +3 -0
  42. aws_cdk/aws_ce/__init__.py +3 -0
  43. aws_cdk/aws_certificatemanager/__init__.py +3 -0
  44. aws_cdk/aws_chatbot/__init__.py +3 -0
  45. aws_cdk/aws_cleanrooms/__init__.py +3 -0
  46. aws_cdk/aws_cleanroomsml/__init__.py +3 -0
  47. aws_cdk/aws_cloud9/__init__.py +3 -0
  48. aws_cdk/aws_cloudformation/__init__.py +3 -0
  49. aws_cdk/aws_cloudfront/__init__.py +69 -3
  50. aws_cdk/aws_cloudfront/experimental/__init__.py +4 -0
  51. aws_cdk/aws_cloudfront_origins/__init__.py +87 -6
  52. aws_cdk/aws_cloudtrail/__init__.py +3 -0
  53. aws_cdk/aws_cloudwatch/__init__.py +8 -5
  54. aws_cdk/aws_codeartifact/__init__.py +3 -0
  55. aws_cdk/aws_codebuild/__init__.py +3 -0
  56. aws_cdk/aws_codecommit/__init__.py +3 -0
  57. aws_cdk/aws_codeconnections/__init__.py +3 -0
  58. aws_cdk/aws_codedeploy/__init__.py +3 -0
  59. aws_cdk/aws_codeguruprofiler/__init__.py +3 -0
  60. aws_cdk/aws_codegurureviewer/__init__.py +3 -0
  61. aws_cdk/aws_codepipeline/__init__.py +3 -0
  62. aws_cdk/aws_codepipeline_actions/__init__.py +3 -0
  63. aws_cdk/aws_codestar/__init__.py +3 -0
  64. aws_cdk/aws_codestarconnections/__init__.py +3 -0
  65. aws_cdk/aws_codestarnotifications/__init__.py +3 -0
  66. aws_cdk/aws_cognito/__init__.py +9 -4
  67. aws_cdk/aws_cognito_identitypool/__init__.py +3 -0
  68. aws_cdk/aws_comprehend/__init__.py +3 -0
  69. aws_cdk/aws_config/__init__.py +3 -0
  70. aws_cdk/aws_connect/__init__.py +1232 -2
  71. aws_cdk/aws_connectcampaigns/__init__.py +3 -0
  72. aws_cdk/aws_connectcampaignsv2/__init__.py +3 -0
  73. aws_cdk/aws_controltower/__init__.py +3 -0
  74. aws_cdk/aws_cur/__init__.py +3 -0
  75. aws_cdk/aws_customerprofiles/__init__.py +3 -29
  76. aws_cdk/aws_databrew/__init__.py +3 -0
  77. aws_cdk/aws_datapipeline/__init__.py +3 -0
  78. aws_cdk/aws_datasync/__init__.py +3 -0
  79. aws_cdk/aws_datazone/__init__.py +17 -15
  80. aws_cdk/aws_dax/__init__.py +15 -3
  81. aws_cdk/aws_deadline/__init__.py +3 -0
  82. aws_cdk/aws_detective/__init__.py +3 -0
  83. aws_cdk/aws_devicefarm/__init__.py +3 -0
  84. aws_cdk/aws_devopsguru/__init__.py +3 -0
  85. aws_cdk/aws_directoryservice/__init__.py +32 -0
  86. aws_cdk/aws_dlm/__init__.py +3 -0
  87. aws_cdk/aws_dms/__init__.py +3 -0
  88. aws_cdk/aws_docdb/__init__.py +14 -3
  89. aws_cdk/aws_docdbelastic/__init__.py +3 -0
  90. aws_cdk/aws_dsql/__init__.py +3 -0
  91. aws_cdk/aws_dynamodb/__init__.py +3 -0
  92. aws_cdk/aws_ec2/__init__.py +205 -48
  93. aws_cdk/aws_ecr/__init__.py +156 -33
  94. aws_cdk/aws_ecs/__init__.py +429 -182
  95. aws_cdk/aws_efs/__init__.py +3 -0
  96. aws_cdk/aws_eks/__init__.py +117 -67
  97. aws_cdk/aws_elasticache/__init__.py +3 -0
  98. aws_cdk/aws_elasticbeanstalk/__init__.py +3 -0
  99. aws_cdk/aws_elasticloadbalancing/__init__.py +3 -0
  100. aws_cdk/aws_elasticloadbalancingv2/__init__.py +445 -36
  101. aws_cdk/aws_elasticsearch/__init__.py +3 -0
  102. aws_cdk/aws_emr/__init__.py +3 -0
  103. aws_cdk/aws_emrcontainers/__init__.py +3 -0
  104. aws_cdk/aws_emrserverless/__init__.py +12 -11
  105. aws_cdk/aws_entityresolution/__init__.py +3 -0
  106. aws_cdk/aws_events/__init__.py +73 -29
  107. aws_cdk/aws_events_targets/__init__.py +3 -0
  108. aws_cdk/aws_eventschemas/__init__.py +3 -0
  109. aws_cdk/aws_evidently/__init__.py +3 -0
  110. aws_cdk/aws_evs/__init__.py +3 -0
  111. aws_cdk/aws_finspace/__init__.py +3 -0
  112. aws_cdk/aws_fis/__init__.py +3 -0
  113. aws_cdk/aws_fms/__init__.py +3 -0
  114. aws_cdk/aws_forecast/__init__.py +3 -0
  115. aws_cdk/aws_frauddetector/__init__.py +3 -0
  116. aws_cdk/aws_fsx/__init__.py +7 -4
  117. aws_cdk/aws_gamelift/__init__.py +3 -0
  118. aws_cdk/aws_gameliftstreams/__init__.py +8 -5
  119. aws_cdk/aws_globalaccelerator/__init__.py +3 -0
  120. aws_cdk/aws_glue/__init__.py +11 -80
  121. aws_cdk/aws_grafana/__init__.py +3 -0
  122. aws_cdk/aws_greengrass/__init__.py +3 -0
  123. aws_cdk/aws_greengrassv2/__init__.py +3 -0
  124. aws_cdk/aws_groundstation/__init__.py +3 -0
  125. aws_cdk/aws_guardduty/__init__.py +3 -0
  126. aws_cdk/aws_healthimaging/__init__.py +3 -0
  127. aws_cdk/aws_healthlake/__init__.py +3 -0
  128. aws_cdk/aws_iam/__init__.py +30 -32
  129. aws_cdk/aws_identitystore/__init__.py +3 -0
  130. aws_cdk/aws_imagebuilder/__init__.py +896 -0
  131. aws_cdk/aws_inspector/__init__.py +3 -0
  132. aws_cdk/aws_inspectorv2/__init__.py +3 -0
  133. aws_cdk/aws_internetmonitor/__init__.py +3 -0
  134. aws_cdk/aws_invoicing/__init__.py +3 -0
  135. aws_cdk/aws_iot/__init__.py +3 -0
  136. aws_cdk/aws_iotanalytics/__init__.py +3 -0
  137. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +3 -0
  138. aws_cdk/aws_iotevents/__init__.py +3 -0
  139. aws_cdk/aws_iotfleethub/__init__.py +3 -0
  140. aws_cdk/aws_iotfleetwise/__init__.py +3 -0
  141. aws_cdk/aws_iotsitewise/__init__.py +139 -80
  142. aws_cdk/aws_iotthingsgraph/__init__.py +3 -0
  143. aws_cdk/aws_iottwinmaker/__init__.py +3 -87
  144. aws_cdk/aws_iotwireless/__init__.py +61 -0
  145. aws_cdk/aws_ivs/__init__.py +3 -0
  146. aws_cdk/aws_ivschat/__init__.py +3 -0
  147. aws_cdk/aws_kafkaconnect/__init__.py +3 -0
  148. aws_cdk/aws_kendra/__init__.py +3 -58
  149. aws_cdk/aws_kendraranking/__init__.py +3 -0
  150. aws_cdk/aws_kinesis/__init__.py +98 -4
  151. aws_cdk/aws_kinesisanalytics/__init__.py +3 -0
  152. aws_cdk/aws_kinesisanalyticsv2/__init__.py +3 -0
  153. aws_cdk/aws_kinesisfirehose/__init__.py +1709 -10
  154. aws_cdk/aws_kinesisvideo/__init__.py +3 -29
  155. aws_cdk/aws_kms/__init__.py +3 -0
  156. aws_cdk/aws_lakeformation/__init__.py +3 -0
  157. aws_cdk/aws_lambda/__init__.py +57 -7
  158. aws_cdk/aws_lambda_nodejs/__init__.py +3 -0
  159. aws_cdk/aws_launchwizard/__init__.py +3 -0
  160. aws_cdk/aws_lex/__init__.py +3 -29
  161. aws_cdk/aws_licensemanager/__init__.py +3 -0
  162. aws_cdk/aws_lightsail/__init__.py +587 -0
  163. aws_cdk/aws_location/__init__.py +3 -0
  164. aws_cdk/aws_logs/__init__.py +283 -9
  165. aws_cdk/aws_lookoutequipment/__init__.py +3 -29
  166. aws_cdk/aws_lookoutmetrics/__init__.py +17 -2
  167. aws_cdk/aws_lookoutvision/__init__.py +3 -0
  168. aws_cdk/aws_m2/__init__.py +62 -13
  169. aws_cdk/aws_macie/__init__.py +3 -0
  170. aws_cdk/aws_managedblockchain/__init__.py +3 -0
  171. aws_cdk/aws_mediaconnect/__init__.py +3 -0
  172. aws_cdk/aws_mediaconvert/__init__.py +3 -0
  173. aws_cdk/aws_medialive/__init__.py +279 -33
  174. aws_cdk/aws_mediapackage/__init__.py +3 -0
  175. aws_cdk/aws_mediapackagev2/__init__.py +3 -0
  176. aws_cdk/aws_mediastore/__init__.py +3 -0
  177. aws_cdk/aws_mediatailor/__init__.py +3 -58
  178. aws_cdk/aws_memorydb/__init__.py +3 -0
  179. aws_cdk/aws_mpa/__init__.py +3 -0
  180. aws_cdk/aws_msk/__init__.py +3 -0
  181. aws_cdk/aws_mwaa/__init__.py +8 -5
  182. aws_cdk/aws_neptune/__init__.py +188 -70
  183. aws_cdk/aws_neptunegraph/__init__.py +3 -0
  184. aws_cdk/aws_networkfirewall/__init__.py +3 -0
  185. aws_cdk/aws_networkmanager/__init__.py +32 -0
  186. aws_cdk/aws_nimblestudio/__init__.py +3 -0
  187. aws_cdk/aws_notifications/__init__.py +3 -0
  188. aws_cdk/aws_notificationscontacts/__init__.py +3 -0
  189. aws_cdk/aws_oam/__init__.py +3 -0
  190. aws_cdk/aws_observabilityadmin/__init__.py +1365 -187
  191. aws_cdk/aws_odb/__init__.py +4 -1
  192. aws_cdk/aws_omics/__init__.py +10 -1
  193. aws_cdk/aws_opensearchserverless/__init__.py +3 -0
  194. aws_cdk/aws_opensearchservice/__init__.py +9 -0
  195. aws_cdk/aws_opsworks/__init__.py +3 -0
  196. aws_cdk/aws_opsworkscm/__init__.py +3 -0
  197. aws_cdk/aws_organizations/__init__.py +3 -116
  198. aws_cdk/aws_osis/__init__.py +157 -0
  199. aws_cdk/aws_panorama/__init__.py +3 -0
  200. aws_cdk/aws_paymentcryptography/__init__.py +3 -0
  201. aws_cdk/aws_pcaconnectorad/__init__.py +3 -0
  202. aws_cdk/aws_pcaconnectorscep/__init__.py +3 -0
  203. aws_cdk/aws_pcs/__init__.py +227 -33
  204. aws_cdk/aws_personalize/__init__.py +3 -0
  205. aws_cdk/aws_pinpoint/__init__.py +61 -58
  206. aws_cdk/aws_pinpointemail/__init__.py +3 -0
  207. aws_cdk/aws_pipes/__init__.py +3 -0
  208. aws_cdk/aws_proton/__init__.py +3 -0
  209. aws_cdk/aws_qbusiness/__init__.py +3 -174
  210. aws_cdk/aws_qldb/__init__.py +3 -29
  211. aws_cdk/aws_quicksight/__init__.py +493 -406
  212. aws_cdk/aws_ram/__init__.py +3 -0
  213. aws_cdk/aws_rbin/__init__.py +3 -0
  214. aws_cdk/aws_rds/__init__.py +71 -42
  215. aws_cdk/aws_redshift/__init__.py +3 -0
  216. aws_cdk/aws_redshiftserverless/__init__.py +3 -0
  217. aws_cdk/aws_refactorspaces/__init__.py +21 -6
  218. aws_cdk/aws_rekognition/__init__.py +3 -29
  219. aws_cdk/aws_resiliencehub/__init__.py +3 -0
  220. aws_cdk/aws_resourceexplorer2/__init__.py +3 -0
  221. aws_cdk/aws_resourcegroups/__init__.py +3 -0
  222. aws_cdk/aws_robomaker/__init__.py +3 -0
  223. aws_cdk/aws_rolesanywhere/__init__.py +3 -0
  224. aws_cdk/aws_route53/__init__.py +148 -24
  225. aws_cdk/aws_route53_targets/__init__.py +3 -0
  226. aws_cdk/aws_route53profiles/__init__.py +3 -0
  227. aws_cdk/aws_route53recoverycontrol/__init__.py +3 -0
  228. aws_cdk/aws_route53recoveryreadiness/__init__.py +3 -0
  229. aws_cdk/aws_route53resolver/__init__.py +11 -4
  230. aws_cdk/aws_rum/__init__.py +3 -0
  231. aws_cdk/aws_s3/__init__.py +80 -43
  232. aws_cdk/aws_s3_deployment/__init__.py +3 -0
  233. aws_cdk/aws_s3express/__init__.py +3 -0
  234. aws_cdk/aws_s3objectlambda/__init__.py +47 -12
  235. aws_cdk/aws_s3outposts/__init__.py +3 -0
  236. aws_cdk/aws_s3tables/__init__.py +3 -0
  237. aws_cdk/aws_sagemaker/__init__.py +166 -87
  238. aws_cdk/aws_sam/__init__.py +3 -0
  239. aws_cdk/aws_scheduler/__init__.py +3 -29
  240. aws_cdk/aws_sdb/__init__.py +3 -0
  241. aws_cdk/aws_secretsmanager/__init__.py +3 -0
  242. aws_cdk/aws_securityhub/__init__.py +3 -0
  243. aws_cdk/aws_securitylake/__init__.py +3 -0
  244. aws_cdk/aws_servicecatalog/__init__.py +161 -144
  245. aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -0
  246. aws_cdk/aws_servicediscovery/__init__.py +3 -0
  247. aws_cdk/aws_ses/__init__.py +3 -0
  248. aws_cdk/aws_shield/__init__.py +3 -0
  249. aws_cdk/aws_signer/__init__.py +3 -0
  250. aws_cdk/aws_simspaceweaver/__init__.py +3 -0
  251. aws_cdk/aws_smsvoice/__init__.py +3 -29
  252. aws_cdk/aws_sns/__init__.py +3 -0
  253. aws_cdk/aws_sqs/__init__.py +3 -0
  254. aws_cdk/aws_ssm/__init__.py +10 -3
  255. aws_cdk/aws_ssmcontacts/__init__.py +3 -0
  256. aws_cdk/aws_ssmguiconnect/__init__.py +3 -0
  257. aws_cdk/aws_ssmincidents/__init__.py +3 -0
  258. aws_cdk/aws_ssmquicksetup/__init__.py +470 -3
  259. aws_cdk/aws_sso/__init__.py +3 -0
  260. aws_cdk/aws_stepfunctions/__init__.py +23 -19
  261. aws_cdk/aws_stepfunctions_tasks/__init__.py +6 -3
  262. aws_cdk/aws_supportapp/__init__.py +3 -0
  263. aws_cdk/aws_synthetics/__init__.py +80 -27
  264. aws_cdk/aws_systemsmanagersap/__init__.py +3 -0
  265. aws_cdk/aws_timestream/__init__.py +3 -29
  266. aws_cdk/aws_transfer/__init__.py +20 -34
  267. aws_cdk/aws_verifiedpermissions/__init__.py +3 -0
  268. aws_cdk/aws_voiceid/__init__.py +3 -0
  269. aws_cdk/aws_vpclattice/__init__.py +7 -4
  270. aws_cdk/aws_waf/__init__.py +3 -0
  271. aws_cdk/aws_wafregional/__init__.py +3 -0
  272. aws_cdk/aws_wafv2/__init__.py +3 -0
  273. aws_cdk/aws_wisdom/__init__.py +3 -116
  274. aws_cdk/aws_workspaces/__init__.py +3 -0
  275. aws_cdk/aws_workspacesinstances/__init__.py +3 -0
  276. aws_cdk/aws_workspacesthinclient/__init__.py +3 -0
  277. aws_cdk/aws_workspacesweb/__init__.py +3 -0
  278. aws_cdk/aws_xray/__init__.py +3 -0
  279. aws_cdk/cloud_assembly_schema/__init__.py +3 -0
  280. aws_cdk/cx_api/__init__.py +34 -0
  281. aws_cdk/pipelines/__init__.py +3 -0
  282. aws_cdk/region_info/__init__.py +3 -0
  283. aws_cdk/triggers/__init__.py +3 -0
  284. {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/METADATA +2 -2
  285. aws_cdk_lib-2.221.0.dist-info/RECORD +313 -0
  286. aws_cdk_lib-2.219.0.dist-info/RECORD +0 -313
  287. {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/LICENSE +0 -0
  288. {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/NOTICE +0 -0
  289. {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/WHEEL +0 -0
  290. {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/top_level.txt +0 -0
@@ -6077,3 +6077,6 @@ def _typecheckingstub__020e1ad6a612ae3b94c3b53afd9ca3e8710c6a621174024a66a4889b0
6077
6077
  ) -> None:
6078
6078
  """Type checking stubs"""
6079
6079
  pass
6080
+
6081
+ for cls in [IAccessPoint, IAccessPointRef, IFileSystem, IFileSystemRef, IMountTargetRef]:
6082
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -158,6 +158,28 @@ eks.Cluster(self, "HelloEKS",
158
158
  )
159
159
  ```
160
160
 
161
+ You can control what happens to the resources created by the cluster construct when they are no longer managed by CloudFormation by specifying a `removalPolicy`.
162
+
163
+ This can happen in one of three situations:
164
+
165
+ * The resource is removed from the template, so CloudFormation stops managing it;
166
+ * A change to the resource is made that requires it to be replaced, so CloudFormation stops managing it;
167
+ * The stack is deleted, so CloudFormation stops managing all resources in it.
168
+
169
+ This affects the EKS cluster itself, the custom resource that created the cluster, associated IAM roles, node groups, security groups, VPC and any other CloudFormation resources managed by this construct.
170
+
171
+ ```python
172
+ from aws_cdk.lambda_layer_kubectl_v33 import KubectlV33Layer
173
+ import aws_cdk as core
174
+
175
+
176
+ eks.Cluster(self, "HelloEKS",
177
+ version=eks.KubernetesVersion.V1_33,
178
+ kubectl_layer=KubectlV33Layer(self, "kubectl"),
179
+ removal_policy=core.RemovalPolicy.RETAIN
180
+ )
181
+ ```
182
+
161
183
  You can also use `FargateCluster` to provision a cluster that uses only fargate workers.
162
184
 
163
185
  ```python
@@ -2136,6 +2158,7 @@ from .. import (
2136
2158
  ITaggable as _ITaggable_36806126,
2137
2159
  ITaggableV2 as _ITaggableV2_4e6798f8,
2138
2160
  NestedStack as _NestedStack_dd393a45,
2161
+ RemovalPolicy as _RemovalPolicy_9f93c814,
2139
2162
  Resource as _Resource_45bc6135,
2140
2163
  Size as _Size_7b441c34,
2141
2164
  TagManager as _TagManager_0a598cb3,
@@ -11632,19 +11655,17 @@ class KubernetesVersion(
11632
11655
 
11633
11656
  from aws_cdk.lambda_layer_kubectl_v33 import KubectlV33Layer
11634
11657
 
11635
- # or
11636
- # vpc: ec2.Vpc
11637
-
11638
11658
 
11639
- eks.Cluster(self, "MyCluster",
11640
- kubectl_memory=Size.gibibytes(4),
11659
+ cluster = eks.Cluster(self, "HelloEKS",
11641
11660
  version=eks.KubernetesVersion.V1_33,
11661
+ default_capacity=0,
11642
11662
  kubectl_layer=KubectlV33Layer(self, "kubectl")
11643
11663
  )
11644
- eks.Cluster.from_cluster_attributes(self, "MyCluster",
11645
- kubectl_memory=Size.gibibytes(4),
11646
- vpc=vpc,
11647
- cluster_name="cluster-name"
11664
+
11665
+ cluster.add_nodegroup_capacity("custom-node-group",
11666
+ instance_types=[ec2.InstanceType("m5.large")],
11667
+ min_size=4,
11668
+ disk_size=100
11648
11669
  )
11649
11670
  '''
11650
11671
 
@@ -15106,27 +15127,6 @@ class CfnAddon(
15106
15127
 
15107
15128
  jsii.create(self.__class__, self, [scope, id, props])
15108
15129
 
15109
- @jsii.member(jsii_name="fromAddonArn")
15110
- @builtins.classmethod
15111
- def from_addon_arn(
15112
- cls,
15113
- scope: _constructs_77d1e7e8.Construct,
15114
- id: builtins.str,
15115
- arn: builtins.str,
15116
- ) -> IAddonRef:
15117
- '''Creates a new IAddonRef from an ARN.
15118
-
15119
- :param scope: -
15120
- :param id: -
15121
- :param arn: -
15122
- '''
15123
- if __debug__:
15124
- type_hints = typing.get_type_hints(_typecheckingstub__e553dfaf756fa282c5fbeb4ef4b974cf0a47d23084cd717224b1311e0a30eb24)
15125
- check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
15126
- check_type(argname="argument id", value=id, expected_type=type_hints["id"])
15127
- check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
15128
- return typing.cast(IAddonRef, jsii.sinvoke(cls, "fromAddonArn", [scope, id, arn]))
15129
-
15130
15130
  @jsii.member(jsii_name="inspect")
15131
15131
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
15132
15132
  '''Examines the CloudFormation resource and discloses attributes.
@@ -17695,27 +17695,6 @@ class CfnFargateProfile(
17695
17695
 
17696
17696
  jsii.create(self.__class__, self, [scope, id, props])
17697
17697
 
17698
- @jsii.member(jsii_name="fromFargateProfileArn")
17699
- @builtins.classmethod
17700
- def from_fargate_profile_arn(
17701
- cls,
17702
- scope: _constructs_77d1e7e8.Construct,
17703
- id: builtins.str,
17704
- arn: builtins.str,
17705
- ) -> IFargateProfileRef:
17706
- '''Creates a new IFargateProfileRef from an ARN.
17707
-
17708
- :param scope: -
17709
- :param id: -
17710
- :param arn: -
17711
- '''
17712
- if __debug__:
17713
- type_hints = typing.get_type_hints(_typecheckingstub__68f38ef5ce6ebc1ca5dcde1b9e529ea13f0b01c2ccaa9863ca69bece85d4f6e6)
17714
- check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
17715
- check_type(argname="argument id", value=id, expected_type=type_hints["id"])
17716
- check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
17717
- return typing.cast(IFargateProfileRef, jsii.sinvoke(cls, "fromFargateProfileArn", [scope, id, arn]))
17718
-
17719
17698
  @jsii.member(jsii_name="inspect")
17720
17699
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
17721
17700
  '''Examines the CloudFormation resource and discloses attributes.
@@ -19813,6 +19792,7 @@ class Cluster(
19813
19792
  prune: typing.Optional[builtins.bool] = None,
19814
19793
  remote_node_networks: typing.Optional[typing.Sequence[typing.Union[RemoteNodeNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
19815
19794
  remote_pod_networks: typing.Optional[typing.Sequence[typing.Union[RemotePodNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
19795
+ removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
19816
19796
  secrets_encryption_key: typing.Optional[_IKeyRef_1e82344b] = None,
19817
19797
  service_ipv4_cidr: typing.Optional[builtins.str] = None,
19818
19798
  version: KubernetesVersion,
@@ -19854,6 +19834,7 @@ class Cluster(
19854
19834
  :param prune: Indicates whether Kubernetes resources added through ``addManifest()`` can be automatically pruned. When this is enabled (default), prune labels will be allocated and injected to each resource. These labels will then be used when issuing the ``kubectl apply`` operation with the ``--prune`` switch. Default: true
19855
19835
  :param remote_node_networks: IPv4 CIDR blocks defining the expected address range of hybrid nodes that will join the cluster. Default: - none
19856
19836
  :param remote_pod_networks: IPv4 CIDR blocks for Pods running Kubernetes webhooks on hybrid nodes. Default: - none
19837
+ :param removal_policy: The removal policy applied to all CloudFormation resources created by this construct when they are no longer 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. This affects the EKS cluster itself, associated IAM roles, node groups, security groups, VPC and any other CloudFormation resources managed by this construct. Default: - Resources will be deleted.
19857
19838
  :param secrets_encryption_key: KMS secret for envelope encryption for Kubernetes secrets. Default: - By default, Kubernetes stores all secret object data within etcd and all etcd volumes used by Amazon EKS are encrypted at the disk-level using AWS-Managed encryption keys.
19858
19839
  :param service_ipv4_cidr: The CIDR block to assign Kubernetes service IP addresses from. Default: - Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks
19859
19840
  :param version: The Kubernetes version to run in the cluster.
@@ -19896,6 +19877,7 @@ class Cluster(
19896
19877
  prune=prune,
19897
19878
  remote_node_networks=remote_node_networks,
19898
19879
  remote_pod_networks=remote_pod_networks,
19880
+ removal_policy=removal_policy,
19899
19881
  secrets_encryption_key=secrets_encryption_key,
19900
19882
  service_ipv4_cidr=service_ipv4_cidr,
19901
19883
  version=version,
@@ -20843,6 +20825,7 @@ class Cluster(
20843
20825
  "prune": "prune",
20844
20826
  "remote_node_networks": "remoteNodeNetworks",
20845
20827
  "remote_pod_networks": "remotePodNetworks",
20828
+ "removal_policy": "removalPolicy",
20846
20829
  "secrets_encryption_key": "secretsEncryptionKey",
20847
20830
  "service_ipv4_cidr": "serviceIpv4Cidr",
20848
20831
  },
@@ -20878,6 +20861,7 @@ class ClusterOptions(CommonClusterOptions):
20878
20861
  prune: typing.Optional[builtins.bool] = None,
20879
20862
  remote_node_networks: typing.Optional[typing.Sequence[typing.Union[RemoteNodeNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
20880
20863
  remote_pod_networks: typing.Optional[typing.Sequence[typing.Union[RemotePodNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
20864
+ removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
20881
20865
  secrets_encryption_key: typing.Optional[_IKeyRef_1e82344b] = None,
20882
20866
  service_ipv4_cidr: typing.Optional[builtins.str] = None,
20883
20867
  ) -> None:
@@ -20910,6 +20894,7 @@ class ClusterOptions(CommonClusterOptions):
20910
20894
  :param prune: Indicates whether Kubernetes resources added through ``addManifest()`` can be automatically pruned. When this is enabled (default), prune labels will be allocated and injected to each resource. These labels will then be used when issuing the ``kubectl apply`` operation with the ``--prune`` switch. Default: true
20911
20895
  :param remote_node_networks: IPv4 CIDR blocks defining the expected address range of hybrid nodes that will join the cluster. Default: - none
20912
20896
  :param remote_pod_networks: IPv4 CIDR blocks for Pods running Kubernetes webhooks on hybrid nodes. Default: - none
20897
+ :param removal_policy: The removal policy applied to all CloudFormation resources created by this construct when they are no longer 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. This affects the EKS cluster itself, associated IAM roles, node groups, security groups, VPC and any other CloudFormation resources managed by this construct. Default: - Resources will be deleted.
20913
20898
  :param secrets_encryption_key: KMS secret for envelope encryption for Kubernetes secrets. Default: - By default, Kubernetes stores all secret object data within etcd and all etcd volumes used by Amazon EKS are encrypted at the disk-level using AWS-Managed encryption keys.
20914
20899
  :param service_ipv4_cidr: The CIDR block to assign Kubernetes service IP addresses from. Default: - Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks
20915
20900
 
@@ -20983,6 +20968,7 @@ class ClusterOptions(CommonClusterOptions):
20983
20968
  remote_pod_networks=[eks.RemotePodNetwork(
20984
20969
  cidrs=["cidrs"]
20985
20970
  )],
20971
+ removal_policy=cdk.RemovalPolicy.DESTROY,
20986
20972
  role=role,
20987
20973
  secrets_encryption_key=key_ref,
20988
20974
  security_group=security_group,
@@ -21029,6 +21015,7 @@ class ClusterOptions(CommonClusterOptions):
21029
21015
  check_type(argname="argument prune", value=prune, expected_type=type_hints["prune"])
21030
21016
  check_type(argname="argument remote_node_networks", value=remote_node_networks, expected_type=type_hints["remote_node_networks"])
21031
21017
  check_type(argname="argument remote_pod_networks", value=remote_pod_networks, expected_type=type_hints["remote_pod_networks"])
21018
+ check_type(argname="argument removal_policy", value=removal_policy, expected_type=type_hints["removal_policy"])
21032
21019
  check_type(argname="argument secrets_encryption_key", value=secrets_encryption_key, expected_type=type_hints["secrets_encryption_key"])
21033
21020
  check_type(argname="argument service_ipv4_cidr", value=service_ipv4_cidr, expected_type=type_hints["service_ipv4_cidr"])
21034
21021
  self._values: typing.Dict[builtins.str, typing.Any] = {
@@ -21085,6 +21072,8 @@ class ClusterOptions(CommonClusterOptions):
21085
21072
  self._values["remote_node_networks"] = remote_node_networks
21086
21073
  if remote_pod_networks is not None:
21087
21074
  self._values["remote_pod_networks"] = remote_pod_networks
21075
+ if removal_policy is not None:
21076
+ self._values["removal_policy"] = removal_policy
21088
21077
  if secrets_encryption_key is not None:
21089
21078
  self._values["secrets_encryption_key"] = secrets_encryption_key
21090
21079
  if service_ipv4_cidr is not None:
@@ -21393,6 +21382,24 @@ class ClusterOptions(CommonClusterOptions):
21393
21382
  result = self._values.get("remote_pod_networks")
21394
21383
  return typing.cast(typing.Optional[typing.List[RemotePodNetwork]], result)
21395
21384
 
21385
+ @builtins.property
21386
+ def removal_policy(self) -> typing.Optional[_RemovalPolicy_9f93c814]:
21387
+ '''The removal policy applied to all CloudFormation resources created by this construct when they are no longer managed by CloudFormation.
21388
+
21389
+ This can happen in one of three situations:
21390
+
21391
+ - The resource is removed from the template, so CloudFormation stops managing it;
21392
+ - A change to the resource is made that requires it to be replaced, so CloudFormation stops managing it;
21393
+ - The stack is deleted, so CloudFormation stops managing all resources in it.
21394
+
21395
+ This affects the EKS cluster itself, associated IAM roles, node groups, security groups, VPC
21396
+ and any other CloudFormation resources managed by this construct.
21397
+
21398
+ :default: - Resources will be deleted.
21399
+ '''
21400
+ result = self._values.get("removal_policy")
21401
+ return typing.cast(typing.Optional[_RemovalPolicy_9f93c814], result)
21402
+
21396
21403
  @builtins.property
21397
21404
  def secrets_encryption_key(self) -> typing.Optional[_IKeyRef_1e82344b]:
21398
21405
  '''KMS secret for envelope encryption for Kubernetes secrets.
@@ -21463,6 +21470,7 @@ class ClusterOptions(CommonClusterOptions):
21463
21470
  "prune": "prune",
21464
21471
  "remote_node_networks": "remoteNodeNetworks",
21465
21472
  "remote_pod_networks": "remotePodNetworks",
21473
+ "removal_policy": "removalPolicy",
21466
21474
  "secrets_encryption_key": "secretsEncryptionKey",
21467
21475
  "service_ipv4_cidr": "serviceIpv4Cidr",
21468
21476
  "bootstrap_cluster_creator_admin_permissions": "bootstrapClusterCreatorAdminPermissions",
@@ -21505,6 +21513,7 @@ class ClusterProps(ClusterOptions):
21505
21513
  prune: typing.Optional[builtins.bool] = None,
21506
21514
  remote_node_networks: typing.Optional[typing.Sequence[typing.Union[RemoteNodeNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
21507
21515
  remote_pod_networks: typing.Optional[typing.Sequence[typing.Union[RemotePodNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
21516
+ removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
21508
21517
  secrets_encryption_key: typing.Optional[_IKeyRef_1e82344b] = None,
21509
21518
  service_ipv4_cidr: typing.Optional[builtins.str] = None,
21510
21519
  bootstrap_cluster_creator_admin_permissions: typing.Optional[builtins.bool] = None,
@@ -21544,6 +21553,7 @@ class ClusterProps(ClusterOptions):
21544
21553
  :param prune: Indicates whether Kubernetes resources added through ``addManifest()`` can be automatically pruned. When this is enabled (default), prune labels will be allocated and injected to each resource. These labels will then be used when issuing the ``kubectl apply`` operation with the ``--prune`` switch. Default: true
21545
21554
  :param remote_node_networks: IPv4 CIDR blocks defining the expected address range of hybrid nodes that will join the cluster. Default: - none
21546
21555
  :param remote_pod_networks: IPv4 CIDR blocks for Pods running Kubernetes webhooks on hybrid nodes. Default: - none
21556
+ :param removal_policy: The removal policy applied to all CloudFormation resources created by this construct when they are no longer 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. This affects the EKS cluster itself, associated IAM roles, node groups, security groups, VPC and any other CloudFormation resources managed by this construct. Default: - Resources will be deleted.
21547
21557
  :param secrets_encryption_key: KMS secret for envelope encryption for Kubernetes secrets. Default: - By default, Kubernetes stores all secret object data within etcd and all etcd volumes used by Amazon EKS are encrypted at the disk-level using AWS-Managed encryption keys.
21548
21558
  :param service_ipv4_cidr: The CIDR block to assign Kubernetes service IP addresses from. Default: - Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks
21549
21559
  :param bootstrap_cluster_creator_admin_permissions: Whether or not IAM principal of the cluster creator was set as a cluster admin access entry during cluster creation time. Changing this value after the cluster has been created will result in the cluster being replaced. Default: true
@@ -21606,6 +21616,7 @@ class ClusterProps(ClusterOptions):
21606
21616
  check_type(argname="argument prune", value=prune, expected_type=type_hints["prune"])
21607
21617
  check_type(argname="argument remote_node_networks", value=remote_node_networks, expected_type=type_hints["remote_node_networks"])
21608
21618
  check_type(argname="argument remote_pod_networks", value=remote_pod_networks, expected_type=type_hints["remote_pod_networks"])
21619
+ check_type(argname="argument removal_policy", value=removal_policy, expected_type=type_hints["removal_policy"])
21609
21620
  check_type(argname="argument secrets_encryption_key", value=secrets_encryption_key, expected_type=type_hints["secrets_encryption_key"])
21610
21621
  check_type(argname="argument service_ipv4_cidr", value=service_ipv4_cidr, expected_type=type_hints["service_ipv4_cidr"])
21611
21622
  check_type(argname="argument bootstrap_cluster_creator_admin_permissions", value=bootstrap_cluster_creator_admin_permissions, expected_type=type_hints["bootstrap_cluster_creator_admin_permissions"])
@@ -21669,6 +21680,8 @@ class ClusterProps(ClusterOptions):
21669
21680
  self._values["remote_node_networks"] = remote_node_networks
21670
21681
  if remote_pod_networks is not None:
21671
21682
  self._values["remote_pod_networks"] = remote_pod_networks
21683
+ if removal_policy is not None:
21684
+ self._values["removal_policy"] = removal_policy
21672
21685
  if secrets_encryption_key is not None:
21673
21686
  self._values["secrets_encryption_key"] = secrets_encryption_key
21674
21687
  if service_ipv4_cidr is not None:
@@ -21991,6 +22004,24 @@ class ClusterProps(ClusterOptions):
21991
22004
  result = self._values.get("remote_pod_networks")
21992
22005
  return typing.cast(typing.Optional[typing.List[RemotePodNetwork]], result)
21993
22006
 
22007
+ @builtins.property
22008
+ def removal_policy(self) -> typing.Optional[_RemovalPolicy_9f93c814]:
22009
+ '''The removal policy applied to all CloudFormation resources created by this construct when they are no longer managed by CloudFormation.
22010
+
22011
+ This can happen in one of three situations:
22012
+
22013
+ - The resource is removed from the template, so CloudFormation stops managing it;
22014
+ - A change to the resource is made that requires it to be replaced, so CloudFormation stops managing it;
22015
+ - The stack is deleted, so CloudFormation stops managing all resources in it.
22016
+
22017
+ This affects the EKS cluster itself, associated IAM roles, node groups, security groups, VPC
22018
+ and any other CloudFormation resources managed by this construct.
22019
+
22020
+ :default: - Resources will be deleted.
22021
+ '''
22022
+ result = self._values.get("removal_policy")
22023
+ return typing.cast(typing.Optional[_RemovalPolicy_9f93c814], result)
22024
+
21994
22025
  @builtins.property
21995
22026
  def secrets_encryption_key(self) -> typing.Optional[_IKeyRef_1e82344b]:
21996
22027
  '''KMS secret for envelope encryption for Kubernetes secrets.
@@ -22160,6 +22191,7 @@ class FargateCluster(
22160
22191
  prune: typing.Optional[builtins.bool] = None,
22161
22192
  remote_node_networks: typing.Optional[typing.Sequence[typing.Union[RemoteNodeNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
22162
22193
  remote_pod_networks: typing.Optional[typing.Sequence[typing.Union[RemotePodNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
22194
+ removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
22163
22195
  secrets_encryption_key: typing.Optional[_IKeyRef_1e82344b] = None,
22164
22196
  service_ipv4_cidr: typing.Optional[builtins.str] = None,
22165
22197
  version: KubernetesVersion,
@@ -22194,6 +22226,7 @@ class FargateCluster(
22194
22226
  :param prune: Indicates whether Kubernetes resources added through ``addManifest()`` can be automatically pruned. When this is enabled (default), prune labels will be allocated and injected to each resource. These labels will then be used when issuing the ``kubectl apply`` operation with the ``--prune`` switch. Default: true
22195
22227
  :param remote_node_networks: IPv4 CIDR blocks defining the expected address range of hybrid nodes that will join the cluster. Default: - none
22196
22228
  :param remote_pod_networks: IPv4 CIDR blocks for Pods running Kubernetes webhooks on hybrid nodes. Default: - none
22229
+ :param removal_policy: The removal policy applied to all CloudFormation resources created by this construct when they are no longer 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. This affects the EKS cluster itself, associated IAM roles, node groups, security groups, VPC and any other CloudFormation resources managed by this construct. Default: - Resources will be deleted.
22197
22230
  :param secrets_encryption_key: KMS secret for envelope encryption for Kubernetes secrets. Default: - By default, Kubernetes stores all secret object data within etcd and all etcd volumes used by Amazon EKS are encrypted at the disk-level using AWS-Managed encryption keys.
22198
22231
  :param service_ipv4_cidr: The CIDR block to assign Kubernetes service IP addresses from. Default: - Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks
22199
22232
  :param version: The Kubernetes version to run in the cluster.
@@ -22230,6 +22263,7 @@ class FargateCluster(
22230
22263
  prune=prune,
22231
22264
  remote_node_networks=remote_node_networks,
22232
22265
  remote_pod_networks=remote_pod_networks,
22266
+ removal_policy=removal_policy,
22233
22267
  secrets_encryption_key=secrets_encryption_key,
22234
22268
  service_ipv4_cidr=service_ipv4_cidr,
22235
22269
  version=version,
@@ -22288,6 +22322,7 @@ class FargateCluster(
22288
22322
  "prune": "prune",
22289
22323
  "remote_node_networks": "remoteNodeNetworks",
22290
22324
  "remote_pod_networks": "remotePodNetworks",
22325
+ "removal_policy": "removalPolicy",
22291
22326
  "secrets_encryption_key": "secretsEncryptionKey",
22292
22327
  "service_ipv4_cidr": "serviceIpv4Cidr",
22293
22328
  "default_profile": "defaultProfile",
@@ -22324,6 +22359,7 @@ class FargateClusterProps(ClusterOptions):
22324
22359
  prune: typing.Optional[builtins.bool] = None,
22325
22360
  remote_node_networks: typing.Optional[typing.Sequence[typing.Union[RemoteNodeNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
22326
22361
  remote_pod_networks: typing.Optional[typing.Sequence[typing.Union[RemotePodNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
22362
+ removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
22327
22363
  secrets_encryption_key: typing.Optional[_IKeyRef_1e82344b] = None,
22328
22364
  service_ipv4_cidr: typing.Optional[builtins.str] = None,
22329
22365
  default_profile: typing.Optional[typing.Union[FargateProfileOptions, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -22357,6 +22393,7 @@ class FargateClusterProps(ClusterOptions):
22357
22393
  :param prune: Indicates whether Kubernetes resources added through ``addManifest()`` can be automatically pruned. When this is enabled (default), prune labels will be allocated and injected to each resource. These labels will then be used when issuing the ``kubectl apply`` operation with the ``--prune`` switch. Default: true
22358
22394
  :param remote_node_networks: IPv4 CIDR blocks defining the expected address range of hybrid nodes that will join the cluster. Default: - none
22359
22395
  :param remote_pod_networks: IPv4 CIDR blocks for Pods running Kubernetes webhooks on hybrid nodes. Default: - none
22396
+ :param removal_policy: The removal policy applied to all CloudFormation resources created by this construct when they are no longer 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. This affects the EKS cluster itself, associated IAM roles, node groups, security groups, VPC and any other CloudFormation resources managed by this construct. Default: - Resources will be deleted.
22360
22397
  :param secrets_encryption_key: KMS secret for envelope encryption for Kubernetes secrets. Default: - By default, Kubernetes stores all secret object data within etcd and all etcd volumes used by Amazon EKS are encrypted at the disk-level using AWS-Managed encryption keys.
22361
22398
  :param service_ipv4_cidr: The CIDR block to assign Kubernetes service IP addresses from. Default: - Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks
22362
22399
  :param default_profile: Fargate Profile to create along with the cluster. Default: - A profile called "default" with 'default' and 'kube-system' selectors will be created if this is left undefined.
@@ -22406,6 +22443,7 @@ class FargateClusterProps(ClusterOptions):
22406
22443
  check_type(argname="argument prune", value=prune, expected_type=type_hints["prune"])
22407
22444
  check_type(argname="argument remote_node_networks", value=remote_node_networks, expected_type=type_hints["remote_node_networks"])
22408
22445
  check_type(argname="argument remote_pod_networks", value=remote_pod_networks, expected_type=type_hints["remote_pod_networks"])
22446
+ check_type(argname="argument removal_policy", value=removal_policy, expected_type=type_hints["removal_policy"])
22409
22447
  check_type(argname="argument secrets_encryption_key", value=secrets_encryption_key, expected_type=type_hints["secrets_encryption_key"])
22410
22448
  check_type(argname="argument service_ipv4_cidr", value=service_ipv4_cidr, expected_type=type_hints["service_ipv4_cidr"])
22411
22449
  check_type(argname="argument default_profile", value=default_profile, expected_type=type_hints["default_profile"])
@@ -22463,6 +22501,8 @@ class FargateClusterProps(ClusterOptions):
22463
22501
  self._values["remote_node_networks"] = remote_node_networks
22464
22502
  if remote_pod_networks is not None:
22465
22503
  self._values["remote_pod_networks"] = remote_pod_networks
22504
+ if removal_policy is not None:
22505
+ self._values["removal_policy"] = removal_policy
22466
22506
  if secrets_encryption_key is not None:
22467
22507
  self._values["secrets_encryption_key"] = secrets_encryption_key
22468
22508
  if service_ipv4_cidr is not None:
@@ -22773,6 +22813,24 @@ class FargateClusterProps(ClusterOptions):
22773
22813
  result = self._values.get("remote_pod_networks")
22774
22814
  return typing.cast(typing.Optional[typing.List[RemotePodNetwork]], result)
22775
22815
 
22816
+ @builtins.property
22817
+ def removal_policy(self) -> typing.Optional[_RemovalPolicy_9f93c814]:
22818
+ '''The removal policy applied to all CloudFormation resources created by this construct when they are no longer managed by CloudFormation.
22819
+
22820
+ This can happen in one of three situations:
22821
+
22822
+ - The resource is removed from the template, so CloudFormation stops managing it;
22823
+ - A change to the resource is made that requires it to be replaced, so CloudFormation stops managing it;
22824
+ - The stack is deleted, so CloudFormation stops managing all resources in it.
22825
+
22826
+ This affects the EKS cluster itself, associated IAM roles, node groups, security groups, VPC
22827
+ and any other CloudFormation resources managed by this construct.
22828
+
22829
+ :default: - Resources will be deleted.
22830
+ '''
22831
+ result = self._values.get("removal_policy")
22832
+ return typing.cast(typing.Optional[_RemovalPolicy_9f93c814], result)
22833
+
22776
22834
  @builtins.property
22777
22835
  def secrets_encryption_key(self) -> typing.Optional[_IKeyRef_1e82344b]:
22778
22836
  '''KMS secret for envelope encryption for Kubernetes secrets.
@@ -24177,14 +24235,6 @@ def _typecheckingstub__45ff0728c7d6fc5f47c97aa791c327f70a32e19bdf463d94d9351053f
24177
24235
  """Type checking stubs"""
24178
24236
  pass
24179
24237
 
24180
- def _typecheckingstub__e553dfaf756fa282c5fbeb4ef4b974cf0a47d23084cd717224b1311e0a30eb24(
24181
- scope: _constructs_77d1e7e8.Construct,
24182
- id: builtins.str,
24183
- arn: builtins.str,
24184
- ) -> None:
24185
- """Type checking stubs"""
24186
- pass
24187
-
24188
24238
  def _typecheckingstub__fb634c71637a3029d784eb1cc23e12801a6d069d381448751935635b986d50bc(
24189
24239
  inspector: _TreeInspector_488e0dd5,
24190
24240
  ) -> None:
@@ -24595,14 +24645,6 @@ def _typecheckingstub__d74e3378581d3898ad60f22c46414b34a44ce82bd54d09c56466afda9
24595
24645
  """Type checking stubs"""
24596
24646
  pass
24597
24647
 
24598
- def _typecheckingstub__68f38ef5ce6ebc1ca5dcde1b9e529ea13f0b01c2ccaa9863ca69bece85d4f6e6(
24599
- scope: _constructs_77d1e7e8.Construct,
24600
- id: builtins.str,
24601
- arn: builtins.str,
24602
- ) -> None:
24603
- """Type checking stubs"""
24604
- pass
24605
-
24606
24648
  def _typecheckingstub__43ebc50d6c5b13856e87922886b34c19885bddbafafc65bf42a5e790bc129b85(
24607
24649
  inspector: _TreeInspector_488e0dd5,
24608
24650
  ) -> None:
@@ -25046,6 +25088,7 @@ def _typecheckingstub__786576ad54eacdb9ab8e92277c0fd07f813bc56d4243937f3b5a85c0c
25046
25088
  prune: typing.Optional[builtins.bool] = None,
25047
25089
  remote_node_networks: typing.Optional[typing.Sequence[typing.Union[RemoteNodeNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
25048
25090
  remote_pod_networks: typing.Optional[typing.Sequence[typing.Union[RemotePodNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
25091
+ removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
25049
25092
  secrets_encryption_key: typing.Optional[_IKeyRef_1e82344b] = None,
25050
25093
  service_ipv4_cidr: typing.Optional[builtins.str] = None,
25051
25094
  version: KubernetesVersion,
@@ -25286,6 +25329,7 @@ def _typecheckingstub__0b45b97fda36b43e872f90f9fe4cde65de855b50b3acfd236c1f400ef
25286
25329
  prune: typing.Optional[builtins.bool] = None,
25287
25330
  remote_node_networks: typing.Optional[typing.Sequence[typing.Union[RemoteNodeNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
25288
25331
  remote_pod_networks: typing.Optional[typing.Sequence[typing.Union[RemotePodNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
25332
+ removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
25289
25333
  secrets_encryption_key: typing.Optional[_IKeyRef_1e82344b] = None,
25290
25334
  service_ipv4_cidr: typing.Optional[builtins.str] = None,
25291
25335
  ) -> None:
@@ -25321,6 +25365,7 @@ def _typecheckingstub__ce7a73a63de29ba5e5b5cd5cabde7aca1c4bc7d119de52fc4c0f11d99
25321
25365
  prune: typing.Optional[builtins.bool] = None,
25322
25366
  remote_node_networks: typing.Optional[typing.Sequence[typing.Union[RemoteNodeNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
25323
25367
  remote_pod_networks: typing.Optional[typing.Sequence[typing.Union[RemotePodNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
25368
+ removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
25324
25369
  secrets_encryption_key: typing.Optional[_IKeyRef_1e82344b] = None,
25325
25370
  service_ipv4_cidr: typing.Optional[builtins.str] = None,
25326
25371
  bootstrap_cluster_creator_admin_permissions: typing.Optional[builtins.bool] = None,
@@ -25358,6 +25403,7 @@ def _typecheckingstub__ae166d791f5d5176f3386726c22bc44afedf5d336437a3513e3740387
25358
25403
  prune: typing.Optional[builtins.bool] = None,
25359
25404
  remote_node_networks: typing.Optional[typing.Sequence[typing.Union[RemoteNodeNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
25360
25405
  remote_pod_networks: typing.Optional[typing.Sequence[typing.Union[RemotePodNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
25406
+ removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
25361
25407
  secrets_encryption_key: typing.Optional[_IKeyRef_1e82344b] = None,
25362
25408
  service_ipv4_cidr: typing.Optional[builtins.str] = None,
25363
25409
  version: KubernetesVersion,
@@ -25401,6 +25447,7 @@ def _typecheckingstub__f11c7f989209f6213cb855d2846bb0b2b79a6a2b85eb0d65939e981df
25401
25447
  prune: typing.Optional[builtins.bool] = None,
25402
25448
  remote_node_networks: typing.Optional[typing.Sequence[typing.Union[RemoteNodeNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
25403
25449
  remote_pod_networks: typing.Optional[typing.Sequence[typing.Union[RemotePodNetwork, typing.Dict[builtins.str, typing.Any]]]] = None,
25450
+ removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
25404
25451
  secrets_encryption_key: typing.Optional[_IKeyRef_1e82344b] = None,
25405
25452
  service_ipv4_cidr: typing.Optional[builtins.str] = None,
25406
25453
  default_profile: typing.Optional[typing.Union[FargateProfileOptions, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -25415,3 +25462,6 @@ def _typecheckingstub__b393c3f294ed9f8582743840eca786b8cd915c5b4df9d362597e69dbe
25415
25462
  ) -> None:
25416
25463
  """Type checking stubs"""
25417
25464
  pass
25465
+
25466
+ for cls in [IAccessEntry, IAccessEntryRef, IAccessPolicy, IAddon, IAddonRef, ICluster, IClusterRef, IFargateProfileRef, IIdentityProviderConfigRef, IKubectlProvider, INodegroup, INodegroupRef, IPodIdentityAssociationRef]:
25467
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -10327,3 +10327,6 @@ def _typecheckingstub__f91d8988fa4ff59ae0f0f6e912aaa87f88df9ee98afddb86934a2611c
10327
10327
  ) -> None:
10328
10328
  """Type checking stubs"""
10329
10329
  pass
10330
+
10331
+ for cls in [ICacheClusterRef, IGlobalReplicationGroupRef, IParameterGroupRef, IReplicationGroupRef, ISecurityGroupIngressRef, ISecurityGroupRef, IServerlessCacheRef, ISubnetGroupRef, IUserGroupRef, IUserRef]:
10332
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -3370,3 +3370,6 @@ def _typecheckingstub__20ebf44ad0b64564e5b4154c6f5b2e8a52f2ed1b20db6288a5f6c8278
3370
3370
  ) -> None:
3371
3371
  """Type checking stubs"""
3372
3372
  pass
3373
+
3374
+ for cls in [IApplicationRef, IApplicationVersionRef, IConfigurationTemplateRef, IEnvironmentRef]:
3375
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
@@ -3129,3 +3129,6 @@ def _typecheckingstub__59a10349817ed5e601360f9aae1ffe6f0222e05d576372a8f753e0362
3129
3129
  ) -> None:
3130
3130
  """Type checking stubs"""
3131
3131
  pass
3132
+
3133
+ for cls in [ILoadBalancerRef, ILoadBalancerTarget]:
3134
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])