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
@@ -121,6 +121,9 @@ def is_complete(event, context):
121
121
  > Do not use this library if your threat model requires that you cannot trust actors who are able
122
122
  > to list StepFunction executions in your account.
123
123
 
124
+
125
+ > **Default behaviour change Note**: the Custom Resource Provider doesn't log anything by default. To enable logging for the Provider framework, toggle `disableWaiterStateMachineLogging` and `disableFrameworkLambdaLogging` depending on you requirement to see waiter state machine logs or provider framework lambda logs
126
+
124
127
  ### Handling Lifecycle Events: onEvent
125
128
 
126
129
  The user-defined `onEvent` AWS Lambda function is invoked whenever a resource
@@ -828,6 +831,62 @@ new cr.AwsCustomResource(this, 'CrossAccount', {
828
831
  });
829
832
  ```
830
833
 
834
+ #### Using External IDs for Enhanced Security
835
+
836
+ When assuming cross-account roles, you can specify an external ID to prevent the "confused deputy" problem. The external ID is a unique identifier provided by the third-party service that helps ensure the service is acting on behalf of the correct customer:
837
+
838
+ ```ts
839
+ const crossAccountRoleArn = 'arn:aws:iam::OTHERACCOUNT:role/CrossAccountRoleName';
840
+ const serviceExternalId = 'unique-secret-value-12345'; // External ID provided by the third party service. This value should be unique among the third-party service's customers.
841
+
842
+
843
+ new cr.AwsCustomResource(this, 'SecureCrossAccount', {
844
+ onCreate: {
845
+ assumedRoleArn: crossAccountRoleArn,
846
+ externalId: serviceExternalId, // Prevents confused deputy attacks
847
+ service: 'sts',
848
+ action: 'GetCallerIdentity',
849
+ physicalResourceId: cr.PhysicalResourceId.of('id'),
850
+ },
851
+ policy: cr.AwsCustomResourcePolicy.fromStatements([iam.PolicyStatement.fromJson({
852
+ Effect: "Allow",
853
+ Action: "sts:AssumeRole",
854
+ Resource: crossAccountRoleArn,
855
+ })]),
856
+ });
857
+ ```
858
+
859
+ The external ID can also be different for each lifecycle operation:
860
+
861
+ ```ts
862
+ declare const createRoleArn: string;
863
+ declare const updateRoleArn: string;
864
+
865
+ new cr.AwsCustomResource(this, 'MultiRoleSecure', {
866
+ onCreate: {
867
+ assumedRoleArn: createRoleArn,
868
+ externalId: 'create-secret-123',
869
+ service: 'ec2',
870
+ action: 'DescribeInstances',
871
+ physicalResourceId: cr.PhysicalResourceId.of('id'),
872
+ },
873
+ onUpdate: {
874
+ assumedRoleArn: updateRoleArn,
875
+ externalId: 'update-secret-456',
876
+ service: 'ec2',
877
+ action: 'DescribeInstances',
878
+ },
879
+ policy: cr.AwsCustomResourcePolicy.fromStatements([
880
+ new iam.PolicyStatement({
881
+ actions: ['sts:AssumeRole'],
882
+ resources: [createRoleArn, updateRoleArn],
883
+ }),
884
+ ]),
885
+ });
886
+ ```
887
+
888
+ For more information on external IDs and preventing confused deputy attacks, see the [AWS IAM User Guide](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html).
889
+
831
890
  #### Custom Resource Config
832
891
 
833
892
  **This feature is currently experimental**
@@ -121,7 +121,7 @@ const app = new cdk.App({
121
121
  },
122
122
  });
123
123
  const testStack = new AwsCdkSdkJsStack(app, 'aws-cdk-sdk-js-v3', {
124
- runtime: lambda.Runtime.NODEJS_18_X,
124
+ runtime: lambda.Runtime.NODEJS_20_X,
125
125
  });
126
126
  const integTest = new integ.IntegTest(app, 'AwsCustomResourceTest', {
127
127
  testCases: [testStack],
@@ -29,7 +29,7 @@ new lambda.Function(stack, 'nonCrLambda', {
29
29
  runtime: lambda.Runtime.NODEJS_20_X,
30
30
  });
31
31
 
32
- CustomResourceConfig.of(app).addLambdaRuntime(lambda.Runtime.NODEJS_18_X);
32
+ CustomResourceConfig.of(app).addLambdaRuntime(lambda.Runtime.NODEJS_20_X);
33
33
 
34
34
  new integ.IntegTest(app, 'integ-test-custom-resource-config-lambda-node-runtime', {
35
35
  testCases: [stack],
@@ -0,0 +1,80 @@
1
+ #!/usr/bin/env node
2
+ import * as iam from 'aws-cdk-lib/aws-iam';
3
+ import * as cdk from 'aws-cdk-lib';
4
+ import { IntegTest } from '@aws-cdk/integ-tests-alpha';
5
+ import { AwsCustomResource, AwsCustomResourcePolicy, PhysicalResourceId } from 'aws-cdk-lib/custom-resources';
6
+
7
+ /**
8
+ * Integration test for AwsCustomResource External ID support.
9
+ *
10
+ * This test demonstrates the use of external IDs when assuming roles
11
+ * in cross-account scenarios to prevent "confused deputy" attacks.
12
+ *
13
+ * Note: This test may introduce destructive changes to CDK metadata
14
+ * and Lambda function assets due to CDK version updates. These changes
15
+ * are expected and safe for integration testing purposes.
16
+ */
17
+
18
+ const app = new cdk.App({
19
+ postCliContext: {
20
+ // Disable CDK managed log groups to prevent Lambda changes
21
+ '@aws-cdk/aws-lambda:useCdkManagedLogGroup': false,
22
+ // Disable version reporting to prevent CDK metadata changes
23
+ '@aws-cdk/core:disableVersionReporting': true,
24
+ // Disable new style synthesis to maintain compatibility
25
+ '@aws-cdk/core:newStyleStackSynthesis': false,
26
+ // Use legacy asset bundling to prevent asset hash changes
27
+ '@aws-cdk/core:enableLegacyV2AssetKeys': true,
28
+ // Disable stack name validation to prevent naming conflicts
29
+ '@aws-cdk/core:stackRelativeExports': false,
30
+ },
31
+ });
32
+
33
+ const stack = new cdk.Stack(app, 'aws-custom-resource-external-id-test');
34
+
35
+ // Create a role that requires an external ID
36
+ const externalId = 'test-external-id-12345';
37
+ const roleWithExternalId = new iam.Role(stack, 'RoleWithExternalId', {
38
+ // Use a principal that can be used in integration tests
39
+ assumedBy: new iam.AccountPrincipal(cdk.Stack.of(stack).account),
40
+ externalIds: [externalId],
41
+ });
42
+
43
+ // Add the necessary permissions as managed policies to reduce template variability
44
+ roleWithExternalId.addToPolicy(
45
+ new iam.PolicyStatement({
46
+ actions: ['sts:GetCallerIdentity'],
47
+ resources: ['*'],
48
+ }),
49
+ );
50
+
51
+ // Test basic external ID usage
52
+ new AwsCustomResource(stack, 'ExternalIdTest', {
53
+ installLatestAwsSdk: false,
54
+ onCreate: {
55
+ assumedRoleArn: roleWithExternalId.roleArn,
56
+ externalId: externalId,
57
+ service: 'STS',
58
+ action: 'GetCallerIdentity',
59
+ physicalResourceId: PhysicalResourceId.of('external-id-test'),
60
+ },
61
+ policy: AwsCustomResourcePolicy.fromSdkCalls({ resources: [] }),
62
+ });
63
+
64
+ new IntegTest(app, 'AwsCustomResourceTest', {
65
+ testCases: [stack],
66
+ diffAssets: true,
67
+ allowDestroy: ['AWS::CDK::Metadata'],
68
+ cdkCommandOptions: {
69
+ deploy: {
70
+ args: {
71
+ rollback: false,
72
+ },
73
+ },
74
+ destroy: {
75
+ args: {
76
+ force: true,
77
+ },
78
+ },
79
+ },
80
+ });
@@ -15,7 +15,7 @@ const stack = new cdk.Stack(app, 'AwsCustomResourceInvokePayloadStack');
15
15
  const fn = new lambda.Function(stack, 'Function', {
16
16
  code: lambda.Code.fromInline("exports.handler = async () => { return { statusCode: 200, body: 'Hello World' }; };"),
17
17
  handler: 'index.handler',
18
- runtime: lambda.Runtime.NODEJS_18_X,
18
+ runtime: lambda.Runtime.NODEJS_20_X,
19
19
  });
20
20
 
21
21
  const testCr = new cr.AwsCustomResource(stack, 'ListLambdaFunctions', {
@@ -38,7 +38,7 @@ Flags come in three types:
38
38
  | [@aws-cdk/core:enablePartitionLiterals](#aws-cdkcoreenablepartitionliterals) | Make ARNs concrete if AWS partition is known | 2.38.0 | fix |
39
39
  | [@aws-cdk/aws-ecs:disableExplicitDeploymentControllerForCircuitBreaker](#aws-cdkaws-ecsdisableexplicitdeploymentcontrollerforcircuitbreaker) | Avoid setting the "ECS" deployment controller when adding a circuit breaker | 2.51.0 | fix |
40
40
  | [@aws-cdk/aws-events:eventsTargetQueueSameAccount](#aws-cdkaws-eventseventstargetqueuesameaccount) | Event Rules may only push to encrypted SQS queues in the same account | 2.51.0 | fix |
41
- | [@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName](#aws-cdkaws-iamimportedrolestacksafedefaultpolicyname) | Enable this feature to by default create default policy names for imported roles that depend on the stack the role is in. | 2.60.0 | fix |
41
+ | [@aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName](#aws-cdkaws-iamimportedrolestacksafedefaultpolicyname) | Enable this feature to create default policy names for imported roles that depend on the stack the role is in. | 2.60.0 | fix |
42
42
  | [@aws-cdk/aws-s3:serverAccessLogsUseBucketPolicy](#aws-cdkaws-s3serveraccesslogsusebucketpolicy) | Use S3 Bucket Policy instead of ACLs for Server Access Logging | 2.60.0 | fix |
43
43
  | [@aws-cdk/customresources:installLatestAwsSdkDefault](#aws-cdkcustomresourcesinstalllatestawssdkdefault) | Whether to install the latest SDK by default in AwsCustomResource | 2.60.0 | new default |
44
44
  | [@aws-cdk/aws-route53-patters:useCertificate](#aws-cdkaws-route53-pattersusecertificate) | Use the official `Certificate` resource instead of `DnsValidatedCertificate` | 2.61.0 | new default |
@@ -104,6 +104,12 @@ Flags come in three types:
104
104
  | [@aws-cdk/aws-s3:publicAccessBlockedByDefault](#aws-cdkaws-s3publicaccessblockedbydefault) | When enabled, setting any combination of options for BlockPublicAccess will automatically set true for any options not defined. | 2.196.0 | fix |
105
105
  | [@aws-cdk/aws-lambda:useCdkManagedLogGroup](#aws-cdkaws-lambdausecdkmanagedloggroup) | When enabled, CDK creates and manages loggroup for the lambda function | 2.200.0 | new default |
106
106
  | [@aws-cdk/aws-kms:applyImportedAliasPermissionsToPrincipal](#aws-cdkaws-kmsapplyimportedaliaspermissionstoprincipal) | Enable grant methods on Aliases imported by name to use kms:ResourceAliases condition | 2.202.0 | fix |
107
+ | [@aws-cdk/core:explicitStackTags](#aws-cdkcoreexplicitstacktags) | When enabled, stack tags need to be assigned explicitly on a Stack. | 2.205.0 | new default |
108
+ | [@aws-cdk/aws-signer:signingProfileNamePassedToCfn](#aws-cdkaws-signersigningprofilenamepassedtocfn) | Pass signingProfileName to CfnSigningProfile | 2.212.0 | fix |
109
+ | [@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener](#aws-cdkaws-ecs-patternssecgroupsdisablesimplicitopenlistener) | Disable implicit openListener when custom security groups are provided | 2.214.0 | new default |
110
+ | [@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId](#aws-cdkaws-ecs-patternsuniquetargetgroupid) | When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement | 2.221.0 | fix |
111
+ | [@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint](#aws-cdkaws-stepfunctions-taskshttpinvokedynamicjsonpathendpoint) | When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks. | 2.221.0 | fix |
112
+ | [@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault](#aws-cdkaws-elasticloadbalancingv2networkloadbalancerwithsecuritygroupbydefault) | When enabled, Network Load Balancer will be created with a security group by default. | 2.222.0 | new default |
107
113
 
108
114
  <!-- END table -->
109
115
 
@@ -115,6 +121,8 @@ The following json shows the current recommended set of flags, as `cdk init` wou
115
121
  ```json
