konokenj.cdk-api-mcp-server 0.31.0__py3-none-any.whl → 0.57.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.
Files changed (243) hide show
  1. cdk_api_mcp_server/__about__.py +1 -1
  2. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-amplify-alpha/README.md +12 -0
  3. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-bedrock-agentcore-alpha/README.md +1979 -0
  4. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-bedrock-alpha/README.md +946 -0
  5. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-eks-v2-alpha/README.md +160 -75
  6. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-elasticache-alpha/README.md +421 -0
  7. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-glue-alpha/README.md +39 -9
  8. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-imagebuilder-alpha/README.md +656 -0
  9. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-iot-alpha/README.md +1 -1
  10. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-lambda-go-alpha/README.md +102 -4
  11. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-lambda-python-alpha/README.md +6 -6
  12. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-msk-alpha/README.md +38 -8
  13. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-s3tables-alpha/README.md +82 -2
  14. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/aws-sagemaker-alpha/README.md +32 -0
  15. cdk_api_mcp_server/resources/aws-cdk/constructs/@aws-cdk/mixins-preview/README.md +182 -0
  16. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/README.md/README.md +367 -17
  17. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigateway/README.md +34 -0
  18. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigateway/integ.api-with-authorizer-and-proxy.ts +1 -1
  19. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigateway/integ.lambda-api.ts +1 -1
  20. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigateway/integ.lambda-permission-consolidation.ts +55 -0
  21. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigateway/integ.spec-restapi.ts +1 -0
  22. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2/README.md +224 -60
  23. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2/integ.api-dualstack.ts +3 -4
  24. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2/integ.api.ts +5 -3
  25. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2/integ.stage.ts +10 -7
  26. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2/integ.usage-plan.ts +80 -0
  27. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-authorizers/integ.iam.ts +34 -38
  28. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-authorizers/integ.lambda.ts +2 -2
  29. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-authorizers/integ.user-pool.ts +1 -1
  30. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-integrations/README.md +35 -0
  31. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-integrations/integ.add-subroute-integration.ts +7 -4
  32. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-integrations/integ.http-proxy.ts +1 -1
  33. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-integrations/integ.lambda-connect-disconnect-trigger.ts +2 -2
  34. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-integrations/integ.lambda-permission-consolidation.ts +45 -0
  35. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-integrations/integ.lambda-proxy.ts +1 -1
  36. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-integrations/integ.lambda.ts +4 -4
  37. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-apigatewayv2-integrations/integ.sqs.ts +58 -71
  38. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-appsync/integ.graphql-lambda-permission.ts +1 -1
  39. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-appsync/integ.js-resolver.ts +1 -1
  40. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-autoscaling/README.md +1 -1
  41. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-autoscaling/integ.asg-lt.ts +7 -0
  42. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-batch/README.md +49 -1
  43. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-batch/integ.ecs-exec-batch-job.ts +148 -0
  44. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-batch/integ.managed-compute-environment-default-instance-class.ts +20 -0
  45. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-certificatemanager/README.md +11 -0
  46. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudformation/integ.core-custom-resources-node-18.ts +1 -1
  47. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudformation/integ.core-custom-resources-service-timeout.ts +1 -1
  48. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudfront/README.md +292 -1
  49. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudfront-origins/README.md +83 -0
  50. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudfront-origins/integ.function-url-origin-ip-address-type.ts +84 -0
  51. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudfront-origins/integ.http-origin.ts +5 -2
  52. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudfront-origins/integ.origin-response-completion-timeout.ts +50 -0
  53. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudtrail/integ.cloudtrail-data-events-only.ts +1 -1
  54. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudwatch/README.md +104 -12
  55. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudwatch/integ.alarm-and-dashboard.ts +12 -0
  56. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudwatch/integ.anomaly-detection-alarm.ts +44 -2
  57. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudwatch/integ.dashboard-with-graphwidget-with-labels-visible.ts +92 -0
  58. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudwatch/integ.dashboard-with-metric-id-and-visible.ts +70 -0
  59. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cloudwatch/integ.search-expression.ts +51 -0
  60. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-codebuild/README.md +143 -3
  61. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-codebuild/integ.project-docker-server.ts +44 -0
  62. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-codebuild/integ.project-fleet-attribute-based-compute.ts +59 -7
  63. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-codebuild/integ.project-fleet-custom-instance-type.ts +130 -0
  64. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-codebuild/integ.project-fleet-overflow-behavior.ts +61 -0
  65. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-codebuild/integ.project-s3-cache.ts +71 -0
  66. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-codebuild/integ.project-windows-image.ts +1 -2
  67. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-codepipeline-actions/integ.pipeline-elastic-beanstalk-deploy.ts +26 -17
  68. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cognito/README.md +13 -2
  69. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-cognito/integ.user-pool-client-explicit-props.ts +1 -0
  70. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-docdb/README.md +24 -0
  71. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-docdb/integ.cluster-serverless.ts +34 -0
  72. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/README.md +225 -15
  73. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/TABLE_V1_API.md +45 -2
  74. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/integ.dynamodb-v2.cci.ts +49 -0
  75. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/integ.dynamodb.add-to-resource-policy.ts +97 -0
  76. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/integ.dynamodb.cci.ts +27 -0
  77. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/integ.dynamodb.compound.ts +32 -0
  78. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/integ.dynamodb.contirubtor-insights-for-gsi.ts +6 -2
  79. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/integ.dynamodb.policy.ts +21 -1
  80. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/integ.table-v2-global.ts +9 -3
  81. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/integ.table-v2-mrsc.ts +31 -0
  82. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-dynamodb/integ.table-v2.compound.ts +43 -0
  83. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ec2/README.md +28 -1
  84. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ec2/integ.client-vpn-endpoint-disconnect-on-session-timeout.ts +65 -0
  85. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ec2/integ.vpc-endpoint.lit.ts +6 -0
  86. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ec2/integ.vpc-flow-logs.ts +4 -0
  87. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecr/README.md +41 -2
  88. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecr/integ.tag-mutability-exclusion.ts +30 -0
  89. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecr-assets/README.md +4 -0
  90. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecr-assets/integ.assets-docker.ts +6 -0
  91. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/README.md +189 -1
  92. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.availability-zone-rebalancing.ts +14 -4
  93. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.blue-green-deployment-strategy.ts +147 -0
  94. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.cluster-windows-server-ami.ts +5 -6
  95. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.ebs-volume-initialization-rate.ts +80 -0
  96. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.enable-execute-command.ts +35 -29
  97. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.exec-command.ts +16 -22
  98. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.lb-awsvpc-nw.ts +26 -16
  99. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.managedinstances-capacity-provider.ts +114 -0
  100. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.managedinstances-no-default-capacity-provider.ts +107 -0
  101. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.placement-strategies.ts +32 -8
  102. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs/integ.pseudo-terminal.ts +18 -8
  103. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs-patterns/README.md +2 -0
  104. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs-patterns/integ.alb-fargate-service-public-private-switch.ts +45 -0
  105. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-ecs-patterns/integ.alb-fargate-service-smart-defaults.ts +143 -0
  106. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-eks/README.md +103 -83
  107. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-eks/integ.eks-al2023-nodegroup.ts +1 -1
  108. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-eks/integ.eks-cluster-removal-policy.ts +31 -0
  109. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-eks/integ.fargate-cluster.ts +1 -1
  110. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-elasticloadbalancingv2/README.md +55 -4
  111. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-elasticloadbalancingv2/integ.alb-lambda-multi-value-headers.ts +1 -1
  112. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-elasticloadbalancingv2/integ.alb-target-group-attributes.ts +45 -0
  113. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-elasticloadbalancingv2/integ.alb.oidc.ts +1 -1
  114. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-elasticloadbalancingv2/integ.nlb-target-group-attributes.ts +45 -0
  115. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-elasticloadbalancingv2/integ.nlb.security-group.ts +70 -0
  116. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-elasticloadbalancingv2-actions/integ.cognito.ts +1 -1
  117. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-events/README.md +41 -2
  118. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-events/integ.api-destination.ts +42 -0
  119. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-events/integ.archive-customer-managed-key.ts +23 -0
  120. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-events/integ.eventbus.ts +13 -3
  121. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-events-targets/README.md +93 -4
  122. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-events-targets/integ.firehose-delivery-stream.ts +51 -0
  123. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-iam/integ.custom-permissions-boundary-aspect.ts +50 -0
  124. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-iam/integ.managed-policy.ts +9 -0
  125. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-iam/integ.policy.ts +9 -0
  126. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-kinesis/README.md +42 -0
  127. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-kinesis/integ.stream-shard-level-monitoring.ts +47 -0
  128. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-kinesisfirehose/README.md +159 -3
  129. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-kinesisfirehose/integ.cloudwatch-logs-processors.ts +45 -0
  130. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-kinesisfirehose/integ.record-format-conversion-schema.ts +154 -0
  131. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-kinesisfirehose/integ.record-format-conversion.ts +178 -0
  132. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-kinesisfirehose/integ.s3-bucket.lit.ts +1 -0
  133. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda/README.md +41 -2
  134. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda/integ.binary-payload.ts +1 -1
  135. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda/integ.lambda-policy-with-token-resolution.ts +46 -0
  136. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda/integ.logging-config.ts +8 -8
  137. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda/integ.multi-tenancy.ts +24 -0
  138. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda/integ.params-and-secrets.ts +1 -1
  139. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda/integ.runtime-management.ts +1 -1
  140. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda/integ.runtime.fromasset.ts +19 -4
  141. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda/integ.runtime.inlinecode.ts +11 -4
  142. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda-nodejs/README.md +3 -3
  143. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda-nodejs/integ.dependencies-bun-lock.ts +50 -0
  144. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda-nodejs/integ.dependencies-pnpm.ts +1 -1
  145. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda-nodejs/integ.function-exclude-smithy-models.ts +2 -2
  146. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-lambda-nodejs/integ.nodejs.build.images.ts +1 -1
  147. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-logs/README.md +69 -1
  148. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-logs/integ.loggroup-transformer.ts +37 -0
  149. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-logs/integ.metricfilter-apply-on-transformed-logs.ts +29 -0
  150. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-logs/integ.save-logs-insights-query-definition.ts +7 -2
  151. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-logs/integ.subscriptionfilter.ts +1 -1
  152. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-logs/integ.transformer.ts +27 -0
  153. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-opensearchservice/integ.opensearch.ebs.ts +1 -1
  154. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-opensearchservice/integ.opensearch.min.ts +1 -0
  155. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-rds/README.md +72 -2
  156. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-rds/integ.cluster-cloudwatch-logs-exports.ts +56 -0
  157. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-rds/integ.cluster-data-api-to-imported-cluster.ts +1 -1
  158. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-rds/integ.cluster-data-api.ts +1 -1
  159. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-rds/integ.cluster-lookup.ts +100 -0
  160. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-rds/integ.cluster.ts +1 -1
  161. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-rds/integ.instance-database-insights.ts +43 -0
  162. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-rds/integ.instance-lookup.ts +77 -0
  163. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-rds/integ.proxy-endpoint.ts +36 -0
  164. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-route53/README.md +68 -31
  165. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-route53/integ.delete-existing-record-set.ts +0 -1
  166. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-route53/integ.private-hosted-zone-from-attributes.ts +41 -0
  167. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-route53/integ.route53.ts +51 -1
  168. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-route53/integ.zone-delegation-iam-stack.ts +66 -0
  169. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-route53-targets/integ.cloudfront-alias-target.ts +16 -1
  170. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-route53-targets/integ.elastic-beanstalk-hostedzoneid.ts +1 -1
  171. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3/integ.bucket.notifications-scoped-permissions.ts +71 -0
  172. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-assets/integ.assets.bundling.docker-opts.ts +4 -1
  173. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/README.md +83 -4
  174. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-big-response.ts +17 -6
  175. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-cloudfront.ts +20 -18
  176. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-cross-nested-stack-source.ts +64 -0
  177. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-cross-stack-source.ts +53 -0
  178. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-cross-stack-ssm-source.ts +97 -0
  179. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-data.ts +99 -59
  180. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-deployed-bucket.ts +10 -4
  181. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-large-file.ts +23 -12
  182. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-loggroup.ts +7 -2
  183. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-security-groups-efs.ts +77 -0
  184. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-security-groups-empty.ts +69 -0
  185. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-security-groups-multiple.ts +89 -0
  186. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-security-groups-single.ts +77 -0
  187. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-signcontent.ts +11 -7
  188. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-substitution-with-destination-key.ts +15 -8
  189. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-substitution-with-role.ts +29 -14
  190. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-substitution.ts +16 -8
  191. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-vpc-basic.ts +65 -0
  192. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-vpc-config.ts +66 -0
  193. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-vpc-custom-subnets.ts +66 -0
  194. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-vpc-efs.ts +66 -0
  195. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-vpc-security-groups.ts +72 -0
  196. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-vpc-subnet-selection.ts +70 -0
  197. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment.ts +47 -69
  198. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-notifications/integ.bucket-notifications.ts +80 -42
  199. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-secretsmanager/integ.secret.dynamic-reference-key.ts +38 -0
  200. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-signer/integ.signing-profile.ts +5 -0
  201. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-sns/README.md +2 -0
  202. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-sns-subscriptions/integ.sns-sqs-subscription-filter.ts +75 -0
  203. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-sns-subscriptions/integ.sns-sqs.ts +21 -40
  204. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions/integ.distributed-map-parallel.ts +82 -0
  205. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions/integ.distributed-map-redrive.ts +130 -0
  206. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions/integ.map-with-catch.ts +1 -0
  207. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions/integ.sm-jsonpath-with-distributed-map-jsonata.ts +105 -0
  208. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions-tasks/README.md +75 -5
  209. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions-tasks/integ.call-aws-service-cross-region-lambda.ts +1 -1
  210. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions-tasks/integ.emr-create-cluster-with-ebs.ts +126 -0
  211. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions-tasks/integ.evaluate-expression-arm64.ts +27 -0
  212. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions-tasks/integ.evaluate-expression-default.ts +25 -0
  213. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions-tasks/integ.evaluate-expression-mixed-arch.ts +35 -0
  214. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions-tasks/integ.evaluate-expression-nodejs22.ts +27 -0
  215. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions-tasks/integ.evaluate-expression-x86.ts +27 -0
  216. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-stepfunctions-tasks/integ.invoke-json-path.ts +102 -0
  217. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-synthetics/README.md +84 -1
  218. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-synthetics/integ.canary-browser-type.ts +35 -0
  219. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-synthetics/integ.canary-resources-to-replicate-tags.ts +36 -0
  220. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-synthetics/integ.canary-retry.ts +32 -0
  221. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-synthetics/integ.canary-runtime-validation.ts +43 -0
  222. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-synthetics/integ.canary.ts +2 -0
  223. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/cloudformation-include/integ.novalue-nonstring.ts +25 -0
  224. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/core/README.md +2 -1870
  225. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/custom-resources/README.md +59 -0
  226. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/custom-resources/integ.aws-custom-resource.ts +1 -1
  227. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/custom-resources/integ.custom-resource-config-lambda-node-runtime.ts +1 -1
  228. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/custom-resources/integ.external-id.ts +80 -0
  229. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/custom-resources/integ.invoke-function-payload.ts +1 -1
  230. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/cx-api/FEATURE_FLAGS.md +152 -10
  231. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/cx-api/README.md +55 -1
  232. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/interfaces/README.md +33 -0
  233. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/pipelines/README.md +4 -0
  234. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/pipelines/integ.newpipeline-reduce-stagerole-scope.ts +4 -1
  235. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/pipelines/integ.pipeline-with-customsynthesizer.ts +105 -0
  236. {konokenj_cdk_api_mcp_server-0.31.0.dist-info → konokenj_cdk_api_mcp_server-0.57.0.dist-info}/METADATA +2 -2
  237. {konokenj_cdk_api_mcp_server-0.31.0.dist-info → konokenj_cdk_api_mcp_server-0.57.0.dist-info}/RECORD +240 -151
  238. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-events-targets/integ.kinesis-firehose-stream.ts +0 -33
  239. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-logs/integ.expose-metric-with-dimensions.ts +0 -47
  240. cdk_api_mcp_server/resources/aws-cdk/constructs/aws-cdk-lib/aws-s3-deployment/integ.bucket-deployment-signcontent.d.ts +0 -1
  241. {konokenj_cdk_api_mcp_server-0.31.0.dist-info → konokenj_cdk_api_mcp_server-0.57.0.dist-info}/WHEEL +0 -0
  242. {konokenj_cdk_api_mcp_server-0.31.0.dist-info → konokenj_cdk_api_mcp_server-0.57.0.dist-info}/entry_points.txt +0 -0
  243. {konokenj_cdk_api_mcp_server-0.31.0.dist-info → konokenj_cdk_api_mcp_server-0.57.0.dist-info}/licenses/LICENSE.txt +0 -0
