terraconstructs 0.0.10 → 0.0.12
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.
- package/.jsii +104486 -34582
- package/lib/aws/arn.js +1 -1
- package/lib/aws/aws-construct.d.ts +1 -1
- package/lib/aws/aws-construct.js +28 -2
- package/lib/aws/aws-stack.d.ts +2 -4
- package/lib/aws/aws-stack.js +21 -8
- package/lib/aws/aws-tags.d.ts +58 -0
- package/lib/aws/aws-tags.js +77 -0
- package/lib/aws/cloudwatch/actions/ec2.js +1 -1
- package/lib/aws/cloudwatch/actions/lambda.js +1 -1
- package/lib/aws/cloudwatch/alarm-base.js +1 -1
- package/lib/aws/cloudwatch/alarm-rule.js +1 -1
- package/lib/aws/cloudwatch/alarm-status-widget.js +1 -1
- package/lib/aws/cloudwatch/alarm.js +1 -1
- package/lib/aws/cloudwatch/composite-alarm.js +1 -1
- package/lib/aws/cloudwatch/dashboard.js +1 -1
- package/lib/aws/cloudwatch/data-protection-policy.js +3 -3
- package/lib/aws/cloudwatch/graph.js +8 -8
- package/lib/aws/cloudwatch/layout.js +3 -3
- package/lib/aws/cloudwatch/log-destinations/kinesis.js +1 -1
- package/lib/aws/cloudwatch/log-destinations/lambda.js +1 -1
- package/lib/aws/cloudwatch/log-group.js +1 -1
- package/lib/aws/cloudwatch/log-query.js +1 -1
- package/lib/aws/cloudwatch/log-stream.js +1 -1
- package/lib/aws/cloudwatch/metric-filter.d.ts +1 -1
- package/lib/aws/cloudwatch/metric-filter.js +4 -4
- package/lib/aws/cloudwatch/metric.js +2 -2
- package/lib/aws/cloudwatch/pattern.js +3 -3
- package/lib/aws/cloudwatch/policy.js +1 -1
- package/lib/aws/cloudwatch/private/env-tokens.js +5 -6
- package/lib/aws/cloudwatch/private/metric-util.js +4 -5
- package/lib/aws/cloudwatch/private/object.js +2 -3
- package/lib/aws/cloudwatch/private/rendering.js +3 -3
- package/lib/aws/cloudwatch/private/statistic.js +6 -7
- package/lib/aws/cloudwatch/query-definition.js +2 -2
- package/lib/aws/cloudwatch/stats.js +1 -1
- package/lib/aws/cloudwatch/subscription-filter.d.ts +1 -1
- package/lib/aws/cloudwatch/subscription-filter.js +4 -4
- package/lib/aws/cloudwatch/text.js +1 -1
- package/lib/aws/cloudwatch/variable.js +3 -3
- package/lib/aws/cloudwatch/widget.d.ts +1 -1
- package/lib/aws/cloudwatch/widget.js +4 -4
- package/lib/aws/compute/activity.js +3 -2
- package/lib/aws/compute/alb/application-listener-action.d.ts +334 -0
- package/lib/aws/compute/alb/application-listener-action.js +281 -0
- package/lib/aws/compute/alb/application-listener-certificate.d.ts +35 -0
- package/lib/aws/compute/alb/application-listener-certificate.js +35 -0
- package/lib/aws/compute/alb/application-listener-rule.d.ts +233 -0
- package/lib/aws/compute/alb/application-listener-rule.js +220 -0
- package/lib/aws/compute/alb/application-listener.d.ts +574 -0
- package/lib/aws/compute/alb/application-listener.js +538 -0
- package/lib/aws/compute/alb/application-load-balancer.d.ts +715 -0
- package/lib/aws/compute/alb/application-load-balancer.js +780 -0
- package/lib/aws/compute/alb/application-target-group.d.ts +339 -0
- package/lib/aws/compute/alb/application-target-group.js +427 -0
- package/lib/aws/compute/alb/conditions.d.ts +61 -0
- package/lib/aws/compute/alb/conditions.js +164 -0
- package/lib/aws/compute/alb/trust-store-revocation.d.ts +59 -0
- package/lib/aws/compute/alb/trust-store-revocation.js +46 -0
- package/lib/aws/compute/alb/trust-store.d.ts +86 -0
- package/lib/aws/compute/alb/trust-store.js +79 -0
- package/lib/aws/compute/architecture.js +1 -1
- package/lib/aws/compute/aspects/require-imdsv2-aspect.d.ts +75 -0
- package/lib/aws/compute/aspects/require-imdsv2-aspect.js +106 -0
- package/lib/aws/compute/bastion-host.d.ts +172 -0
- package/lib/aws/compute/bastion-host.js +114 -0
- package/lib/aws/compute/chain.js +1 -1
- package/lib/aws/compute/cidr-splits.d.ts +49 -0
- package/lib/aws/compute/cidr-splits.js +59 -0
- package/lib/aws/compute/client-vpn-authorization-rule.d.ts +43 -0
- package/lib/aws/compute/client-vpn-authorization-rule.js +30 -0
- package/lib/aws/compute/client-vpn-endpoint-types.d.ts +62 -0
- package/lib/aws/compute/client-vpn-endpoint-types.js +25 -0
- package/lib/aws/compute/client-vpn-endpoint.d.ts +239 -0
- package/lib/aws/compute/client-vpn-endpoint.js +259 -0
- package/lib/aws/compute/client-vpn-route.d.ts +67 -0
- package/lib/aws/compute/client-vpn-route.js +57 -0
- package/lib/aws/compute/condition.js +1 -1
- package/lib/aws/compute/connections.d.ts +137 -0
- package/lib/aws/compute/connections.js +208 -0
- package/lib/aws/compute/ec2-augmentations.generated.d.ts +53 -0
- package/lib/aws/compute/ec2-augmentations.generated.js +35 -0
- package/lib/aws/compute/ec2-canned-metrics.generated.d.ts +555 -0
- package/lib/aws/compute/ec2-canned-metrics.generated.js +681 -0
- package/lib/aws/compute/ec2-util-v2.d.ts +141 -0
- package/lib/aws/compute/ec2-util-v2.js +286 -0
- package/lib/aws/compute/ec2-util.d.ts +52 -0
- package/lib/aws/compute/ec2-util.js +138 -0
- package/lib/aws/compute/elasticloadbalancing-canned-metrics.generated.d.ts +176 -0
- package/lib/aws/compute/elasticloadbalancing-canned-metrics.generated.js +119 -0
- package/lib/aws/compute/elasticloadbalancingv2-canned-metrics.generated.d.ts +860 -0
- package/lib/aws/compute/elasticloadbalancingv2-canned-metrics.generated.js +597 -0
- package/lib/aws/compute/event-invoke-config.js +1 -1
- package/lib/aws/compute/event-source-filter.js +2 -2
- package/lib/aws/compute/event-source-mapping.js +1 -1
- package/lib/aws/compute/event-sources/s3-onfailure-destination.js +1 -1
- package/lib/aws/compute/event-sources/s3.js +1 -1
- package/lib/aws/compute/event-sources/sqs-dlq.js +1 -1
- package/lib/aws/compute/event-sources/sqs.js +1 -1
- package/lib/aws/compute/fields.js +4 -4
- package/lib/aws/compute/function-alias.js +1 -1
- package/lib/aws/compute/function-base.js +2 -2
- package/lib/aws/compute/function-destinations/event-bridge.js +1 -1
- package/lib/aws/compute/function-destinations/function.js +1 -1
- package/lib/aws/compute/function-destinations/sqs.js +1 -1
- package/lib/aws/compute/function-nodejs.js +1 -1
- package/lib/aws/compute/function-url.js +1 -1
- package/lib/aws/compute/function-vpc-config.generated.d.ts +3 -3
- package/lib/aws/compute/function-vpc-config.generated.js +1 -1
- package/lib/aws/compute/function.d.ts +1 -1
- package/lib/aws/compute/function.js +5 -5
- package/lib/aws/compute/index-alpha.d.ts +5 -0
- package/lib/aws/compute/index-alpha.js +22 -0
- package/lib/aws/compute/index.d.ts +60 -0
- package/lib/aws/compute/index.js +70 -2
- package/lib/aws/compute/instance-types.d.ts +1354 -0
- package/lib/aws/compute/instance-types.js +1683 -0
- package/lib/aws/compute/instance.d.ts +436 -0
- package/lib/aws/compute/instance.js +262 -0
- package/lib/aws/compute/ip-addresses.d.ts +249 -0
- package/lib/aws/compute/ip-addresses.js +248 -0
- package/lib/aws/compute/ipam.d.ts +309 -0
- package/lib/aws/compute/ipam.js +306 -0
- package/lib/aws/compute/key-pair.d.ts +178 -0
- package/lib/aws/compute/key-pair.js +194 -0
- package/lib/aws/compute/lambda-augmentations.generated.d.ts +65 -0
- package/lib/aws/compute/lambda-augmentations.generated.js +41 -0
- package/lib/aws/compute/lambda-canned-metrics.generated.d.ts +316 -0
- package/lib/aws/compute/lambda-canned-metrics.generated.js +119 -0
- package/lib/aws/compute/launch-template.d.ts +540 -0
- package/lib/aws/compute/launch-template.js +468 -0
- package/lib/aws/compute/lb-shared/access-logs-accounts.d.ts +7 -0
- package/lib/aws/compute/lb-shared/access-logs-accounts.js +46 -0
- package/lib/aws/compute/lb-shared/base-listener.d.ts +113 -0
- package/lib/aws/compute/lb-shared/base-listener.js +181 -0
- package/lib/aws/compute/lb-shared/base-load-balancer.d.ts +212 -0
- package/lib/aws/compute/lb-shared/base-load-balancer.js +290 -0
- package/lib/aws/compute/lb-shared/base-target-group.d.ts +382 -0
- package/lib/aws/compute/lb-shared/base-target-group.js +364 -0
- package/lib/aws/compute/lb-shared/enums.d.ts +282 -0
- package/lib/aws/compute/lb-shared/enums.js +301 -0
- package/lib/aws/compute/lb-shared/grid-lookup-types.d.ts +42 -0
- package/lib/aws/compute/lb-shared/grid-lookup-types.js +53 -0
- package/lib/aws/compute/lb-shared/imported.d.ts +24 -0
- package/lib/aws/compute/lb-shared/imported.js +27 -0
- package/lib/aws/compute/lb-shared/lb-listener-config.generated.d.ts +194 -0
- package/lib/aws/compute/lb-shared/lb-listener-config.generated.js +3 -0
- package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.d.ts +56 -0
- package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.js +3 -0
- package/lib/aws/compute/lb-shared/listener-action.d.ts +14 -0
- package/lib/aws/compute/lb-shared/listener-action.js +4 -0
- package/lib/aws/compute/lb-shared/listener-certificate.d.ts +28 -0
- package/lib/aws/compute/lb-shared/listener-certificate.js +29 -0
- package/lib/aws/compute/lb-shared/load-balancer-targets.d.ts +93 -0
- package/lib/aws/compute/lb-shared/load-balancer-targets.js +127 -0
- package/lib/aws/compute/lb-shared/util.d.ts +113 -0
- package/lib/aws/compute/lb-shared/util.js +264 -0
- package/lib/aws/compute/lb-targets/alb-target.d.ts +67 -0
- package/lib/aws/compute/lb-targets/alb-target.js +100 -0
- package/lib/aws/compute/lb-targets/index.d.ts +4 -0
- package/lib/aws/compute/lb-targets/index.js +22 -0
- package/lib/aws/compute/lb-targets/instance-target.d.ts +42 -0
- package/lib/aws/compute/lb-targets/instance-target.js +67 -0
- package/lib/aws/compute/lb-targets/ip-target.d.ts +55 -0
- package/lib/aws/compute/lb-targets/ip-target.js +79 -0
- package/lib/aws/compute/lb-targets/lambda-target.d.ts +25 -0
- package/lib/aws/compute/lb-targets/lambda-target.js +50 -0
- package/lib/aws/compute/load-balancer.d.ts +336 -0
- package/lib/aws/compute/load-balancer.js +287 -0
- package/lib/aws/compute/machine-image/amazon-linux-2022.d.ts +63 -0
- package/lib/aws/compute/machine-image/amazon-linux-2022.js +84 -0
- package/lib/aws/compute/machine-image/amazon-linux-2023.d.ts +63 -0
- package/lib/aws/compute/machine-image/amazon-linux-2023.js +84 -0
- package/lib/aws/compute/machine-image/amazon-linux2.d.ts +76 -0
- package/lib/aws/compute/machine-image/amazon-linux2.js +87 -0
- package/lib/aws/compute/machine-image/common.d.ts +181 -0
- package/lib/aws/compute/machine-image/common.js +122 -0
- package/lib/aws/compute/machine-image/index.d.ts +5 -0
- package/lib/aws/compute/machine-image/index.js +22 -0
- package/lib/aws/compute/machine-image/machine-image.d.ts +463 -0
- package/lib/aws/compute/machine-image/machine-image.js +566 -0
- package/lib/aws/compute/machine-image/utils.d.ts +2 -0
- package/lib/aws/compute/machine-image/utils.js +17 -0
- package/lib/aws/compute/nat.d.ts +325 -0
- package/lib/aws/compute/nat.js +455 -0
- package/lib/aws/compute/network-acl-types.d.ts +152 -0
- package/lib/aws/compute/network-acl-types.js +156 -0
- package/lib/aws/compute/network-acl.d.ts +285 -0
- package/lib/aws/compute/network-acl.js +207 -0
- package/lib/aws/compute/network-util.d.ts +116 -0
- package/lib/aws/compute/network-util.js +241 -0
- package/lib/aws/compute/nlb/network-listener-action.d.ts +92 -0
- package/lib/aws/compute/nlb/network-listener-action.js +146 -0
- package/lib/aws/compute/nlb/network-listener-certificate.d.ts +24 -0
- package/lib/aws/compute/nlb/network-listener-certificate.js +25 -0
- package/lib/aws/compute/nlb/network-listener.d.ts +248 -0
- package/lib/aws/compute/nlb/network-listener.js +217 -0
- package/lib/aws/compute/nlb/network-load-balancer.d.ts +315 -0
- package/lib/aws/compute/nlb/network-load-balancer.js +360 -0
- package/lib/aws/compute/nlb/network-target-group.d.ts +153 -0
- package/lib/aws/compute/nlb/network-target-group.js +223 -0
- package/lib/aws/compute/peer.d.ts +64 -0
- package/lib/aws/compute/peer.js +235 -0
- package/lib/aws/compute/placement-group.d.ts +161 -0
- package/lib/aws/compute/placement-group.js +133 -0
- package/lib/aws/compute/port.d.ts +287 -0
- package/lib/aws/compute/port.js +390 -0
- package/lib/aws/compute/prefix-list.d.ts +131 -0
- package/lib/aws/compute/prefix-list.js +114 -0
- package/lib/aws/compute/private/context-stub.d.ts +7 -0
- package/lib/aws/compute/private/context-stub.js +43 -0
- package/lib/aws/compute/private/ebs-util.d.ts +14 -0
- package/lib/aws/compute/private/ebs-util.js +145 -0
- package/lib/aws/compute/private/intrinstics.js +2 -1
- package/lib/aws/compute/private/json-path.js +8 -8
- package/lib/aws/compute/private/util.js +2 -3
- package/lib/aws/compute/route.d.ts +547 -0
- package/lib/aws/compute/route.js +469 -0
- package/lib/aws/compute/security-group.d.ts +414 -0
- package/lib/aws/compute/security-group.js +538 -0
- package/lib/aws/compute/state-graph.js +1 -1
- package/lib/aws/compute/state-machine-fragment.js +1 -1
- package/lib/aws/compute/state-machine.d.ts +2 -2
- package/lib/aws/compute/state-machine.js +14 -12
- package/lib/aws/compute/states/choice.js +1 -1
- package/lib/aws/compute/states/custom-state.js +1 -1
- package/lib/aws/compute/states/distributed-map/item-batcher.js +1 -1
- package/lib/aws/compute/states/distributed-map/item-reader.js +5 -5
- package/lib/aws/compute/states/distributed-map/result-writer.js +1 -1
- package/lib/aws/compute/states/distributed-map.js +1 -1
- package/lib/aws/compute/states/fail.js +1 -1
- package/lib/aws/compute/states/map-base.js +1 -1
- package/lib/aws/compute/states/map.js +1 -1
- package/lib/aws/compute/states/parallel.js +1 -1
- package/lib/aws/compute/states/pass.js +2 -2
- package/lib/aws/compute/states/state.js +5 -5
- package/lib/aws/compute/states/succeed.js +1 -1
- package/lib/aws/compute/states/task-base.js +2 -2
- package/lib/aws/compute/states/task.js +1 -1
- package/lib/aws/compute/states/wait.js +2 -2
- package/lib/aws/compute/stepfunctions-canned-metrics.generated.d.ts +83 -0
- package/lib/aws/compute/stepfunctions-canned-metrics.generated.js +127 -0
- package/lib/aws/compute/subnet-v2.d.ts +213 -0
- package/lib/aws/compute/subnet-v2.js +405 -0
- package/lib/aws/compute/subnet.d.ts +37 -0
- package/lib/aws/compute/subnet.js +181 -0
- package/lib/aws/compute/task-credentials.js +1 -1
- package/lib/aws/compute/task-input.js +1 -1
- package/lib/aws/compute/tasks/aws-sdk/call-aws-service.js +1 -1
- package/lib/aws/compute/tasks/eventbridge/put-events.js +1 -1
- package/lib/aws/compute/tasks/http/invoke.js +1 -1
- package/lib/aws/compute/tasks/lambda/invoke.js +1 -1
- package/lib/aws/compute/tasks/private/task-utils.js +3 -4
- package/lib/aws/compute/tasks/resource-arn-suffix.js +2 -3
- package/lib/aws/compute/tasks/sqs/send-message.js +1 -1
- package/lib/aws/compute/tasks/stepfunctions/invoke-activity.js +1 -1
- package/lib/aws/compute/tasks/stepfunctions/start-execution.js +1 -1
- package/lib/aws/compute/types.js +2 -2
- package/lib/aws/compute/user-data.d.ts +270 -0
- package/lib/aws/compute/user-data.js +487 -0
- package/lib/aws/compute/util.d.ts +1 -1
- package/lib/aws/compute/util.js +4 -5
- package/lib/aws/compute/volume.d.ts +480 -0
- package/lib/aws/compute/volume.js +426 -0
- package/lib/aws/compute/vpc-endpoint-service.d.ts +149 -0
- package/lib/aws/compute/vpc-endpoint-service.js +90 -0
- package/lib/aws/compute/vpc-endpoint.d.ts +742 -0
- package/lib/aws/compute/vpc-endpoint.js +811 -0
- package/lib/aws/compute/vpc-flow-logs.d.ts +551 -0
- package/lib/aws/compute/vpc-flow-logs.js +693 -0
- package/lib/aws/compute/vpc-lookup.d.ts +73 -0
- package/lib/aws/compute/vpc-lookup.js +3 -0
- package/lib/aws/compute/vpc-v2-base.d.ts +353 -0
- package/lib/aws/compute/vpc-v2-base.js +493 -0
- package/lib/aws/compute/vpc-v2.d.ts +385 -0
- package/lib/aws/compute/vpc-v2.js +408 -0
- package/lib/aws/compute/vpc.d.ts +1448 -0
- package/lib/aws/compute/vpc.js +1495 -0
- package/lib/aws/compute/vpn.d.ts +443 -0
- package/lib/aws/compute/vpn.js +397 -0
- package/lib/aws/compute/windows-versions.d.ts +418 -0
- package/lib/aws/compute/windows-versions.js +426 -0
- package/lib/aws/edge/certificate-base.d.ts +20 -0
- package/lib/aws/edge/certificate-base.js +28 -0
- package/lib/aws/edge/certificate.d.ts +23 -2
- package/lib/aws/edge/certificate.js +54 -4
- package/lib/aws/edge/distribution.js +3 -3
- package/lib/aws/edge/dns-alias-record-targets.js +2 -2
- package/lib/aws/edge/dns-record.js +16 -16
- package/lib/aws/edge/dns-zone.d.ts +20 -2
- package/lib/aws/edge/dns-zone.js +25 -10
- package/lib/aws/edge/function.js +2 -2
- package/lib/aws/edge/index.d.ts +1 -0
- package/lib/aws/edge/index.js +2 -1
- package/lib/aws/edge/key-value-store.js +4 -4
- package/lib/aws/edge/origin.js +8 -6
- package/lib/aws/edge/response-headers-policy.js +1 -1
- package/lib/aws/encryption/alias.js +1 -1
- package/lib/aws/encryption/key.js +1 -1
- package/lib/aws/encryption/via-service-principal.js +1 -1
- package/lib/aws/iam/grant.js +2 -2
- package/lib/aws/iam/index.d.ts +1 -0
- package/lib/aws/iam/index.js +2 -1
- package/lib/aws/iam/instance-profile.d.ts +155 -0
- package/lib/aws/iam/instance-profile.js +124 -0
- package/lib/aws/iam/managed-policy.js +1 -1
- package/lib/aws/iam/oidc-provider.js +1 -1
- package/lib/aws/iam/policy-document-config.generated.d.ts +8 -8
- package/lib/aws/iam/policy-document-config.generated.js +1 -1
- package/lib/aws/iam/policy-document.js +1 -1
- package/lib/aws/iam/policy-statement-props.generated.d.ts +8 -8
- package/lib/aws/iam/policy-statement-props.generated.js +1 -1
- package/lib/aws/iam/policy-statement.js +9 -9
- package/lib/aws/iam/policy.js +1 -1
- package/lib/aws/iam/principals.js +26 -26
- package/lib/aws/iam/private/assume-role-policy.js +2 -3
- package/lib/aws/iam/private/comparable-principal.js +2 -3
- package/lib/aws/iam/private/immutable-role.d.ts +2 -1
- package/lib/aws/iam/private/immutable-role.js +3 -3
- package/lib/aws/iam/private/imported-role.d.ts +1 -1
- package/lib/aws/iam/private/imported-role.js +3 -3
- package/lib/aws/iam/private/merge-statements.js +2 -3
- package/lib/aws/iam/private/util.js +4 -4
- package/lib/aws/iam/role.js +1 -1
- package/lib/aws/iam/saml-provider.d.ts +1 -1
- package/lib/aws/iam/saml-provider.js +6 -6
- package/lib/aws/iam/unknown-principal.js +1 -1
- package/lib/aws/iam/utils.js +2 -3
- package/lib/aws/index.d.ts +1 -0
- package/lib/aws/index.js +4 -1
- package/lib/aws/network/simple-ipv4-vpc.js +5 -5
- package/lib/aws/network/subnet-group.js +3 -3
- package/lib/aws/network/subnet.d.ts +1 -1
- package/lib/aws/network/subnet.js +7 -7
- package/lib/aws/notify/archive.js +3 -2
- package/lib/aws/notify/connection.js +5 -4
- package/lib/aws/notify/event-bus.js +5 -4
- package/lib/aws/notify/event-pattern.js +3 -3
- package/lib/aws/notify/index.js +3 -1
- package/lib/aws/notify/input.js +4 -3
- package/lib/aws/notify/kinesis-stream.js +3 -2
- package/lib/aws/notify/on-event-options.js +2 -1
- package/lib/aws/notify/queue-config.generated.d.ts +18 -11
- package/lib/aws/notify/queue-config.generated.js +1 -1
- package/lib/aws/notify/queue-policy.js +1 -1
- package/lib/aws/notify/queue.js +1 -1
- package/lib/aws/notify/resource-policy.js +1 -1
- package/lib/aws/notify/rule.js +3 -2
- package/lib/aws/notify/schedule.js +2 -2
- package/lib/aws/notify/sqs-augmentations.generated.d.ts +125 -0
- package/lib/aws/notify/sqs-augmentations.generated.js +74 -0
- package/lib/aws/notify/target.js +2 -1
- package/lib/aws/notify/targets/event-bus.js +1 -1
- package/lib/aws/notify/targets/function.js +1 -1
- package/lib/aws/notify/targets/log-group.js +2 -2
- package/lib/aws/notify/targets/sqs.js +1 -1
- package/lib/aws/notify/targets/state-machine.js +1 -1
- package/lib/aws/notify/targets/util.d.ts +1 -1
- package/lib/aws/notify/targets/util.js +10 -11
- package/lib/aws/notify/util.js +4 -4
- package/lib/aws/provider-config.generated.d.ts +33 -33
- package/lib/aws/provider-config.generated.js +1 -1
- package/lib/aws/storage/bucket-notifications.js +1 -1
- package/lib/aws/storage/bucket-policy.js +1 -1
- package/lib/aws/storage/bucket-source.js +1 -1
- package/lib/aws/storage/bucket.d.ts +298 -65
- package/lib/aws/storage/bucket.js +548 -225
- package/lib/aws/storage/cors-config.generated.d.ts +3 -3
- package/lib/aws/storage/cors-config.generated.js +1 -1
- package/lib/aws/storage/cors-rule-config.generated.d.ts +5 -5
- package/lib/aws/storage/cors-rule-config.generated.js +1 -1
- package/lib/aws/storage/index.d.ts +1 -0
- package/lib/aws/storage/index.js +2 -1
- package/lib/aws/storage/lifecycle-config.generated.d.ts +11 -11
- package/lib/aws/storage/lifecycle-config.generated.js +1 -1
- package/lib/aws/storage/notification-targets/function.js +6 -6
- package/lib/aws/storage/notification-targets/queue.js +1 -1
- package/lib/aws/storage/origin-access-identity.d.ts +1 -1
- package/lib/aws/storage/origin-access-identity.js +5 -4
- package/lib/aws/storage/parameter-util.d.ts +12 -0
- package/lib/aws/storage/parameter-util.js +65 -0
- package/lib/aws/storage/parameter.d.ts +526 -0
- package/lib/aws/storage/parameter.js +606 -0
- package/lib/aws/storage/s3-canned-metrics.generated.d.ts +22 -0
- package/lib/aws/storage/s3-canned-metrics.generated.js +23 -0
- package/lib/aws/storage/util.d.ts +25 -3
- package/lib/aws/storage/util.js +84 -17
- package/lib/aws/storage/website-config.generated.d.ts +5 -5
- package/lib/aws/storage/website-config.generated.js +1 -1
- package/lib/aws/util.js +2 -3
- package/lib/construct-base.d.ts +10 -1
- package/lib/construct-base.js +9 -6
- package/lib/duration.js +1 -1
- package/lib/expiration.d.ts +48 -0
- package/lib/expiration.js +68 -0
- package/lib/helpers-internal/index.d.ts +1 -0
- package/lib/helpers-internal/index.js +7 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.js +3 -1
- package/lib/private/md5.d.ts +4 -0
- package/lib/private/md5.js +14 -0
- package/lib/private/unique-resource-name.js +3 -4
- package/lib/size.js +2 -2
- package/lib/stack-base.d.ts +4 -23
- package/lib/stack-base.js +9 -30
- package/lib/terra-func.d.ts +103 -0
- package/lib/terra-func.js +170 -0
- package/lib/token.js +5 -5
- package/package.json +15 -8
- package/bun.lockb +0 -0
|
@@ -0,0 +1,339 @@
|
|
|
1
|
+
import { IConstruct, Construct } from "constructs";
|
|
2
|
+
import { IApplicationListener } from "./application-listener";
|
|
3
|
+
import { HttpCodeTarget } from "./application-load-balancer";
|
|
4
|
+
import { Duration } from "../../../duration";
|
|
5
|
+
import * as cloudwatch from "../../cloudwatch";
|
|
6
|
+
import { IConnectable } from "../connections";
|
|
7
|
+
import { BaseTargetGroupProps, ITargetGroup, LoadBalancerTargetProps, TargetGroupAttributes, TargetGroupBase, TargetGroupImportProps } from "../lb-shared/base-target-group";
|
|
8
|
+
import { ApplicationProtocol, ApplicationProtocolVersion, TargetGroupLoadBalancingAlgorithmType } from "../lb-shared/enums";
|
|
9
|
+
import { Port } from "../port";
|
|
10
|
+
/**
|
|
11
|
+
* Properties for defining an Application Target Group
|
|
12
|
+
*/
|
|
13
|
+
export interface ApplicationTargetGroupProps extends BaseTargetGroupProps {
|
|
14
|
+
/**
|
|
15
|
+
* The protocol used for communication with the target.
|
|
16
|
+
*
|
|
17
|
+
* This is not applicable for Lambda targets.
|
|
18
|
+
*
|
|
19
|
+
* @default - Determined from port if known
|
|
20
|
+
*/
|
|
21
|
+
readonly protocol?: ApplicationProtocol;
|
|
22
|
+
/**
|
|
23
|
+
* The protocol version to use
|
|
24
|
+
*
|
|
25
|
+
* @default ApplicationProtocolVersion.HTTP1
|
|
26
|
+
*/
|
|
27
|
+
readonly protocolVersion?: ApplicationProtocolVersion;
|
|
28
|
+
/**
|
|
29
|
+
* The port on which the target receives traffic.
|
|
30
|
+
*
|
|
31
|
+
* This is not applicable for Lambda targets.
|
|
32
|
+
*
|
|
33
|
+
* @default - Determined from protocol if known
|
|
34
|
+
*/
|
|
35
|
+
readonly port?: number;
|
|
36
|
+
/**
|
|
37
|
+
* The time period during which the load balancer sends a newly registered
|
|
38
|
+
* target a linearly increasing share of the traffic to the target group.
|
|
39
|
+
*
|
|
40
|
+
* The range is 30-900 seconds (15 minutes).
|
|
41
|
+
*
|
|
42
|
+
* @default 0
|
|
43
|
+
*/
|
|
44
|
+
readonly slowStart?: Duration;
|
|
45
|
+
/**
|
|
46
|
+
* The stickiness cookie expiration period.
|
|
47
|
+
*
|
|
48
|
+
* Setting this value enables load balancer stickiness.
|
|
49
|
+
*
|
|
50
|
+
* After this period, the cookie is considered stale. The minimum value is
|
|
51
|
+
* 1 second and the maximum value is 7 days (604800 seconds).
|
|
52
|
+
*
|
|
53
|
+
* @default - Stickiness is disabled
|
|
54
|
+
*/
|
|
55
|
+
readonly stickinessCookieDuration?: Duration;
|
|
56
|
+
/**
|
|
57
|
+
* The name of an application-based stickiness cookie.
|
|
58
|
+
*
|
|
59
|
+
* Names that start with the following prefixes are not allowed: AWSALB, AWSALBAPP,
|
|
60
|
+
* and AWSALBTG; they're reserved for use by the load balancer.
|
|
61
|
+
*
|
|
62
|
+
* Note: `stickinessCookieName` parameter depends on the presence of `stickinessCookieDuration` parameter.
|
|
63
|
+
* If `stickinessCookieDuration` is not set, `stickinessCookieName` will be omitted.
|
|
64
|
+
*
|
|
65
|
+
* @default - If `stickinessCookieDuration` is set, a load-balancer generated cookie is used. Otherwise, no stickiness is defined.
|
|
66
|
+
* @see https://docs.aws.amazon.com/elasticloadbalancing/latest/application/sticky-sessions.html
|
|
67
|
+
*/
|
|
68
|
+
readonly stickinessCookieName?: string;
|
|
69
|
+
/**
|
|
70
|
+
* The load balancing algorithm to select targets for routing requests.
|
|
71
|
+
*
|
|
72
|
+
* @default TargetGroupLoadBalancingAlgorithmType.ROUND_ROBIN
|
|
73
|
+
*/
|
|
74
|
+
readonly loadBalancingAlgorithmType?: TargetGroupLoadBalancingAlgorithmType;
|
|
75
|
+
/**
|
|
76
|
+
* The targets to add to this target group.
|
|
77
|
+
*
|
|
78
|
+
* Can be `Instance`, `IPAddress`, or any self-registering load balancing
|
|
79
|
+
* target. If you use either `Instance` or `IPAddress` as targets, all
|
|
80
|
+
* target must be of the same type.
|
|
81
|
+
*
|
|
82
|
+
* @default - No targets.
|
|
83
|
+
*/
|
|
84
|
+
readonly targets?: IApplicationLoadBalancerTarget[];
|
|
85
|
+
/**
|
|
86
|
+
* Indicates whether anomaly mitigation is enabled.
|
|
87
|
+
*
|
|
88
|
+
* Only available when `loadBalancingAlgorithmType` is `TargetGroupLoadBalancingAlgorithmType.WEIGHTED_RANDOM`
|
|
89
|
+
*
|
|
90
|
+
* @default false
|
|
91
|
+
*
|
|
92
|
+
* @see https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html#automatic-target-weights
|
|
93
|
+
*/
|
|
94
|
+
readonly enableAnomalyMitigation?: boolean;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Contains all metrics for a Target Group of a Application Load Balancer.
|
|
98
|
+
*/
|
|
99
|
+
export interface IApplicationTargetGroupMetrics {
|
|
100
|
+
/**
|
|
101
|
+
* Return the given named metric for this Network Target Group
|
|
102
|
+
*
|
|
103
|
+
* @default Average over 5 minutes
|
|
104
|
+
*/
|
|
105
|
+
custom(metricName: string, props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
106
|
+
/**
|
|
107
|
+
* The number of IPv6 requests received by the target group
|
|
108
|
+
*
|
|
109
|
+
* @default Sum over 5 minutes
|
|
110
|
+
*/
|
|
111
|
+
ipv6RequestCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
112
|
+
/**
|
|
113
|
+
* The number of requests processed over IPv4 and IPv6.
|
|
114
|
+
*
|
|
115
|
+
* This count includes only the requests with a response generated by a target of the load balancer.
|
|
116
|
+
*
|
|
117
|
+
* @default Sum over 5 minutes
|
|
118
|
+
*/
|
|
119
|
+
requestCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
120
|
+
/**
|
|
121
|
+
* The number of healthy hosts in the target group
|
|
122
|
+
*
|
|
123
|
+
* @default Average over 5 minutes
|
|
124
|
+
*/
|
|
125
|
+
healthyHostCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
126
|
+
/**
|
|
127
|
+
* The number of unhealthy hosts in the target group
|
|
128
|
+
*
|
|
129
|
+
* @default Average over 5 minutes
|
|
130
|
+
*/
|
|
131
|
+
unhealthyHostCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
132
|
+
/**
|
|
133
|
+
* The number of HTTP 2xx/3xx/4xx/5xx response codes generated by all targets in this target group.
|
|
134
|
+
*
|
|
135
|
+
* This does not include any response codes generated by the load balancer.
|
|
136
|
+
*
|
|
137
|
+
* @default Sum over 5 minutes
|
|
138
|
+
*/
|
|
139
|
+
httpCodeTarget(code: HttpCodeTarget, props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
140
|
+
/**
|
|
141
|
+
* The average number of requests received by each target in a target group.
|
|
142
|
+
*
|
|
143
|
+
* The only valid statistic is Sum. Note that this represents the average not the sum.
|
|
144
|
+
*
|
|
145
|
+
* @default Sum over 5 minutes
|
|
146
|
+
*/
|
|
147
|
+
requestCountPerTarget(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
148
|
+
/**
|
|
149
|
+
* The number of connections that were not successfully established between the load balancer and target.
|
|
150
|
+
*
|
|
151
|
+
* @default Sum over 5 minutes
|
|
152
|
+
*/
|
|
153
|
+
targetConnectionErrorCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
154
|
+
/**
|
|
155
|
+
* The time elapsed, in seconds, after the request leaves the load balancer until a response from the target is received.
|
|
156
|
+
*
|
|
157
|
+
* @default Average over 5 minutes
|
|
158
|
+
*/
|
|
159
|
+
targetResponseTime(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
160
|
+
/**
|
|
161
|
+
* The number of TLS connections initiated by the load balancer that did not establish a session with the target.
|
|
162
|
+
*
|
|
163
|
+
* Possible causes include a mismatch of ciphers or protocols.
|
|
164
|
+
*
|
|
165
|
+
* @default Sum over 5 minutes
|
|
166
|
+
*/
|
|
167
|
+
targetTLSNegotiationErrorCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Define an Application Target Group
|
|
171
|
+
*/
|
|
172
|
+
export declare class ApplicationTargetGroup extends TargetGroupBase implements IApplicationTargetGroup {
|
|
173
|
+
/**
|
|
174
|
+
* Import an existing target group
|
|
175
|
+
*/
|
|
176
|
+
static fromTargetGroupAttributes(scope: Construct, id: string, attrs: TargetGroupAttributes): IApplicationTargetGroup;
|
|
177
|
+
/**
|
|
178
|
+
* Import an existing target group
|
|
179
|
+
*
|
|
180
|
+
* @deprecated Use `fromTargetGroupAttributes` instead
|
|
181
|
+
*/
|
|
182
|
+
static import(scope: Construct, id: string, props: TargetGroupImportProps): IApplicationTargetGroup;
|
|
183
|
+
private readonly connectableMembers;
|
|
184
|
+
private readonly listeners;
|
|
185
|
+
private readonly protocol?;
|
|
186
|
+
private readonly port?;
|
|
187
|
+
private _metrics?;
|
|
188
|
+
constructor(scope: Construct, id: string, props?: ApplicationTargetGroupProps);
|
|
189
|
+
get metrics(): IApplicationTargetGroupMetrics;
|
|
190
|
+
/**
|
|
191
|
+
* Add a load balancing target to this target group
|
|
192
|
+
*/
|
|
193
|
+
addTarget(...targets: IApplicationLoadBalancerTarget[]): void;
|
|
194
|
+
/**
|
|
195
|
+
* Enable sticky routing via a cookie to members of this target group.
|
|
196
|
+
*
|
|
197
|
+
* Note: If the `cookieName` parameter is set, application-based stickiness will be applied,
|
|
198
|
+
* otherwise it defaults to duration-based stickiness attributes (`lb_cookie`).
|
|
199
|
+
*
|
|
200
|
+
* @see https://docs.aws.amazon.com/elasticloadbalancing/latest/application/sticky-sessions.html
|
|
201
|
+
*/
|
|
202
|
+
enableCookieStickiness(duration: Duration, cookieName?: string): void;
|
|
203
|
+
/**
|
|
204
|
+
* Register a connectable as a member of this target group.
|
|
205
|
+
*
|
|
206
|
+
* Don't call this directly. It will be called by load balancing targets.
|
|
207
|
+
*/
|
|
208
|
+
registerConnectable(connectable: IConnectable, portRange?: Port): void;
|
|
209
|
+
/**
|
|
210
|
+
* Register a listener that is load balancing to this target group.
|
|
211
|
+
*
|
|
212
|
+
* Don't call this directly. It will be called by listeners.
|
|
213
|
+
*/
|
|
214
|
+
registerListener(listener: IApplicationListener, associatingConstruct?: IConstruct): void;
|
|
215
|
+
/**
|
|
216
|
+
* Full name of first load balancer
|
|
217
|
+
*/
|
|
218
|
+
get firstLoadBalancerFullName(): string;
|
|
219
|
+
/**
|
|
220
|
+
* Return the given named metric for this Application Load Balancer Target Group
|
|
221
|
+
*
|
|
222
|
+
* Returns the metric for this target group from the point of view of the first
|
|
223
|
+
* load balancer load balancing to it. If you have multiple load balancers load
|
|
224
|
+
* sending traffic to the same target group, you will have to override the dimensions
|
|
225
|
+
* on this metric.
|
|
226
|
+
*
|
|
227
|
+
* @default Average over 5 minutes
|
|
228
|
+
*/
|
|
229
|
+
metric(metricName: string, props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
230
|
+
/**
|
|
231
|
+
* The number of IPv6 requests received by the target group
|
|
232
|
+
*
|
|
233
|
+
* @default Sum over 5 minutes
|
|
234
|
+
* @deprecated Use ``ApplicationTargetGroup.metrics.ipv6RequestCount`` instead
|
|
235
|
+
*/
|
|
236
|
+
metricIpv6RequestCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
237
|
+
/**
|
|
238
|
+
* The number of requests processed over IPv4 and IPv6.
|
|
239
|
+
*
|
|
240
|
+
* This count includes only the requests with a response generated by a target of the load balancer.
|
|
241
|
+
*
|
|
242
|
+
* @default Sum over 5 minutes
|
|
243
|
+
* @deprecated Use ``ApplicationTargetGroup.metrics.requestCount`` instead
|
|
244
|
+
*/
|
|
245
|
+
metricRequestCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
246
|
+
/**
|
|
247
|
+
* The number of healthy hosts in the target group
|
|
248
|
+
*
|
|
249
|
+
* @default Average over 5 minutes
|
|
250
|
+
* @deprecated Use ``ApplicationTargetGroup.metrics.healthyHostCount`` instead
|
|
251
|
+
*/
|
|
252
|
+
metricHealthyHostCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
253
|
+
/**
|
|
254
|
+
* The number of unhealthy hosts in the target group
|
|
255
|
+
*
|
|
256
|
+
* @default Average over 5 minutes
|
|
257
|
+
* @deprecated Use ``ApplicationTargetGroup.metrics.unhealthyHostCount`` instead
|
|
258
|
+
*/
|
|
259
|
+
metricUnhealthyHostCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
260
|
+
/**
|
|
261
|
+
* The number of HTTP 2xx/3xx/4xx/5xx response codes generated by all targets in this target group.
|
|
262
|
+
*
|
|
263
|
+
* This does not include any response codes generated by the load balancer.
|
|
264
|
+
*
|
|
265
|
+
* @default Sum over 5 minutes
|
|
266
|
+
* @deprecated Use ``ApplicationTargetGroup.metrics.httpCodeTarget`` instead
|
|
267
|
+
*/
|
|
268
|
+
metricHttpCodeTarget(code: HttpCodeTarget, props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
269
|
+
/**
|
|
270
|
+
* The average number of requests received by each target in a target group.
|
|
271
|
+
*
|
|
272
|
+
* The only valid statistic is Sum. Note that this represents the average not the sum.
|
|
273
|
+
*
|
|
274
|
+
* @default Sum over 5 minutes
|
|
275
|
+
* @deprecated Use `ApplicationTargetGroup.metrics.requestCountPerTarget` instead
|
|
276
|
+
*/
|
|
277
|
+
metricRequestCountPerTarget(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
278
|
+
/**
|
|
279
|
+
* The number of connections that were not successfully established between the load balancer and target.
|
|
280
|
+
*
|
|
281
|
+
* @default Sum over 5 minutes
|
|
282
|
+
* @deprecated Use ``ApplicationTargetGroup.metrics.targetConnectionErrorCount`` instead
|
|
283
|
+
*/
|
|
284
|
+
metricTargetConnectionErrorCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
285
|
+
/**
|
|
286
|
+
* The time elapsed, in seconds, after the request leaves the load balancer until a response from the target is received.
|
|
287
|
+
*
|
|
288
|
+
* @default Average over 5 minutes
|
|
289
|
+
* @deprecated Use ``ApplicationTargetGroup.metrics.targetResponseTime`` instead
|
|
290
|
+
*/
|
|
291
|
+
metricTargetResponseTime(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
292
|
+
/**
|
|
293
|
+
* The number of TLS connections initiated by the load balancer that did not establish a session with the target.
|
|
294
|
+
*
|
|
295
|
+
* Possible causes include a mismatch of ciphers or protocols.
|
|
296
|
+
*
|
|
297
|
+
* @default Sum over 5 minutes
|
|
298
|
+
* @deprecated Use ``ApplicationTargetGroup.metrics.tlsNegotiationErrorCount`` instead
|
|
299
|
+
*/
|
|
300
|
+
metricTargetTLSNegotiationErrorCount(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
301
|
+
protected validateTargetGroup(): string[];
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* A Target Group for Application Load Balancers
|
|
305
|
+
*/
|
|
306
|
+
export interface IApplicationTargetGroup extends ITargetGroup {
|
|
307
|
+
/**
|
|
308
|
+
* All metrics available for this target group.
|
|
309
|
+
*/
|
|
310
|
+
readonly metrics: IApplicationTargetGroupMetrics;
|
|
311
|
+
/**
|
|
312
|
+
* Register a listener that is load balancing to this target group.
|
|
313
|
+
*
|
|
314
|
+
* Don't call this directly. It will be called by listeners.
|
|
315
|
+
*/
|
|
316
|
+
registerListener(listener: IApplicationListener, associatingConstruct?: IConstruct): void;
|
|
317
|
+
/**
|
|
318
|
+
* Register a connectable as a member of this target group.
|
|
319
|
+
*
|
|
320
|
+
* Don't call this directly. It will be called by load balancing targets.
|
|
321
|
+
*/
|
|
322
|
+
registerConnectable(connectable: IConnectable, portRange?: Port): void;
|
|
323
|
+
/**
|
|
324
|
+
* Add a load balancing target to this target group
|
|
325
|
+
*/
|
|
326
|
+
addTarget(...targets: IApplicationLoadBalancerTarget[]): void;
|
|
327
|
+
}
|
|
328
|
+
/**
|
|
329
|
+
* Interface for constructs that can be targets of an application load balancer
|
|
330
|
+
*/
|
|
331
|
+
export interface IApplicationLoadBalancerTarget {
|
|
332
|
+
/**
|
|
333
|
+
* Attach load-balanced target to a TargetGroup
|
|
334
|
+
*
|
|
335
|
+
* May return JSON to directly add to the [Targets] list, or return undefined
|
|
336
|
+
* if the target will register itself with the load balancer.
|
|
337
|
+
*/
|
|
338
|
+
attachToApplicationTargetGroup(targetGroup: IApplicationTargetGroup): LoadBalancerTargetProps;
|
|
339
|
+
}
|