116
122
  {
117
123
  "context": {
124
+ "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": true,
125
+ "@aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener": true,
118
126
  "@aws-cdk/aws-lambda:recognizeLayerVersion": true,
119
127
  "@aws-cdk/core:checkSecretUsage": true,
120
128
  "@aws-cdk/core:target-partitions": [
@@ -167,6 +175,7 @@ The following json shows the current recommended set of flags, as `cdk init` wou
167
175
  "@aws-cdk/aws-ecs:removeDefaultDeploymentAlarm": true,
168
176
  "@aws-cdk/custom-resources:logApiResponseDataPropertyTrueDefault": false,
169
177
  "@aws-cdk/aws-s3:keepNotificationInImportedBucket": false,
178
+ "@aws-cdk/core:explicitStackTags": true,
170
179
  "@aws-cdk/aws-ecs:enableImdsBlockingDeprecatedFeature": false,
171
180
  "@aws-cdk/aws-ecs:disableEcsImdsBlocking": true,
172
181
  "@aws-cdk/aws-ecs:reduceEc2FargateCloudWatchPermissions": true,
@@ -191,7 +200,9 @@ The following json shows the current recommended set of flags, as `cdk init` wou
191
200
  "@aws-cdk/s3-notifications:addS3TrustKeyPolicyForSnsSubscriptions": true,
192
201
  "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": true,
193
202
  "@aws-cdk/aws-s3:publicAccessBlockedByDefault": true,
194
- "@aws-cdk/aws-lambda:useCdkManagedLogGroup": true
203
+ "@aws-cdk/aws-lambda:useCdkManagedLogGroup": true,
204
+ "@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault": true,
205
+ "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": true
195
206
  }
196
207
  }
197
208
  ```
@@ -239,6 +250,7 @@ are migrating a v1 CDK project to v2, explicitly set any of these flags which do
239
250
  | [@aws-cdk/core:aspectStabilization](#aws-cdkcoreaspectstabilization) | When enabled, a stabilization loop will be run when invoking Aspects during synthesis. | config | | `false` | `true` |
240
251
  | [@aws-cdk/pipelines:reduceStageRoleTrustScope](#aws-cdkpipelinesreducestageroletrustscope) | Remove the root account principal from Stage addActions trust policy | new default | | `false` | `true` |
241
252
  | [@aws-cdk/pipelines:reduceCrossAccountActionRoleTrustScope](#aws-cdkpipelinesreducecrossaccountactionroletrustscope) | When enabled, scopes down the trust policy for the cross-account action role | new default | | `false` | `true` |
253
+ | [@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint](#aws-cdkaws-stepfunctions-taskshttpinvokedynamicjsonpathendpoint) | When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks. | fix | | `false` | `true` |
242
254
 
243
255
  <!-- END diff -->
244
256
 
@@ -867,7 +879,7 @@ always apply, regardless of the value of this flag.
867
879
 
868
880
  ### @aws-cdk/aws-iam:importedRoleStackSafeDefaultPolicyName
869
881
 
870
- *Enable this feature to by default create default policy names for imported roles that depend on the stack the role is in.*
882
+ *Enable this feature to create default policy names for imported roles that depend on the stack the role is in.*
871
883
 
872
884
  Flag type: Backwards incompatible bugfix
873
885
 
@@ -890,7 +902,7 @@ This new implementation creates default policy names based on the constructs nod
890
902
 
891
903
  Flag type: Backwards incompatible bugfix
892
904
 
893
- Enable this feature flag to use S3 Bucket Policy for granting permission fo Server Access Logging
905
+ Enable this feature flag to use S3 Bucket Policy for granting permission for Server Access Logging
894
906
  rather than using the canned `LogDeliveryWrite` ACL. ACLs do not work when Object Ownership is
895
907
  enabled on the bucket.
896
908
 
@@ -1270,7 +1282,7 @@ Set this flag to false for existing mount targets.
1270
1282
  Flag type: New default behavior
1271
1283
 
1272
1284
  If this is set, and a `runtime` prop is not passed to, Lambda NodeJs
1273
- functions will us the latest version of the runtime provided by the Lambda
1285
+ functions will use the latest version of the runtime provided by the Lambda
1274
1286
  service. Do not use this if you your lambda function is reliant on dependencies
1275
1287
  shipped as part of the runtime environment.
1276
1288
 
@@ -1492,7 +1504,7 @@ When this feature flag is disabled, it will keep the root account principal in t
1492
1504
 
1493
1505
  Flag type: New default behavior
1494
1506
 
1495
- When this featuer flag is enabled, remove the default deployment alarm settings when creating a AWS ECS service.
1507
+ When this feature flag is enabled, remove the default deployment alarm settings when creating a AWS ECS service.
1496
1508
 
1497
1509
 
1498
1510
  | Since | Unset behaves like | Recommended value |
@@ -1743,8 +1755,8 @@ the latest Amazon Linux 2023 version will be used instead of Amazon Linux 2.
1743
1755
 
1744
1756
  Flag type: Configuration option
1745
1757
 
1746
- Currently, when Aspects are invoked in one single pass of the construct tree.
1747
- This means that the Aspects that create other Aspects are not run and Aspects that create new nodes of the tree sometimes do not inherit their parent Aspects.
1758
+ Previously, Aspects were invoked in a single pass of the construct tree.
1759
+ This meant that Aspects which created other Aspects were not run, and Aspects that created new nodes in the tree sometimes did not inherit their parent Aspects.
1748
1760
 
1749
1761
  When this feature flag is enabled, a stabilization loop is run to recurse the construct tree multiple times when invoking Aspects.
1750
1762
 
@@ -1983,7 +1995,7 @@ When enabled, table replica will be default to the removal policy of source tabl
1983
1995
 
1984
1996
  Flag type: New default behavior
1985
1997
 
1986
- When this feature flag is enabled, the SDK API call response to desribe user pool client values will be logged in the custom
1998
+ When this feature flag is enabled, the SDK API call response to describe user pool client values will be logged in the custom
1987
1999
  resource lambda function logs.
1988
2000
 
1989
2001
  When this feature flag is disabled, the SDK API call response to describe user pool client values will not be logged in the custom
@@ -2162,7 +2174,7 @@ When this feature flag is disabled, a loggroup is created by Lambda service on f
2162
2174
  of the function (existing behavior).
2163
2175
  LogGroups created in this way do not support Tag propagation, Property Injectors, Aspects.
2164
2176
 
2165
- DO NOT ENABLE: If you have and existing app defining a lambda function and
2177
+ DO NOT ENABLE: If you have an existing app defining a lambda function and
2166
2178
  have not supplied a logGroup or logRetention prop and your lambda function has
2167
2179
  executed at least once, the logGroup has been already created with the same name
2168
2180
  so your deployment will start failing.
@@ -2196,4 +2208,134 @@ When disabled, grant calls on imported aliases will be dropped (no-op) to mainta
2196
2208
  **Compatibility with old behavior:** Remove calls to the grant* methods on the aliases referenced by name
2197
2209
 
2198
2210
 
2211
+ ### @aws-cdk/core:explicitStackTags
2212
+
2213
+ *When enabled, stack tags need to be assigned explicitly on a Stack.*
2214
+
2215
+ Flag type: New default behavior
2216
+
2217
+ Without this feature flag enabled, if tags are added to a Stack using
2218
+ `Tags.of(scope).add(...)`, they will be added to both the stack and all resources
2219
+ in the stack template.
2220
+
2221
+ That leads to the tags being applied twice: once in the template, and once
2222
+ again automatically by CloudFormation, which will apply all stack tags to
2223
+ all resources in the stack. This leads to loss of control, as the
2224
+ `excludeResourceTypes` option of the Tags API will not have any effect.
2225
+
2226
+ With this flag enabled, tags added to a stack using `Tags.of(...)` are ignored,
2227
+ and Stack tags must be configured explicitly on the Stack object.
2228
+
2229
+
2230
+ | Since | Unset behaves like | Recommended value |
2231
+ | ----- | ----- | ----- |
2232
+ | (not in v1) | | |
2233
+ | 2.205.0 | `false` | `true` |
2234
+
2235
+ **Compatibility with old behavior:** Configure stack-level tags using `new Stack(..., { tags: { ... } })`.
2236
+
2237
+
2238
+ ### @aws-cdk/aws-signer:signingProfileNamePassedToCfn
2239
+
2240
+ *Pass signingProfileName to CfnSigningProfile*
2241
+
2242
+ Flag type: Backwards incompatible bugfix
2243
+
2244
+ When enabled, the `signingProfileName` property is passed to the L1 `CfnSigningProfile` construct,
2245
+ which ensures that the AWS Signer profile is created with the specified name.
2246
+
2247
+ When disabled, the `signingProfileName` is not passed to CloudFormation, maintaining backward
2248
+ compatibility with existing deployments where CloudFormation auto-generated profile names.
2249
+
2250
+ This feature flag is needed because enabling it can cause existing signing profiles to be
2251
+ replaced during deployment if a `signingProfileName` was specified but not previously used
2252
+ in the CloudFormation template.
2253
+
2254
+
2255
+ | Since | Unset behaves like | Recommended value |
2256
+ | ----- | ----- | ----- |
2257
+ | (not in v1) | | |
2258
+ | 2.212.0 | `false` | `true` |
2259
+
2260
+
2261
+ ### @aws-cdk/aws-ecs-patterns:secGroupsDisablesImplicitOpenListener
2262
+
2263
+ *Disable implicit openListener when custom security groups are provided*
2264
+
2265
+ Flag type: New default behavior
2266
+
2267
+ ApplicationLoadBalancedServiceBase currently defaults openListener to true, which creates
2268
+ security group rules allowing ingress from 0.0.0.0/0. This can be a security risk when
2269
+ users provide custom security groups on their load balancer, expecting those to be the
2270
+ only ingress rules.
2271
+
2272
+ If this flag is not set, openListener will always default to true for backward compatibility.
2273
+ If true, openListener will default to false when custom security groups are detected on the
2274
+ load balancer, and true otherwise. Users can still explicitly set openListener: true to
2275
+ override this behavior.
2276
+
2277
+
2278
+ | Since | Unset behaves like | Recommended value |
2279
+ | ----- | ----- | ----- |
2280
+ | (not in v1) | | |
2281
+ | 2.214.0 | `false` | `true` |
2282
+
2283
+ **Compatibility with old behavior:** You can pass `openListener: true` explicitly to maintain the old behavior.
2284
+
2285
+
2286
+ ### @aws-cdk/aws-ecs-patterns:uniqueTargetGroupId
2287
+
2288
+ *When enabled, ECS patterns will generate unique target group IDs to prevent conflicts during load balancer replacement*
2289
+
2290
+ Flag type: Backwards incompatible bugfix
2291
+
2292
+ When this feature flag is enabled, ECS patterns will generate unique target group IDs that include
2293
+ both the load balancer type (public/private) and load balancer name. This prevents CloudFormation
2294
+ conflicts when switching between public and private load balancers or when changing load balancer names.
2295
+
2296
+ Without this flag, target groups use generic IDs like 'ECS' which can cause conflicts when the
2297
+ underlying load balancer is replaced due to changes in internetFacing or loadBalancerName properties.
2298
+
2299
+ This is a breaking change as it will cause target group replacement when the flag is enabled.
2300
+
2301
+
2302
+ | Since | Unset behaves like | Recommended value |
2303
+ | ----- | ----- | ----- |
2304
+ | (not in v1) | | |
2305
+ | 2.221.0 | `false` | `true` |
2306
+
2307
+
2308
+ ### @aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint
2309
+
2310
+ *When enabled, allows using a dynamic apiEndpoint with JSONPath format in HttpInvoke tasks.*
2311
+
2312
+ Flag type: Backwards incompatible bugfix
2313
+
2314
+ When this feature flag is enabled, the JSONPath apiEndpoint value will be resolved dynamically at runtime, while slightly increasing the size of the state machine definition.
2315
+ When disabled, the JSONPath apiEndpoint property will only support a static string value.
2316
+
2317
+
2318
+ | Since | Unset behaves like | Recommended value |
2319
+ | ----- | ----- | ----- |
2320
+ | (not in v1) | | |
2321
+ | 2.221.0 | `true` | `true` |
2322
+
2323
+
2324
+ ### @aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefault
2325
+
2326
+ *When enabled, Network Load Balancer will be created with a security group by default.*
2327
+
2328
+ Flag type: New default behavior
2329
+
2330
+ When this feature flag is enabled, Network Load Balancer will be created with a security group by default.
2331
+
2332
+
2333
+ | Since | Unset behaves like | Recommended value |
2334
+ | ----- | ----- | ----- |
2335
+ | (not in v1) | | |
2336
+ | 2.222.0 | `false` | `true` |
2337
+
2338
+ **Compatibility with old behavior:** Disable the feature flag to create Network Load Balancer without a security group by default.
2339
+
2340
+
2199
2341
  <!-- END details -->
@@ -760,4 +760,58 @@ _cdk.json_
760
760
  "context": {
761
761
  "@aws-cdk/aws-ec2:requirePrivateSubnetsForEgressOnlyInternetGateway": true
762
762
  }
763
- }
763
+ }
764
+ ```
765
+
766
+ * `@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint`
767
+
768
+ When this feature flag is enabled, the JSONPath apiEndpoint value will be resolved dynamically at runtime, while slightly increasing the size of the state machine definition.
769
+ When disabled, the JSONPath apiEndpoint property will only support a static string value.
770
+
771
+ _cdk.json
772
+
773
+ ```json
774
+ {
775
+ "context": {
776
+ "@aws-cdk/aws-stepfunctions-tasks:httpInvokeDynamicJsonPathEndpoint": true
777
+ }
778
+ }
779
+ ```
780
+
781
+ * `@aws-cdk/aws-signer:signingProfileNamePassedToCfn`
782
+
783
+ When this feature flag is enabled, the `signingProfileName` property is passed to the L1 `CfnSigningProfile` construct,
784
+ which ensures that the AWS Signer profile is created with the specified name.
785
+
786
+ When this feature flag is disabled, the `signingProfileName` is not passed to CloudFormation, maintaining backward
787
+ compatibility with existing deployments where CloudFormation auto-generated profile names.
788
+
789
+ This feature flag is needed because enabling it can cause existing signing profiles to be
790
+ replaced during deployment if a `signingProfileName` was specified but not previously used
791
+ in the CloudFormation template.
792
+
793
+ _cdk.json_
794
+
795
+ ```json
796
+ {
797
+ "context": {
798
+ "@aws-cdk/aws-signer:signingProfileNamePassedToCfn": true
799
+ }
800
+ }
801
+ ```
802
+
803
+ * `@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId`
804
+
805
+ When enabled, ECS patterns will generate unique target group IDs that include the load balancer name and type (public/private). This prevents CloudFormation conflicts when switching between public and private load balancers.
806
+
807
+ Without this flag, switching an ApplicationLoadBalancedFargateService from public to private (or vice versa) fails with "target group cannot be associated with more than one load balancer" error.
808
+
809
+ _cdk.json_
810
+
811
+ ```json
812
+ {
813
+ "context": {
814
+ "@aws-cdk/aws-ecs-patterns:uniqueTargetGroupId": true
815
+ }
816
+ }
817
+ ```
@@ -0,0 +1,33 @@
1
+ CDK Resource Interfaces
2
+ =======================
3
+
4
+ This module contains resource interfaces for all AWS service resources.
5
+
6
+ These are interfaces that look like this:
7
+
8
+ ```
9
+ /**
10
+ * Indicates that this resource can be referenced as a Bucket.
11
+ */
12
+ interface IBucketRef {
13
+ /**
14
+ * A reference to a Bucket resource.
15
+ */
16
+ readonly bucketRef: BucketReference;
17
+ }
18
+
19
+ interface BucketReference {
20
+ /**
21
+ * The BucketName of the Bucket resource.
22
+ */
23
+ readonly bucketName: string;
24
+
25
+ /**
26
+ * The ARN of the Bucket resource.
27
+ */
28
+ readonly bucketArn: string;
29
+ }
30
+ ```
31
+
32
+ These are in a separate submodule so that they can be referenced from all other
33
+ service submodules without introducing cyclic dependencies between them.
@@ -739,6 +739,10 @@ new pipelines.CodeBuildStep('Synth', {
739
739
  buildEnvironment: {
740
740
  computeType: codebuild.ComputeType.LARGE,
741
741
  privileged: true,
742
+ dockerServer: {
743
+ computeType: codebuild.DockerServerComputeType.SMALL,
744
+ securityGroups: [mySecurityGroup],
745
+ },
742
746
  },
743
747
  timeout: Duration.minutes(90),
744
748
  fileSystemLocations: [
@@ -53,8 +53,11 @@ class PipelineStack extends Stack {
53
53
  dockerEnabledForSynth: true,
54
54
  codeBuildDefaults: {
55
55
  buildEnvironment: {
56
- buildImage: codebuild.LinuxArmBuildImage.AMAZON_LINUX_2_STANDARD_3_0,
56
+ buildImage: codebuild.LinuxBuildImage.AMAZON_LINUX_2023_5,
57
57
  computeType: codebuild.ComputeType.SMALL,
58
+ dockerServer: {
59
+ computeType: codebuild.DockerServerComputeType.SMALL,
60
+ },
58
61
  },
59
62
  cache: codebuild.Cache.local(codebuild.LocalCacheMode.DOCKER_LAYER),
60
63
  },
@@ -0,0 +1,105 @@
1
+ import { App, Stack, StackProps, DefaultStackSynthesizer, Stage, StageProps, RemovalPolicy } from 'aws-cdk-lib';
2
+ import { Construct } from 'constructs';
3
+ import * as path from 'path';
4
+ import * as s3 from 'aws-cdk-lib/aws-s3';
5
+ import * as pipelines from 'aws-cdk-lib/pipelines';
6
+ import * as lambda from 'aws-cdk-lib/aws-lambda';
7
+ import { IntegTest } from '@aws-cdk/integ-tests-alpha';
8
+
9
+ /**
10
+ * Notes on how to run this integ test
11
+ * Replace 123456789012 with your own account number
12
+ * Your account should be bootstrapped for us-east-1 with a custom qualifier 'dev'
13
+ * cdk bootstrap aws://123456789012/us-east-1 --qualifier dev --toolkit-stack-name CDKToolkitDev
14
+ **/
15
+
16
+ export class PipelineStack extends Stack {
17
+ constructor(scope: Construct, id: string, props: StackProps) {
18
+ super(scope, id, props);
19
+
20
+ const bucket = new s3.Bucket(this, 'assetsBucket', {
21
+ removalPolicy: RemovalPolicy.DESTROY,
22
+ autoDeleteObjects: true,
23
+ });
24
+
25
+ const pipeline = new pipelines.CodePipeline(
26
+ this,
27
+ 'Pipeline', {
28
+ synth: new pipelines.ShellStep('Synth', {
29
+ input: pipelines.CodePipelineSource.s3(
30
+ bucket,
31
+ 'cdk-sample.zip',
32
+ ),
33
+ commands: ['npm ci', 'npm run build', 'npx cdk synth'],
34
+ }),
35
+ crossAccountKeys: true,
36
+ });
37
+
38
+ const stagingStage = new DeploymentStage(
39
+ this, 'Staging', {
40
+ environmentAbbreviation: 'dev',
41
+ region: 'us-east-1',
42
+ });
43
+ pipeline.addStage(stagingStage);
44
+
45
+ const productionStage = new DeploymentStage(
46
+ this, 'Production', {
47
+ environmentAbbreviation: 'prd',
48
+ region: 'us-east-1',
49
+ });
50
+ pipeline.addStage(productionStage);
51
+ }
52
+ }
53
+
54
+ export class LambdaStack extends Stack {
55
+ constructor(scope: Construct, id: string, props?: StackProps) {
56
+ super(scope, id, props);
57
+ new lambda.Function(this, 'LambdaFN', {
58
+ runtime: lambda.Runtime.PYTHON_3_10,
59
+ handler: 'index.handler',
60
+ code: lambda.Code.fromAsset(path.join(__dirname, 'testhelpers', 'assets')),
61
+ });
62
+ }
63
+ }
64
+
65
+ export interface DeploymentStageProps extends StageProps {
66
+ environmentAbbreviation: string;
67
+ region: string;
68
+ }
69
+
70
+ export class DeploymentStage extends Stage {
71
+ constructor(scope: Construct, id: string, props: DeploymentStageProps) {
72
+ super(scope, id, props);
73
+
74
+ var synth = new DefaultStackSynthesizer();
75
+ if (props.environmentAbbreviation == 'dev') {
76
+ synth = new DefaultStackSynthesizer({
77
+ qualifier: 'dev',
78
+ });
79
+ }
80
+ new LambdaStack(
81
+ this, `${props.environmentAbbreviation}-lambda-stack`, {
82
+ env: {
83
+ region: props.region,
84
+ },
85
+ synthesizer: synth,
86
+ },
87
+ );
88
+ }
89
+ }
90
+
91
+ const app = new App({
92
+ postCliContext: {
93
+ '@aws-cdk/core:newStyleStackSynthesis': '1',
94
+ '@aws-cdk/aws-codepipeline:defaultPipelineTypeToV2': true,
95
+ '@aws-cdk/pipelines:reduceStageRoleTrustScope': true,
96
+ },
97
+ });
98
+ const env = { region: 'us-east-1' };
99
+ const stack = new PipelineStack(app, 'pipeline-asset-stack', { env });
100
+ new IntegTest(app, 'PipelineAssetsTest', {
101
+ testCases: [stack],
102
+ diffAssets: true,
103
+ });
104
+
105
+ app.synth();