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
@@ -0,0 +1,27 @@
1
+ import { App, Stack } from 'aws-cdk-lib';
2
+ import * as integ from '@aws-cdk/integ-tests-alpha';
3
+ import * as sfn from 'aws-cdk-lib/aws-stepfunctions';
4
+ import * as lambda from 'aws-cdk-lib/aws-lambda';
5
+ import * as cdk from 'aws-cdk-lib';
6
+ import * as tasks from 'aws-cdk-lib/aws-stepfunctions-tasks';
7
+
8
+ const app = new App();
9
+ const stack = new Stack(app, 'aws-cdk-sfn-evaluate-expression-arm64-integ');
10
+
11
+ const evaluateExpression = new tasks.EvaluateExpression(stack, 'EvaluateExpression', {
12
+ expression: '$.a + $.b',
13
+ architecture: lambda.Architecture.ARM_64,
14
+ });
15
+
16
+ const sm = new sfn.StateMachine(stack, 'StateMachine', {
17
+ definitionBody: sfn.DefinitionBody.fromChainable(evaluateExpression),
18
+ timeout: cdk.Duration.seconds(30),
19
+ });
20
+
21
+ new cdk.CfnOutput(stack, 'stateMachineArn', {
22
+ value: sm.stateMachineArn,
23
+ });
24
+
25
+ new integ.IntegTest(app, 'EvaluateExpressionArm64Test', {
26
+ testCases: [stack],
27
+ });
@@ -0,0 +1,25 @@
1
+ import { App, Stack } from 'aws-cdk-lib';
2
+ import * as integ from '@aws-cdk/integ-tests-alpha';
3
+ import * as sfn from 'aws-cdk-lib/aws-stepfunctions';
4
+ import * as cdk from 'aws-cdk-lib';
5
+ import * as tasks from 'aws-cdk-lib/aws-stepfunctions-tasks';
6
+
7
+ const app = new App();
8
+ const stack = new Stack(app, 'aws-cdk-sfn-evaluate-expression-default-integ');
9
+
10
+ const evaluateExpression = new tasks.EvaluateExpression(stack, 'EvaluateExpression', {
11
+ expression: '$.a + $.b',
12
+ });
13
+
14
+ const sm = new sfn.StateMachine(stack, 'StateMachine', {
15
+ definitionBody: sfn.DefinitionBody.fromChainable(evaluateExpression),
16
+ timeout: cdk.Duration.seconds(30),
17
+ });
18
+
19
+ new cdk.CfnOutput(stack, 'stateMachineArn', {
20
+ value: sm.stateMachineArn,
21
+ });
22
+
23
+ new integ.IntegTest(app, 'EvaluateExpressionDefaultTest', {
24
+ testCases: [stack],
25
+ });
@@ -0,0 +1,35 @@
1
+ import * as lambda from 'aws-cdk-lib/aws-lambda';
2
+ import * as sfn from 'aws-cdk-lib/aws-stepfunctions';
3
+ import * as cdk from 'aws-cdk-lib';
4
+ import * as integ from '@aws-cdk/integ-tests-alpha';
5
+ import * as tasks from 'aws-cdk-lib/aws-stepfunctions-tasks';
6
+
7
+ const app = new cdk.App();
8
+ const stack = new cdk.Stack(app, 'aws-cdk-sfn-evaluate-expression-mixed-arch-integ');
9
+
10
+ const evalTaskArm = new tasks.EvaluateExpression(stack, 'EvalExpressionArm', {
11
+ expression: '$.a + $.b',
12
+ runtime: lambda.Runtime.NODEJS_20_X,
13
+ architecture: lambda.Architecture.ARM_64,
14
+ });
15
+
16
+ const evalTaskX86 = new tasks.EvaluateExpression(stack, 'EvalExpressionX86', {
17
+ expression: '$.a * $.b',
18
+ runtime: lambda.Runtime.NODEJS_20_X,
19
+ architecture: lambda.Architecture.X86_64,
20
+ });
21
+
22
+ const definition = new sfn.Pass(stack, 'Start', {
23
+ result: sfn.Result.fromObject({ a: 3, b: 4 }),
24
+ }).next(new sfn.Parallel(stack, 'ParallelEval')
25
+ .branch(evalTaskArm)
26
+ .branch(evalTaskX86),
27
+ );
28
+
29
+ new sfn.StateMachine(stack, 'StateMachine', {
30
+ definitionBody: sfn.DefinitionBody.fromChainable(definition),
31
+ });
32
+
33
+ new integ.IntegTest(app, 'EvaluateExpressionMixedArchTest', {
34
+ testCases: [stack],
35
+ });
@@ -0,0 +1,27 @@
1
+ import { App, Stack, StackProps } from 'aws-cdk-lib';
2
+ import * as integ from '@aws-cdk/integ-tests-alpha';
3
+ import { Construct } from 'constructs';
4
+ import * as sfn from 'aws-cdk-lib/aws-stepfunctions';
5
+ import * as lambda from 'aws-cdk-lib/aws-lambda';
6
+ import * as tasks from 'aws-cdk-lib/aws-stepfunctions-tasks';
7
+
8
+ class TestStack extends Stack {
9
+ constructor(scope: Construct, id: string, props?: StackProps) {
10
+ super(scope, id, props);
11
+
12
+ const task = new tasks.EvaluateExpression(this, 'Task', {
13
+ expression: '$.a + $.b',
14
+ runtime: lambda.Runtime.NODEJS_22_X,
15
+ });
16
+
17
+ new sfn.StateMachine(this, 'StateMachine', {
18
+ definition: task,
19
+ });
20
+ }
21
+ }
22
+
23
+ const app = new App();
24
+
25
+ new integ.IntegTest(app, 'EvaluateExpressionNodejs22', {
26
+ testCases: [new TestStack(app, 'evaluate-expression-nodejs22')],
27
+ });
@@ -0,0 +1,27 @@
1
+ import { App, Stack } from 'aws-cdk-lib';
2
+ import * as integ from '@aws-cdk/integ-tests-alpha';
3
+ import * as sfn from 'aws-cdk-lib/aws-stepfunctions';
4
+ import * as lambda from 'aws-cdk-lib/aws-lambda';
5
+ import * as cdk from 'aws-cdk-lib';
6
+ import * as tasks from 'aws-cdk-lib/aws-stepfunctions-tasks';
7
+
8
+ const app = new App();
9
+ const stack = new Stack(app, 'aws-cdk-sfn-evaluate-expression-x86-integ');
10
+
11
+ const evaluateExpression = new tasks.EvaluateExpression(stack, 'EvaluateExpression', {
12
+ expression: '$.a + $.b',
13
+ architecture: lambda.Architecture.X86_64,
14
+ });
15
+
16
+ const sm = new sfn.StateMachine(stack, 'StateMachine', {
17
+ definitionBody: sfn.DefinitionBody.fromChainable(evaluateExpression),
18
+ timeout: cdk.Duration.seconds(30),
19
+ });
20
+
21
+ new cdk.CfnOutput(stack, 'stateMachineArn', {
22
+ value: sm.stateMachineArn,
23
+ });
24
+
25
+ new integ.IntegTest(app, 'EvaluateExpressionX86Test', {
26
+ testCases: [stack],
27
+ });
@@ -0,0 +1,102 @@
1
+ /// !cdk-integ aws-stepfunctions-tasks-http-invoke-json-path-integ
2
+
3
+ import * as path from 'path';
4
+ import { IntegTest, ExpectedResult } from '@aws-cdk/integ-tests-alpha';
5
+ import * as cdk from 'aws-cdk-lib';
6
+ import * as apigateway from 'aws-cdk-lib/aws-apigateway';
7
+ import * as events from 'aws-cdk-lib/aws-events';
8
+ import * as sfn from 'aws-cdk-lib/aws-stepfunctions';
9
+ import * as lambda from 'aws-cdk-lib/aws-lambda-nodejs';
10
+ import * as tasks from 'aws-cdk-lib/aws-stepfunctions-tasks';
11
+ import { password, username } from './my-lambda-handler';
12
+
13
+ /*
14
+ * Creates an API Gateway instance with a GET method and mock integration,
15
+ * secured with basic auth. It then creates a matching Connection and uses it
16
+ * in a state machine with a task state to invoke the endpoint.
17
+ *
18
+ * Stack verification steps :
19
+ * * aws stepfunctions start-execution --state-machine-arn <deployed state machine arn> : should return execution arn
20
+ * * aws stepfunctions describe-execution --execution-arn <execution-arn generated before> : should return status as SUCCEEDED
21
+ */
22
+ const app = new cdk.App();
23
+ const stack = new cdk.Stack(app, 'aws-stepfunctions-tasks-http-invoke-json-path-integ');
24
+
25
+ const authorizerHandler = new lambda.NodejsFunction(stack, 'AuthorizerHandler', {
26
+ entry: path.resolve(__dirname, 'my-lambda-handler', 'index.ts'),
27
+ handler: 'handler',
28
+ });
29
+
30
+ const authorizer = new apigateway.TokenAuthorizer(stack, 'Authorizer', {
31
+ handler: authorizerHandler,
32
+ identitySource: 'method.request.header.Authorization',
33
+ resultsCacheTtl: cdk.Duration.seconds(0),
34
+ });
35
+
36
+ const api = new apigateway.RestApi(stack, 'IntegRestApi');
37
+
38
+ api.root.addResource('test-json-path').addMethod(
39
+ 'GET',
40
+ new apigateway.MockIntegration({
41
+ integrationResponses: [
42
+ {
43
+ statusCode: '200',
44
+ responseTemplates: {
45
+ 'application/json': JSON.stringify({ message: 'Hello, tester!' }),
46
+ },
47
+ },
48
+ ],
49
+ passthroughBehavior: apigateway.PassthroughBehavior.NEVER,
50
+ requestTemplates: {
51
+ 'application/json': '{ "statusCode": 200 }',
52
+ },
53
+ }),
54
+ {
55
+ authorizer,
56
+ methodResponses: [
57
+ {
58
+ statusCode: '200',
59
+ },
60
+ ],
61
+ },
62
+ );
63
+
64
+ const connection = new events.Connection(stack, 'Connection', {
65
+ authorization: events.Authorization.basic(username, cdk.SecretValue.unsafePlainText(password)),
66
+ });
67
+
68
+ const httpInvokeTask = new tasks.HttpInvoke(stack, 'Invoke HTTP Endpoint', {
69
+ apiRoot: api.urlForPath('/'),
70
+ apiEndpoint: sfn.TaskInput.fromJsonPathAt('$.endpointPath'),
71
+ connection,
72
+ method: sfn.TaskInput.fromText('GET'),
73
+ });
74
+
75
+ const sm = new sfn.StateMachine(stack, 'StateMachine', {
76
+ definition: httpInvokeTask,
77
+ timeout: cdk.Duration.seconds(30),
78
+ });
79
+
80
+ const testCase = new IntegTest(app, 'HttpInvokeTest', {
81
+ testCases: [stack],
82
+ });
83
+
84
+ // Start an execution
85
+ const start = testCase.assertions.awsApiCall('StepFunctions', 'startExecution', {
86
+ stateMachineArn: sm.stateMachineArn,
87
+ input: JSON.stringify({
88
+ endpointPath: 'test-json-path',
89
+ }),
90
+ });
91
+
92
+ // describe the results of the execution
93
+ const describe = testCase.assertions.awsApiCall('StepFunctions', 'describeExecution', {
94
+ executionArn: start.getAttString('executionArn'),
95
+ });
96
+
97
+ // assert the results
98
+ describe.expect(ExpectedResult.objectLike({
99
+ status: 'SUCCEEDED',
100
+ }));
101
+
102
+ app.synth();
@@ -87,6 +87,28 @@ const schedule = synthetics.Schedule.cron({
87
87
 
88
88
  If you want the canary to run just once upon deployment, you can use `Schedule.once()`.
89
89
 
90
+ ### Automatic Retries
91
+
92
+ You can configure the canary to automatically retry failed runs by using the `maxRetries` property.
93
+
94
+ This is only supported on the following runtimes or newer: `Runtime.SYNTHETICS_NODEJS_PUPPETEER_10_0`, `Runtime.SYNTHETICS_NODEJS_PLAYWRIGHT_2_0`, `Runtime.SYNTHETICS_PYTHON_SELENIUM_5_1`.
95
+
96
+ Max retries can be set between 0 and 2. Canaries which time out after 10 minutes are automatically limited to one retry.
97
+
98
+ For more information, see [Configuring your canary to retry automatically](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_autoretry.html).
99
+
100
+ ```ts
101
+ const canary = new synthetics.Canary(this, 'MyCanary', {
102
+ schedule: synthetics.Schedule.rate(Duration.minutes(5)),
103
+ test: synthetics.Test.custom({
104
+ handler: 'canary.handler',
105
+ code: synthetics.Code.fromAsset(path.join(__dirname, 'canaries')),
106
+ }),
107
+ runtime: synthetics.Runtime.SYNTHETICS_PYTHON_SELENIUM_5_1,
108
+ maxRetries: 2, // The canary run will retry up to 2 times on a failure
109
+ });
110
+ ```
111
+
90
112
  ### Active Tracing
91
113
 
92
114
  You can choose to enable active AWS X-Ray tracing on canaries that use the `syn-nodejs-2.0` or later runtime by setting `activeTracing` to `true`.
@@ -143,6 +165,33 @@ const canary = new synthetics.Canary(this, 'MyCanary', {
143
165
  });
144
166
  ```
145
167
 
168
+ ### Browser Type Configuration
169
+
170
+ You can configure which browsers your canary uses for testing by specifying the `browserConfigs` property. This allows you to test your application across different browsers to ensure compatibility.
171
+
172
+ Available browser types:
173
+ - `BrowserType.CHROME` - Google Chrome browser
174
+ - `BrowserType.FIREFOX` - Mozilla Firefox browser
175
+
176
+ You can specify up to 2 browser configurations. When multiple browsers are configured, the canary will run tests on each browser sequentially.
177
+
178
+ ```ts
179
+ const canary = new synthetics.Canary(this, 'MyCanary', {
180
+ schedule: synthetics.Schedule.rate(Duration.minutes(5)),
181
+ test: synthetics.Test.custom({
182
+ code: synthetics.Code.fromAsset(path.join(__dirname, 'canary')),
183
+ handler: 'index.handler',
184
+ }),
185
+ runtime: synthetics.Runtime.SYNTHETICS_NODEJS_PUPPETEER_9_1,
186
+ browserConfigs: [
187
+ synthetics.BrowserType.CHROME,
188
+ synthetics.BrowserType.FIREFOX,
189
+ ],
190
+ });
191
+ ```
192
+
193
+ > **Note:** Firefox support is available for Node.js runtimes (Puppeteer and Playwright) but not for Python Selenium runtimes. When using Firefox, ensure your runtime version supports it.
194
+
146
195
  ### Deleting underlying resources on canary deletion
147
196
 
148
197
  When you delete a lambda, the following underlying resources are isolated in your AWS account:
@@ -218,7 +267,7 @@ new synthetics.Canary(this, 'Bucket Canary', {
218
267
  ```
219
268
 
220
269
  > **Note:** Synthetics have a specified folder structure for canaries.
221
- > For Node with puppeteer scripts supplied via `code.fromAsset()` or `code.fromBucket()`, the canary resource requires the following folder structure:
270
+ > For Node with puppeteer scripts supplied via `code.fromAsset()` or `code.fromBucket()`, the canary resource requires the following folder structure for runtime versions older than `syn-nodejs-puppeteer-11.0`:
222
271
  >
223
272
  > ```plaintext
224
273
  > canary/
@@ -227,6 +276,22 @@ new synthetics.Canary(this, 'Bucket Canary', {
227
276
  > ├── <filename>.js
228
277
  > ```
229
278
  >
279
+ > For puppeteer based runtime versions newer than or equal to `syn-nodejs-puppeteer-11.0`, `nodjs/node_modules` is not necessary but supported.
280
+ >
281
+ > Both
282
+ > ```plaintext
283
+ > canary/
284
+ > ├── nodejs/
285
+ > ├── node_modules/
286
+ > ├── <filename>.js
287
+ > ```
288
+ > And
289
+ > ```plaintext
290
+ > canary/
291
+ > ├── <filename>.js
292
+ > ```
293
+ > are supported.
294
+ >
230
295
  > For Node with playwright scripts supplied via `code.fromAsset()` or `code.fromBucket()`, the canary resource requires the following folder structure:
231
296
  >
232
297
  > ```plaintext
@@ -368,3 +433,21 @@ const canary = new synthetics.Canary(this, 'MyCanary', {
368
433
  });
369
434
  ```
370
435
 
436
+ ### Tag replication
437
+
438
+ You can configure a canary to replicate its tags to the underlying Lambda function. This is useful when you want the same tags that are applied to the canary to also be applied to the Lambda function that the canary uses.
439
+
440
+ ```ts
441
+ const canary = new synthetics.Canary(this, 'MyCanary', {
442
+ schedule: synthetics.Schedule.rate(Duration.minutes(5)),
443
+ test: synthetics.Test.custom({
444
+ code: synthetics.Code.fromAsset(path.join(__dirname, 'canary')),
445
+ handler: 'index.handler',
446
+ }),
447
+ runtime: synthetics.Runtime.SYNTHETICS_NODEJS_PUPPETEER_7_0,
448
+ resourcesToReplicateTags: [synthetics.ResourceToReplicateTags.LAMBDA_FUNCTION],
449
+ });
450
+ ```
451
+
452
+ When you specify `ResourceToReplicateTags.LAMBDA_FUNCTION` in the `resourcesToReplicateTags` property, CloudWatch Synthetics will keep the tags of the canary and the Lambda function synchronized. Any future changes you make to the canary's tags will also be applied to the function.
453
+
@@ -0,0 +1,35 @@
1
+ import * as path from 'node:path';
2
+ import { App, Duration, Size, Stack, StackProps } from 'aws-cdk-lib/core';
3
+ import { IntegTest } from '@aws-cdk/integ-tests-alpha';
4
+ import { Construct } from 'constructs';
5
+ import * as synthetics from 'aws-cdk-lib/aws-synthetics';
6
+
7
+ class TestStack extends Stack {
8
+ public canary: synthetics.Canary;
9
+
10
+ constructor(scope: Construct, id: string, props?: StackProps) {
11
+ super(scope, id, props);
12
+
13
+ this.canary = new synthetics.Canary(this, 'BrowserTypeCanary', {
14
+ runtime: synthetics.Runtime.SYNTHETICS_NODEJS_PUPPETEER_11_0,
15
+ test: synthetics.Test.custom({
16
+ handler: 'canary.handler',
17
+ code: synthetics.Code.fromAsset(path.join(__dirname, 'canaries')),
18
+ }),
19
+ memory: Size.mebibytes(2048),
20
+ timeout: Duration.minutes(4),
21
+ maxRetries: 2,
22
+ browserConfigs: [
23
+ synthetics.BrowserType.CHROME,
24
+ synthetics.BrowserType.FIREFOX,
25
+ ],
26
+ });
27
+ }
28
+ }
29
+
30
+ const app = new App();
31
+ const testStack = new TestStack(app, 'SyntheticsCanaryBrowserTypeStack');
32
+
33
+ new IntegTest(app, 'SyntheticsCanaryBrowserType', {
34
+ testCases: [testStack],
35
+ });
@@ -0,0 +1,36 @@
1
+ import * as path from 'node:path';
2
+ import { App, Duration, Size, Stack, StackProps, Tags } from 'aws-cdk-lib/core';
3
+ import { IntegTest } from '@aws-cdk/integ-tests-alpha';
4
+ import { Construct } from 'constructs';
5
+ import * as synthetics from 'aws-cdk-lib/aws-synthetics';
6
+
7
+ class TestStack extends Stack {
8
+ public canary: synthetics.Canary;
9
+
10
+ constructor(scope: Construct, id: string, props?: StackProps) {
11
+ super(scope, id, props);
12
+
13
+ this.canary = new synthetics.Canary(this, 'TagReplicationCanary', {
14
+ canaryName: 'tag-replication',
15
+ runtime: synthetics.Runtime.SYNTHETICS_NODEJS_PUPPETEER_7_0,
16
+ test: synthetics.Test.custom({
17
+ handler: 'canary.handler',
18
+ code: synthetics.Code.fromAsset(path.join(__dirname, 'canaries')),
19
+ }),
20
+ memory: Size.mebibytes(1024),
21
+ timeout: Duration.minutes(3),
22
+ resourcesToReplicateTags: [synthetics.ResourceToReplicateTags.LAMBDA_FUNCTION],
23
+ });
24
+
25
+ Tags.of(this.canary).add('Environment', 'test');
26
+ Tags.of(this.canary).add('Owner', 'cdk-team');
27
+ Tags.of(this.canary).add('Project', 'synthetics-tag-replication');
28
+ }
29
+ }
30
+
31
+ const app = new App();
32
+ const testStack = new TestStack(app, 'SyntheticsCanaryResourcesToReplicateTagsStack');
33
+
34
+ new IntegTest(app, 'SyntheticsCanaryResourcesToReplicateTags', {
35
+ testCases: [testStack],
36
+ });
@@ -0,0 +1,32 @@
1
+ import * as path from 'node:path';
2
+ import { App, Duration, Size, Stack, StackProps } from 'aws-cdk-lib/core';
3
+ import { IntegTest } from '@aws-cdk/integ-tests-alpha';
4
+ import { Construct } from 'constructs';
5
+ import * as synthetics from 'aws-cdk-lib/aws-synthetics';
6
+
7
+ class TestStack extends Stack {
8
+ public canary: synthetics.Canary;
9
+
10
+ constructor(scope: Construct, id: string, props?: StackProps) {
11
+ super(scope, id, props);
12
+
13
+ this.canary = new synthetics.Canary(this, 'RetryCanary', {
14
+ canaryName: 'retry',
15
+ runtime: synthetics.Runtime.SYNTHETICS_PYTHON_SELENIUM_5_1,
16
+ test: synthetics.Test.custom({
17
+ handler: 'canary.handler',
18
+ code: synthetics.Code.fromAsset(path.join(__dirname, 'canaries')),
19
+ }),
20
+ memory: Size.mebibytes(2048),
21
+ timeout: Duration.minutes(4),
22
+ maxRetries: 2,
23
+ });
24
+ }
25
+ }
26
+
27
+ const app = new App();
28
+ const testStack = new TestStack(app, 'SyntheticsCanaryRetryStack');
29
+
30
+ new IntegTest(app, 'SyntheticsCanaryRetry', {
31
+ testCases: [testStack],
32
+ });
@@ -0,0 +1,43 @@
1
+ import * as path from 'node:path';
2
+ import { App, Duration, Size, Stack, StackProps } from 'aws-cdk-lib/core';
3
+ import { IntegTest } from '@aws-cdk/integ-tests-alpha';
4
+ import { Construct } from 'constructs';
5
+ import * as synthetics from 'aws-cdk-lib/aws-synthetics';
6
+
7
+ class TestStack extends Stack {
8
+ public puppeteer11RootCanary: synthetics.Canary;
9
+ public puppeteer11NodeModulesCanary: synthetics.Canary;
10
+
11
+ constructor(scope: Construct, id: string, props?: StackProps) {
12
+ super(scope, id, props);
13
+
14
+ // Test puppeteer 11.0+ with root-level files only
15
+ this.puppeteer11RootCanary = new synthetics.Canary(this, 'Puppeteer11RootCanary', {
16
+ runtime: synthetics.Runtime.SYNTHETICS_NODEJS_PUPPETEER_11_0,
17
+ test: synthetics.Test.custom({
18
+ handler: 'canary.handler',
19
+ code: synthetics.Code.fromAsset(path.join(__dirname, 'canaries-runtime-validation', 'root-only')),
20
+ }),
21
+ memory: Size.mebibytes(1024),
22
+ timeout: Duration.minutes(2),
23
+ });
24
+
25
+ // Test puppeteer 11.0+ also supports nodejs/node_modules structure
26
+ this.puppeteer11NodeModulesCanary = new synthetics.Canary(this, 'Puppeteer11NodeModulesCanary', {
27
+ runtime: synthetics.Runtime.SYNTHETICS_NODEJS_PUPPETEER_11_0,
28
+ test: synthetics.Test.custom({
29
+ handler: 'canary.handler',
30
+ code: synthetics.Code.fromAsset(path.join(__dirname, 'canaries')),
31
+ }),
32
+ memory: Size.mebibytes(1024),
33
+ timeout: Duration.minutes(2),
34
+ });
35
+ }
36
+ }
37
+
38
+ const app = new App();
39
+ const testStack = new TestStack(app, 'SyntheticsCanaryRuntimeValidationStack');
40
+
41
+ new IntegTest(app, 'SyntheticsCanaryRuntimeValidation', {
42
+ testCases: [testStack],
43
+ });
@@ -114,6 +114,7 @@ const selenium41 = createCanaryByRuntimes(Runtime.SYNTHETICS_PYTHON_SELENIUM_4_1
114
114
  const selenium50 = createCanaryByRuntimes(Runtime.SYNTHETICS_PYTHON_SELENIUM_5_0);
115
115
  const selenium51 = createCanaryByRuntimes(Runtime.SYNTHETICS_PYTHON_SELENIUM_5_1);
116
116
  const selenium60 = createCanaryByRuntimes(Runtime.SYNTHETICS_PYTHON_SELENIUM_6_0);
117
+ const selenium70 = createCanaryByRuntimes(Runtime.SYNTHETICS_PYTHON_SELENIUM_7_0);
117
118
 
118
119
  const test = new IntegTest(app, 'IntegCanaryTest', {
119
120
  testCases: [stack],
@@ -142,6 +143,7 @@ const test = new IntegTest(app, 'IntegCanaryTest', {
142
143
  selenium50,
143
144
  selenium51,
144
145
  selenium60,
146
+ selenium70,
145
147
  ].forEach((canary) => test.assertions
146
148
  .awsApiCall('Synthetics', 'getCanaryRuns', {
147
149
  Name: canary.canaryName,
@@ -0,0 +1,25 @@
1
+ import * as path from 'path';
2
+ import * as cdk from 'aws-cdk-lib';
3
+ import { IntegTest } from '@aws-cdk/integ-tests-alpha';
4
+ import { CfnInclude } from 'aws-cdk-lib/cloudformation-include';
5
+
6
+ const app = new cdk.App();
7
+ const stack = new cdk.Stack(app, 'integ-cfninclude-novalue-boolean');
8
+
9
+ const templateFile = path.join(__dirname, 'test-templates', 'novalue-boolean.json');
10
+
11
+ // Include a template that has a AWS::NoValue property in place of a boolean
12
+ const cfnInclude = new CfnInclude(stack, 'Template', {
13
+ templateFile,
14
+ });
15
+
16
+ const bucket = cfnInclude.getResource('TestBucket');
17
+
18
+ new cdk.CfnOutput(stack, 'BucketName', {
19
+ value: bucket.ref,
20
+ });
21
+
22
+ // The fact that synthesis is successful means that AWS::NoValue is evaluated correctly.
23
+ new IntegTest(app, 'CfnIncludeNoValueBooleanTest', {
24
+ testCases: [stack],
25
+ });