@@ -7,7 +7,7 @@ class TestStack extends Stack {
7
7
  constructor(scope: Construct, id: string, props?: StackProps) {
8
8
  super(scope, id, props);
9
9
 
10
- const instanceTypes = ['i4g.large.search', 'i4i.xlarge.search', 'r7gd.xlarge.search'];
10
+ const instanceTypes = ['i4g.large.search', 'i4i.xlarge.search', 'r7gd.xlarge.search', 'r8gd.medium.search'];
11
11
 
12
12
  instanceTypes.forEach((instanceType, index) => {
13
13
  new opensearch.Domain(this, `Domain${index + 1}`, {
@@ -11,6 +11,7 @@ class TestStack extends Stack {
11
11
  opensearch.EngineVersion.OPENSEARCH_2_13,
12
12
  opensearch.EngineVersion.OPENSEARCH_2_15,
13
13
  opensearch.EngineVersion.OPENSEARCH_2_17,
14
+ opensearch.EngineVersion.OPENSEARCH_3_1,
14
15
  ];
15
16
 
16
17
  // deploy opensearch domain with minimal configuration
@@ -418,6 +418,24 @@ To apply changes of the cluster, such as engine version, in the next scheduled m
418
418
 
419
419
  For details, see [Modifying an Amazon Aurora DB cluster](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Modifying.html).
420
420
 
421
+ ### Retaining Automated Backups
422
+
423
+ By default, when a database cluster is deleted, automated backups are removed immediately unless an AWS Backup policy specifies a point-in-time restore rule. You can control this behavior using the `deleteAutomatedBackups` property:
424
+
425
+ ```ts
426
+ declare const vpc: ec2.IVpc;
427
+ // Retain automated backups after cluster deletion
428
+ new rds.DatabaseCluster(this, 'Database', {
429
+ engine: rds.DatabaseClusterEngine.auroraMysql({ version: rds.AuroraMysqlEngineVersion.VER_3_01_0 }),
430
+ writer: rds.ClusterInstance.provisioned('writer'),
431
+ vpc,
432
+ deleteAutomatedBackups: false,
433
+ });
434
+ ```
435
+
436
+ When set to `false`, automated backups are retained according to the configured retention period after the cluster is deleted. When set to `true` or not specified (default), automated backups are deleted immediately when the cluster is deleted.
437
+ Detail about this feature can be found in the [AWS documentation](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Managing.Backups.Retaining.html).
438
+
421
439
  ### Migrating from instanceProps
422
440
 
423
441
  Creating instances in a `DatabaseCluster` using `instanceProps` & `instances` is
@@ -1148,6 +1166,26 @@ const proxy = dbInstance.addProxy('proxy', {
1148
1166
  });
1149
1167
  ```
1150
1168
 
1169
+ ### Proxy Endpoint
1170
+ The following example add additional endpoint to RDS Proxy.
1171
+
1172
+ ```ts
1173
+ declare const vpc: ec2.Vpc;
1174
+ declare const secrets: secretsmanager.Secret[];
1175
+ declare const dbInstance: rds.DatabaseInstance;
1176
+
1177
+ const proxy = dbInstance.addProxy('Proxy', {
1178
+ secrets,
1179
+ vpc,
1180
+ });
1181
+
1182
+ // Add a reader endpoint
1183
+ proxy.addEndpoint('ProxyEndpoint', {
1184
+ vpc,
1185
+ targetRole: rds.ProxyEndpointTargetRole.READ_ONLY,
1186
+ });
1187
+ ```
1188
+
1151
1189
  ## Exporting Logs
1152
1190
 
1153
1191
  You can publish database logs to Amazon CloudWatch Logs. With CloudWatch Logs, you can perform real-time analysis of the log data,
@@ -1166,7 +1204,7 @@ const cluster = new rds.DatabaseCluster(this, 'Database', {
1166
1204
  }),
1167
1205
  writer: rds.ClusterInstance.provisioned('writer'),
1168
1206
  vpc,
1169
- cloudwatchLogsExports: ['error', 'general', 'slowquery', 'audit'], // Export all available MySQL-based logs
1207
+ cloudwatchLogsExports: ['error', 'general', 'slowquery', 'audit', 'instance', 'iam-db-auth-error'], // Export all available MySQL-based logs
1170
1208
  cloudwatchLogsRetention: logs.RetentionDays.THREE_MONTHS, // Optional - default is to never expire logs
1171
1209
  cloudwatchLogsRetentionRole: myLogsPublishingRole, // Optional - a role will be created if not provided
1172
1210
  // ...
@@ -1514,7 +1552,20 @@ new rds.DatabaseCluster(this, 'Database', {
1514
1552
  });
1515
1553
  ```
1516
1554
 
1517
- Note: Database Insights are only supported for Amazon Aurora MySQL and Amazon Aurora PostgreSQL clusters.
1555
+ Database Insights is also supported for RDS instances:
1556
+
1557
+ ```ts
1558
+ declare const vpc: ec2.Vpc;
1559
+ new rds.DatabaseInstance(this, 'PostgresInstance', {
1560
+ engine: rds.DatabaseInstanceEngine.postgres({ version: rds.PostgresEngineVersion.VER_17_5 }),
1561
+ instanceType: ec2.InstanceType.of(ec2.InstanceClass.R5, ec2.InstanceSize.LARGE),
1562
+ vpc,
1563
+ // If you enable the advanced mode of Database Insights,
1564
+ // Performance Insights is enabled and you must set the `performanceInsightRetention` to 465(15 months).
1565
+ databaseInsightsMode: rds.DatabaseInsightsMode.ADVANCED,
1566
+ performanceInsightRetention: rds.PerformanceInsightRetention.MONTHS_15,
1567
+ });
1568
+ ```
1518
1569
 
1519
1570
  > Visit [CloudWatch Database Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Database-Insights.html) for more details.
1520
1571
 
@@ -1605,6 +1656,25 @@ const dbFromLookup = rds.DatabaseInstance.fromLookup(this, 'dbFromLookup', {
1605
1656
  dbFromLookup.grantConnect(myUserRole, 'my-user-id');
1606
1657
  ```
1607
1658
 
1659
+ ## Importing existing DatabaseCluster
1660
+
1661
+ ### Lookup DatabaseCluster by clusterIdentifier
1662
+
1663
+ You can lookup an existing DatabaseCluster by its clusterIdentifier using `DatabaseCluster.fromLookup()`. This method returns an `IDatabaseCluster`.
1664
+
1665
+ Here's how `DatabaseCluster.fromLookup()` can be used:
1666
+
1667
+ ```ts
1668
+ declare const myUserRole: iam.Role;
1669
+
1670
+ const clusterFromLookup = rds.DatabaseCluster.fromLookup(this, 'ClusterFromLookup', {
1671
+ clusterIdentifier: 'my-cluster-id',
1672
+ });
1673
+
1674
+ // Grant a connection
1675
+ clusterFromLookup.grantConnect(myUserRole, 'my-user-id');
1676
+ ```
1677
+
1608
1678
  ## Limitless Database Cluster
1609
1679
 
1610
1680
  Amazon Aurora [PostgreSQL Limitless Database](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/limitless.html) provides automated horizontal scaling to process millions of write transactions per second and manages petabytes of data while maintaining the simplicity of operating inside a single database.
@@ -0,0 +1,56 @@
1
+ import * as cdk from 'aws-cdk-lib/core';
2
+ import { ExpectedResult, IntegTest } from '@aws-cdk/integ-tests-alpha';
3
+ import * as ec2 from 'aws-cdk-lib/aws-ec2';
4
+ import * as rds from 'aws-cdk-lib/aws-rds';
5
+
6
+ const app = new cdk.App();
7
+
8
+ const stack = new cdk.Stack(app, 'CloudWatchLogsExportsStack');
9
+ const vpc = new ec2.Vpc(stack, 'VPC');
10
+
11
+ const mysql = new rds.DatabaseCluster(stack, 'DatabaseClusterMysql', {
12
+ engine: rds.DatabaseClusterEngine.auroraMysql({ version: rds.AuroraMysqlEngineVersion.VER_3_09_0 }),
13
+ writer: rds.ClusterInstance.serverlessV2('writerInstance'),
14
+ vpc,
15
+ cloudwatchLogsExports: ['error', 'general', 'slowquery', 'audit', 'instance', 'iam-db-auth-error'],
16
+ removalPolicy: cdk.RemovalPolicy.DESTROY,
17
+ });
18
+
19
+ const postgresql = new rds.DatabaseCluster(stack, 'DatabaseClusterPostgresql', {
20
+ engine: rds.DatabaseClusterEngine.auroraPostgres({ version: rds.AuroraPostgresEngineVersion.VER_16_4 }),
21
+ writer: rds.ClusterInstance.serverlessV2('writerInstance'),
22
+ vpc,
23
+ cloudwatchLogsExports: ['postgresql', 'iam-db-auth-error', 'instance'],
24
+ removalPolicy: cdk.RemovalPolicy.DESTROY,
25
+ });
26
+
27
+ const integ = new IntegTest(app, 'CloudWatchLogsExportsStackInteg', {
28
+ testCases: [stack],
29
+ });
30
+
31
+ integ.assertions.awsApiCall('RDS', 'describeDBClusters', {
32
+ DBClusterIdentifier: mysql.clusterIdentifier,
33
+ }).expect(ExpectedResult.objectLike({
34
+ DBClusters: [{
35
+ EnabledCloudwatchLogsExports: [
36
+ 'audit',
37
+ 'error',
38
+ 'general',
39
+ 'iam-db-auth-error',
40
+ 'instance',
41
+ 'slowquery',
42
+ ],
43
+ }],
44
+ }));
45
+
46
+ integ.assertions.awsApiCall('RDS', 'describeDBClusters', {
47
+ DBClusterIdentifier: postgresql.clusterIdentifier,
48
+ }).expect(ExpectedResult.objectLike({
49
+ DBClusters: [{
50
+ EnabledCloudwatchLogsExports: [
51
+ 'iam-db-auth-error',
52
+ 'instance',
53
+ 'postgresql',
54
+ ],
55
+ }],
56
+ }));
@@ -14,7 +14,7 @@ const stack = new cdk.Stack(app, 'cluster-data-api-to-imported-cluster');
14
14
  const vpc = new ec2.Vpc(stack, 'VPC');
15
15
 
16
16
  const func = new lambda.Function(stack, 'Function', {
17
- runtime: lambda.Runtime.NODEJS_18_X,
17
+ runtime: lambda.Runtime.NODEJS_20_X,
18
18
  handler: 'index.handler',
19
19
  code: lambda.Code.fromInline('exports.handler = async (event) => { return "hello"; }'),
20
20
  });
@@ -14,7 +14,7 @@ const stack = new cdk.Stack(app, 'cluster-data-api');
14
14
  const vpc = new ec2.Vpc(stack, 'VPC');
15
15
 
16
16
  const fucntion = new lambda.Function(stack, 'Function', {
17
- runtime: lambda.Runtime.NODEJS_18_X,
17
+ runtime: lambda.Runtime.NODEJS_20_X,
18
18
  handler: 'index.handler',
19
19
  code: lambda.Code.fromInline('exports.handler = async (event) => { return "hello"; }'),
20
20
  });
@@ -0,0 +1,100 @@
1
+ import { IntegTest } from '@aws-cdk/integ-tests-alpha';
2
+ import { App, CfnOutput, Stack } from 'aws-cdk-lib';
3
+ import * as cloudwatch from 'aws-cdk-lib/aws-cloudwatch';
4
+ import * as iam from 'aws-cdk-lib/aws-iam';
5
+ import * as rds from 'aws-cdk-lib/aws-rds';
6
+
7
+ const app = new App();
8
+ const clusterIdentifier = 'test-cluster-lookup';
9
+
10
+ const stackLookup = new Stack(app, 'aws-cdk-rds-cluster-lookup', {
11
+ env: {
12
+ account: process.env.CDK_INTEG_ACCOUNT ?? process.env.CDK_DEFAULT_ACCOUNT,
13
+ region: process.env.CDK_INTEG_REGION ?? process.env.CDK_DEFAULT_REGION,
14
+ },
15
+ });
16
+
17
+ // Lookup the existing cluster created by the preDeploy hook
18
+ const lookedUpCluster = rds.DatabaseCluster.fromLookup(stackLookup, 'LookedUpCluster', {
19
+ clusterIdentifier,
20
+ });
21
+
22
+ new CfnOutput(stackLookup, 'LookedUpClusterEndpoint', {
23
+ value: lookedUpCluster.clusterEndpoint.socketAddress,
24
+ });
25
+
26
+ new CfnOutput(stackLookup, 'LookedUpClusterReadEndpoint', {
27
+ value: lookedUpCluster.clusterReadEndpoint.socketAddress,
28
+ });
29
+
30
+ new CfnOutput(stackLookup, 'LookedUpClusterIdentifier', {
31
+ value: lookedUpCluster.clusterIdentifier,
32
+ });
33
+
34
+ new CfnOutput(stackLookup, 'LookedUpClusterResourceIdentifier', {
35
+ value: lookedUpCluster.clusterResourceIdentifier,
36
+ });
37
+
38
+ new CfnOutput(stackLookup, 'LookedUpClusterArn', {
39
+ value: lookedUpCluster.clusterArn,
40
+ });
41
+
42
+ new CfnOutput(stackLookup, 'SecurityGroupIds', {
43
+ value: lookedUpCluster.connections.securityGroups.map(sg => sg.securityGroupId).join(','),
44
+ });
45
+
46
+ // test grant
47
+ const dbAccessRole = new iam.Role(stackLookup, 'DbAccessRole', {
48
+ assumedBy: new iam.ServicePrincipal('ec2.amazonaws.com'),
49
+ description: 'Role for accessing the Aurora cluster via IAM authentication',
50
+ });
51
+
52
+ lookedUpCluster.grantConnect(dbAccessRole, 'admin');
53
+ lookedUpCluster.grantDataApiAccess(dbAccessRole);
54
+
55
+ // test metric
56
+ lookedUpCluster.metricDatabaseConnections().createAlarm(stackLookup, 'HighConnectionsAlarm', {
57
+ threshold: 100,
58
+ evaluationPeriods: 3,
59
+ alarmDescription: 'Database has high number of connections',
60
+ comparisonOperator: cloudwatch.ComparisonOperator.GREATER_THAN_THRESHOLD,
61
+ });
62
+
63
+ lookedUpCluster.metricCPUUtilization().createAlarm(stackLookup, 'HighCPUAlarm', {
64
+ threshold: 90,
65
+ evaluationPeriods: 3,
66
+ alarmDescription: 'Database CPU utilization is high',
67
+ comparisonOperator: cloudwatch.ComparisonOperator.GREATER_THAN_THRESHOLD,
68
+ });
69
+
70
+ lookedUpCluster.metricFreeableMemory().createAlarm(stackLookup, 'LowMemoryAlarm', {
71
+ threshold: 100 * 1024 * 1024,
72
+ evaluationPeriods: 3,
73
+ alarmDescription: 'Database is running low on memory',
74
+ comparisonOperator: cloudwatch.ComparisonOperator.LESS_THAN_THRESHOLD,
75
+ });
76
+
77
+ lookedUpCluster.metricDeadlocks().createAlarm(stackLookup, 'DeadlockAlarm', {
78
+ threshold: 5,
79
+ evaluationPeriods: 2,
80
+ alarmDescription: 'Database has deadlocks',
81
+ comparisonOperator: cloudwatch.ComparisonOperator.GREATER_THAN_THRESHOLD,
82
+ });
83
+
84
+ new IntegTest(app, 'integ-rds-cluster-from-lookup', {
85
+ testCases: [stackLookup],
86
+ enableLookups: true,
87
+ stackUpdateWorkflow: false,
88
+ // Create Aurora cluster before the test and delete it after
89
+ hooks: {
90
+ preDeploy: [
91
+ `aws rds create-db-cluster --db-cluster-identifier ${clusterIdentifier} --engine aurora-mysql --engine-version 8.0.mysql_aurora.3.09.0 --master-username admin --master-user-password Admin1234 --enable-http-endpoint --enable-iam-database-authentication --region us-east-1`,
92
+ `aws rds create-db-instance --db-instance-identifier ${clusterIdentifier}-instance --db-cluster-identifier ${clusterIdentifier} --engine aurora-mysql --db-instance-class db.r5.large --region us-east-1`,
93
+ `aws rds wait db-instance-available --db-instance-identifier ${clusterIdentifier}-instance --region us-east-1`,
94
+ ],
95
+ postDeploy: [
96
+ `aws rds delete-db-instance --db-instance-identifier ${clusterIdentifier}-instance --skip-final-snapshot --region us-east-1`,
97
+ `aws rds delete-db-cluster --db-cluster-identifier ${clusterIdentifier} --skip-final-snapshot --region us-east-1`,
98
+ ],
99
+ },
100
+ });
@@ -63,6 +63,7 @@ class TestStack extends cdk.Stack {
63
63
  parameterGroup: params,
64
64
  storageEncryptionKey: kmsKey,
65
65
  autoMinorVersionUpgrade: false,
66
+ deleteAutomatedBackups: false,
66
67
  });
67
68
 
68
69
  cluster.connections.allowDefaultPortFromAnyIpv4('Open to the world');
@@ -100,4 +101,3 @@ const stackWithFeatureFlag = new TestStack(appWithFeatureFlag, 'aws-cdk-rds-inte
100
101
  new IntegTest(appWithFeatureFlag, 'test-rds-cluster-with-feature-flag', {
101
102
  testCases: [stackWithFeatureFlag],
102
103
  });
103
- appWithFeatureFlag.synth();
@@ -0,0 +1,43 @@
1
+ import * as ec2 from 'aws-cdk-lib/aws-ec2';
2
+ import * as cdk from 'aws-cdk-lib';
3
+ import {
4
+ DatabaseInstance,
5
+ DatabaseInsightsMode,
6
+ PerformanceInsightRetention,
7
+ PostgresEngineVersion,
8
+ DatabaseInstanceEngine,
9
+ } from 'aws-cdk-lib/aws-rds';
10
+ import { IntegTest } from '@aws-cdk/integ-tests-alpha';
11
+
12
+ class TestStack extends cdk.Stack {
13
+ constructor(scope: cdk.App, id: string, props?: cdk.StackProps) {
14
+ super(scope, id, props);
15
+
16
+ const vpc = new ec2.Vpc(this, 'VPC', { maxAzs: 2, restrictDefaultSecurityGroup: false });
17
+
18
+ new DatabaseInstance(this, 'PostgresInstanceAdvanced', {
19
+ engine: DatabaseInstanceEngine.postgres({ version: PostgresEngineVersion.VER_16_9 }),
20
+ instanceType: ec2.InstanceType.of(ec2.InstanceClass.R5, ec2.InstanceSize.LARGE),
21
+ vpc,
22
+ allocatedStorage: 100,
23
+ databaseInsightsMode: DatabaseInsightsMode.ADVANCED,
24
+ performanceInsightRetention: PerformanceInsightRetention.MONTHS_15,
25
+ });
26
+
27
+ new DatabaseInstance(this, 'PostgresInstanceStandard', {
28
+ engine: DatabaseInstanceEngine.postgres({ version: PostgresEngineVersion.VER_16_9 }),
29
+ instanceType: ec2.InstanceType.of(ec2.InstanceClass.R5, ec2.InstanceSize.LARGE),
30
+ vpc,
31
+ allocatedStorage: 100,
32
+ databaseInsightsMode: DatabaseInsightsMode.STANDARD,
33
+ enablePerformanceInsights: true,
34
+ });
35
+ }
36
+ }
37
+
38
+ const app = new cdk.App();
39
+ const stack = new TestStack(app, 'aws-cdk-rds-integ-instance-database-insights');
40
+
41
+ new IntegTest(app, 'integ-instance-database-insights', {
42
+ testCases: [stack],
43
+ });
@@ -0,0 +1,77 @@
1
+ import { IntegTest } from '@aws-cdk/integ-tests-alpha';
2
+ import { App, CfnOutput, Stack } from 'aws-cdk-lib';
3
+ import * as cloudwatch from 'aws-cdk-lib/aws-cloudwatch';
4
+ import * as iam from 'aws-cdk-lib/aws-iam';
5
+ import * as rds from 'aws-cdk-lib/aws-rds';
6
+
7
+ const app = new App();
8
+ const instanceIdentifier = 'test-instance-lookup';
9
+
10
+ const stackLookup = new Stack(app, 'aws-cdk-rds-instance-lookup', {
11
+ env: {
12
+ account: process.env.CDK_INTEG_ACCOUNT ?? process.env.CDK_DEFAULT_ACCOUNT,
13
+ region: process.env.CDK_INTEG_REGION ?? process.env.CDK_DEFAULT_REGION,
14
+ },
15
+ });
16
+
17
+ const lookedUpInstance = rds.DatabaseInstance.fromLookup(stackLookup, 'LookedUpInstance', {
18
+ instanceIdentifier,
19
+ });
20
+
21
+ new CfnOutput(stackLookup, 'LookedUpInstanceEndpoint', {
22
+ value: lookedUpInstance.instanceEndpoint.socketAddress,
23
+ });
24
+
25
+ new CfnOutput(stackLookup, 'LookedUpInstanceIdentifier', {
26
+ value: lookedUpInstance.instanceIdentifier,
27
+ });
28
+
29
+ new CfnOutput(stackLookup, 'LookedUpInstanceResourceIdentifier', {
30
+ value: lookedUpInstance.instanceResourceId ?? 'undefined',
31
+ });
32
+
33
+ new CfnOutput(stackLookup, 'LookedUpInstanceArn', {
34
+ value: lookedUpInstance.instanceArn,
35
+ });
36
+
37
+ new CfnOutput(stackLookup, 'SecurityGroupIds', {
38
+ value: lookedUpInstance.connections.securityGroups.map(sg => sg.securityGroupId).join(','),
39
+ });
40
+
41
+ // test grant
42
+ const dbAccessRole = new iam.Role(stackLookup, 'DbAccessRole', {
43
+ assumedBy: new iam.ServicePrincipal('ec2.amazonaws.com'),
44
+ description: 'Role for accessing the RDS instance via IAM authentication',
45
+ });
46
+
47
+ lookedUpInstance.grantConnect(dbAccessRole, 'admin');
48
+
49
+ // test metric
50
+ lookedUpInstance.metricCPUUtilization().createAlarm(stackLookup, 'HighCPUAlarm', {
51
+ threshold: 90,
52
+ evaluationPeriods: 3,
53
+ alarmDescription: 'Database CPU utilization is high',
54
+ comparisonOperator: cloudwatch.ComparisonOperator.GREATER_THAN_THRESHOLD,
55
+ });
56
+
57
+ lookedUpInstance.metricFreeableMemory().createAlarm(stackLookup, 'LowMemoryAlarm', {
58
+ threshold: 100 * 1024 * 1024,
59
+ evaluationPeriods: 3,
60
+ alarmDescription: 'Database is running low on memory',
61
+ comparisonOperator: cloudwatch.ComparisonOperator.LESS_THAN_THRESHOLD,
62
+ });
63
+
64
+ new IntegTest(app, 'integ-rds-instance-from-lookup', {
65
+ testCases: [stackLookup],
66
+ enableLookups: true,
67
+ stackUpdateWorkflow: false,
68
+ hooks: {
69
+ preDeploy: [
70
+ `aws rds create-db-instance --db-instance-identifier ${instanceIdentifier} --engine mysql --engine-version 8.0.42 --master-username admin --master-user-password Admin1234 --allocated-storage 20 --db-instance-class db.t3.micro --enable-iam-database-authentication`,
71
+ `aws rds wait db-instance-available --db-instance-identifier ${instanceIdentifier}`,
72
+ ],
73
+ postDeploy: [
74
+ `aws rds delete-db-instance --db-instance-identifier ${instanceIdentifier} --skip-final-snapshot`,
75
+ ],
76
+ },
77
+ });
@@ -0,0 +1,36 @@
1
+ import * as ec2 from 'aws-cdk-lib/aws-ec2';
2
+ import { App, RemovalPolicy, Stack } from 'aws-cdk-lib';
3
+ import * as integ from '@aws-cdk/integ-tests-alpha';
4
+ import * as rds from 'aws-cdk-lib/aws-rds';
5
+
6
+ const app = new App();
7
+ const stack = new Stack(app, 'cdk-rds-proxy-endpoint');
8
+
9
+ const vpc = new ec2.Vpc(stack, 'vpc', { maxAzs: 2, restrictDefaultSecurityGroup: false });
10
+
11
+ const dbInstance = new rds.DatabaseInstance(stack, 'dbInstance', {
12
+ engine: rds.DatabaseInstanceEngine.postgres({
13
+ version: rds.PostgresEngineVersion.VER_17_5,
14
+ }),
15
+ instanceType: ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE3, ec2.InstanceSize.MEDIUM),
16
+ vpc,
17
+ removalPolicy: RemovalPolicy.DESTROY,
18
+ });
19
+
20
+ const dbProxy = new rds.DatabaseProxy(stack, 'dbProxy', {
21
+ secrets: [dbInstance.secret!],
22
+ proxyTarget: rds.ProxyTarget.fromInstance(dbInstance),
23
+ vpc,
24
+ });
25
+
26
+ const securityGroup = ec2.SecurityGroup.fromSecurityGroupId(stack, 'SecurityGroup', vpc.vpcDefaultSecurityGroup);
27
+
28
+ dbProxy.addEndpoint('dbProxyEndpoint', {
29
+ vpc,
30
+ targetRole: rds.ProxyEndpointTargetRole.READ_ONLY,
31
+ securityGroups: [securityGroup],
32
+ });
33
+
34
+ new integ.IntegTest(app, 'cdk-rds-proxy-endpoint-integ', {
35
+ testCases: [stack],
36
+ });
@@ -134,6 +134,30 @@ new route53.AaaaRecord(this, 'Alias', {
134
134
  });
135
135
  ```
136
136
 
137
+ To add an HTTPS record:
138
+
139
+ ``` ts
140
+ import * as cloudfront from 'aws-cdk-lib/aws-cloudfront';
141
+
142
+ declare const myZone: route53.HostedZone;
143
+ declare const distribution: cloudfront.CloudFrontWebDistribution;
144
+ // Alias to CloudFront target
145
+ new route53.HttpsRecord(this, 'HttpsRecord-CloudFrontAlias', {
146
+ zone: myZone,
147
+ target: route53.RecordTarget.fromAlias(new targets.CloudFrontTarget(distribution)),
148
+ });
149
+ // ServiceMode (priority >= 1)
150
+ new route53.HttpsRecord(this, 'HttpsRecord-ServiceMode', {
151
+ zone: myZone,
152
+ values: [route53.HttpsRecordValue.service({ alpn: [route53.Alpn.H3, route53.Alpn.H2] })],
153
+ });
154
+ // AliasMode (priority = 0)
155
+ new route53.HttpsRecord(this, 'HttpsRecord-AliasMode', {
156
+ zone: myZone,
157
+ values: [route53.HttpsRecordValue.alias('service.example.com')],
158
+ });
159
+ ```
160
+
137
161
  [Geolocation routing](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-geo.html) can be enabled for continent, country or subdivision:
138
162
 
139
163
  ```ts
@@ -343,40 +367,40 @@ const crossAccountRole = new iam.Role(this, 'CrossAccountRole', {
343
367
  roleName: 'MyDelegationRole',
344
368
  // The other account
345
369
  assumedBy: new iam.AccountPrincipal('12345678901'),
346
- // You can scope down this role policy to be least privileged.
347
- // If you want the other account to be able to manage specific records,
348
- // you can scope down by resource and/or normalized record names
349
- inlinePolicies: {
350
- crossAccountPolicy: new iam.PolicyDocument({
351
- statements: [
352
- new iam.PolicyStatement({
353
- sid: 'ListHostedZonesByName',
354
- effect: iam.Effect.ALLOW,
355
- actions: ['route53:ListHostedZonesByName'],
356
- resources: ['*'],
357
- }),
358
- new iam.PolicyStatement({
359
- sid: 'GetHostedZoneAndChangeResourceRecordSets',
360
- effect: iam.Effect.ALLOW,
361
- actions: ['route53:GetHostedZone', 'route53:ChangeResourceRecordSets'],
362
- // This example assumes the RecordSet subdomain.somexample.com
363
- // is contained in the HostedZone
364
- resources: ['arn:aws:route53:::hostedzone/HZID00000000000000000'],
365
- conditions: {
366
- 'ForAllValues:StringLike': {
367
- 'route53:ChangeResourceRecordSetsNormalizedRecordNames': [
368
- 'subdomain.someexample.com',
369
- ],
370
- },
371
- },
372
- }),
373
- ],
374
- }),
375
- },
376
370
  });
377
371
  parentZone.grantDelegation(crossAccountRole);
378
372
  ```
379
373
 
374
+ To restrict the records that can be created with the delegation IAM role, use the optional `delegatedZoneNames` property in the delegation options,
375
+ which enforces the `route53:ChangeResourceRecordSetsNormalizedRecordNames` condition key for record names that match those hosted zone names.
376
+ The `delegatedZoneNames` list may only consist of hosted zones names that are subzones of the parent hosted zone.
377
+
378
+ If the delegated zone name contains an unresolved token,
379
+ it must resolve to a zone name that satisfies the requirements according to the documentation:
380
+ https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/specifying-conditions-route53.html#route53_rrset_conditionkeys_normalization
381
+
382
+ > All letters must be lowercase.
383
+ > The DNS name must be without the trailing dot.
384
+ > Characters other than a–z, 0–9, - (hyphen), _ (underscore), and . (period, as a delimiter between labels) must use escape codes in the format \three-digit octal code. For example, \052 is the octal code for character *.
385
+
386
+ This feature allows you to better follow the minimum permissions privilege principle:
387
+
388
+ ```ts
389
+ const parentZone = new route53.PublicHostedZone(this, 'HostedZone', {
390
+ zoneName: 'someexample.com',
391
+ });
392
+
393
+ declare const betaCrossAccountRole: iam.Role;
394
+ parentZone.grantDelegation(betaCrossAccountRole, {
395
+ delegatedZoneNames: ['beta.someexample.com'],
396
+ });
397
+
398
+ declare const prodCrossAccountRole: iam.Role;
399
+ parentZone.grantDelegation(prodCrossAccountRole, {
400
+ delegatedZoneNames: ['prod.someexample.com'],
401
+ });
402
+ ```
403
+
380
404
  In the account containing the child zone to be delegated:
381
405
 
382
406
  ```ts
@@ -516,7 +540,8 @@ const zone = route53.HostedZone.fromHostedZoneAttributes(this, 'MyZone', {
516
540
  ```
517
541
 
518
542
  Alternatively, use the `HostedZone.fromHostedZoneId` to import hosted zones if
519
- you know the ID and the retrieval for the `zoneName` is undesirable.
543
+ you know the ID and the retrieval for the `zoneName` is undesirable.
544
+ Note that any records created with a hosted zone obtained this way must have their name be fully qualified
520
545
 
521
546
  ```ts
522
547
  const zone = route53.HostedZone.fromHostedZoneId(this, 'MyZone', 'ZOJJZC49E0EPZ');
@@ -534,6 +559,18 @@ const zoneFromAttributes = route53.PublicHostedZone.fromPublicHostedZoneAttribut
534
559
  const zoneFromId = route53.PublicHostedZone.fromPublicHostedZoneId(this, 'MyZone', 'ZOJJZC49E0EPZ');
535
560
  ```
536
561
 
562
+ You can import a Private Hosted Zone with `PrivateHostedZone.fromPrivateHostedZoneId` and `PrivateHostedZone.fromPrivateHostedZoneAttributes` methods:
563
+
564
+ ```ts
565
+ const privateZoneFromAttributes = route53.PrivateHostedZone.fromPrivateHostedZoneAttributes(this, 'MyPrivateZone', {
566
+ zoneName: 'example.local',
567
+ hostedZoneId: 'ZOJJZC49E0EPZ',
568
+ });
569
+
570
+ // Does not know zoneName
571
+ const privateZoneFromId = route53.PrivateHostedZone.fromPrivateHostedZoneId(this, 'MyPrivateZone', 'ZOJJZC49E0EPZ');
572
+ ```
573
+
537
574
  You can use `CrossAccountZoneDelegationRecord` on imported Hosted Zones with the `grantDelegation` method:
538
575
 
539
576
  ```ts
@@ -23,7 +23,6 @@ class TestStack extends Stack {
23
23
  ttl: Duration.hours(2),
24
24
  zone: hostedZone,
25
25
  recordName: 'integ',
26
- deleteExisting: true,
27
26
  });
28
27
  newRecord.node.addDependency(existingRecord);
29
28
  }
@@ -0,0 +1,41 @@
1
+ import * as ec2 from 'aws-cdk-lib/aws-ec2';
2
+ import * as cdk from 'aws-cdk-lib';
3
+ import * as route53 from 'aws-cdk-lib/aws-route53';
4
+ import { PrivateHostedZone } from 'aws-cdk-lib/aws-route53';
5
+ import { ExpectedResult, IntegTest } from '@aws-cdk/integ-tests-alpha';
6
+
7
+ const app = new cdk.App();
8
+
9
+ const stack = new cdk.Stack(app, 'aws-cdk-route53-integ');
10
+
11
+ const vpc = new ec2.Vpc(stack, 'VPC', { maxAzs: 1, restrictDefaultSecurityGroup: false });
12
+
13
+ const privateZone = new PrivateHostedZone(stack, 'PrivateZone', {
14
+ zoneName: 'aws-cdk.dev', vpc,
15
+ });
16
+
17
+ const expectPrivateHostedZone = route53.PrivateHostedZone.fromHostedZoneAttributes(stack, 'ExpectPrivateHostedZone', {
18
+ hostedZoneId: privateZone.hostedZoneId,
19
+ zoneName: privateZone.zoneName,
20
+ });
21
+
22
+ const integTest = new IntegTest(app, 'AwsCdkRoute53IntegTest', {
23
+ testCases: [stack],
24
+ diffAssets: false,
25
+ });
26
+
27
+ const hostedZoneApiCall = integTest.assertions.awsApiCall('Route53', 'getHostedZone', {
28
+ Id: expectPrivateHostedZone.hostedZoneId,
29
+ });
30
+
31
+ hostedZoneApiCall.expect(
32
+ ExpectedResult.objectLike({
33
+ HostedZone: {
34
+ Id: expectPrivateHostedZone.hostedZoneId,
35
+ Name: expectPrivateHostedZone.zoneName,
36
+ },
37
+ }),
38
+ );
39
+
40
+ app.synth();
41
+