terraconstructs 0.0.11 → 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 +7 -5
- 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,270 @@
|
|
|
1
|
+
import { dataCloudinitConfig } from "@cdktf/provider-cloudinit";
|
|
2
|
+
import { IResolvable } from "cdktf";
|
|
3
|
+
import { IConstruct } from "constructs";
|
|
4
|
+
import { IBucket } from "../storage";
|
|
5
|
+
import { OperatingSystemType } from "./machine-image/common";
|
|
6
|
+
/**
|
|
7
|
+
* Common UserData Options
|
|
8
|
+
*/
|
|
9
|
+
export interface UserDataCommon {
|
|
10
|
+
/**
|
|
11
|
+
* Specify whether or not to base64 encode the `rendered` output. Cannot be disabled if gzip is `true`.
|
|
12
|
+
*
|
|
13
|
+
* NOTE: Instance and LaunchTemplate expect base64 encoded user data
|
|
14
|
+
*
|
|
15
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/cloudinit/2.3.6/docs/data-sources/config#base64_encode DataCloudinitConfig#base64_encode}
|
|
16
|
+
* @default true
|
|
17
|
+
*/
|
|
18
|
+
readonly base64Encode?: boolean | IResolvable;
|
|
19
|
+
/**
|
|
20
|
+
* Specify whether or not to gzip the `rendered` output.
|
|
21
|
+
*
|
|
22
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/cloudinit/2.3.6/docs/data-sources/config#gzip DataCloudinitConfig#gzip}
|
|
23
|
+
* @default true
|
|
24
|
+
*/
|
|
25
|
+
readonly gzip?: boolean | IResolvable;
|
|
26
|
+
/**
|
|
27
|
+
* `Content-Type` header of this part.
|
|
28
|
+
*
|
|
29
|
+
* Some examples of content types:
|
|
30
|
+
* * `text/x-shellscript; charset="utf-8"` (shell script)
|
|
31
|
+
* * `text/cloud-boothook; charset="utf-8"` (shell script executed during boot phase)
|
|
32
|
+
*
|
|
33
|
+
* For Linux shell scripts use `text/x-shellscript`.
|
|
34
|
+
*
|
|
35
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/cloudinit/2.3.6/docs/data-sources/config#content_type DataCloudinitConfig#content_type}
|
|
36
|
+
*
|
|
37
|
+
* @defaults to `text/plain`
|
|
38
|
+
*/
|
|
39
|
+
readonly contentType?: string;
|
|
40
|
+
/**
|
|
41
|
+
* A filename to report in the header for the part.
|
|
42
|
+
*
|
|
43
|
+
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/cloudinit/2.3.6/docs/data-sources/config#filename DataCloudinitConfig#filename}
|
|
44
|
+
*/
|
|
45
|
+
readonly filename?: string;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Options when constructing UserData for Linux
|
|
49
|
+
*/
|
|
50
|
+
export interface LinuxUserDataOptions extends UserDataCommon {
|
|
51
|
+
/**
|
|
52
|
+
* Shebang for the UserData script
|
|
53
|
+
*
|
|
54
|
+
* @default "#!/bin/bash"
|
|
55
|
+
*/
|
|
56
|
+
readonly shebang?: string;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Options when constructing UserData for Windows
|
|
60
|
+
*/
|
|
61
|
+
export interface WindowsUserDataOptions extends UserDataCommon {
|
|
62
|
+
/**
|
|
63
|
+
* Set to true to set this userdata to persist through an instance reboot; allowing
|
|
64
|
+
* it to run on every instance start.
|
|
65
|
+
* By default, UserData is run only once during the first instance launch.
|
|
66
|
+
*
|
|
67
|
+
* For more information, see:
|
|
68
|
+
* https://aws.amazon.com/premiumsupport/knowledge-center/execute-user-data-ec2/
|
|
69
|
+
* https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-windows-user-data.html#user-data-scripts
|
|
70
|
+
*
|
|
71
|
+
* @default false
|
|
72
|
+
*/
|
|
73
|
+
readonly persist?: boolean;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Options when downloading files from S3
|
|
77
|
+
*/
|
|
78
|
+
export interface S3DownloadOptions {
|
|
79
|
+
/**
|
|
80
|
+
* Name of the S3 bucket to download from
|
|
81
|
+
*/
|
|
82
|
+
readonly bucket: IBucket;
|
|
83
|
+
/**
|
|
84
|
+
* The key of the file to download
|
|
85
|
+
*/
|
|
86
|
+
readonly bucketKey: string;
|
|
87
|
+
/**
|
|
88
|
+
* The name of the local file.
|
|
89
|
+
*
|
|
90
|
+
* @default Linux - /tmp/bucketKey
|
|
91
|
+
* Windows - %TEMP%/bucketKey
|
|
92
|
+
*/
|
|
93
|
+
readonly localFile?: string;
|
|
94
|
+
/**
|
|
95
|
+
* The region of the S3 Bucket (needed for access via VPC Gateway)
|
|
96
|
+
* @default none
|
|
97
|
+
*/
|
|
98
|
+
readonly region?: string;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Options when executing a file.
|
|
102
|
+
*/
|
|
103
|
+
export interface ExecuteFileOptions {
|
|
104
|
+
/**
|
|
105
|
+
* The path to the file.
|
|
106
|
+
*/
|
|
107
|
+
readonly filePath: string;
|
|
108
|
+
/**
|
|
109
|
+
* The arguments to be passed to the file.
|
|
110
|
+
*
|
|
111
|
+
* @default No arguments are passed to the file.
|
|
112
|
+
*/
|
|
113
|
+
readonly arguments?: string;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Instance User Data
|
|
117
|
+
*
|
|
118
|
+
* resource: data_cloudinit_config
|
|
119
|
+
*
|
|
120
|
+
* This is limited to 7bit encoding
|
|
121
|
+
* ref open issue: https://github.com/hashicorp/terraform-provider-cloudinit/pull/170
|
|
122
|
+
*/
|
|
123
|
+
export declare abstract class UserData {
|
|
124
|
+
/**
|
|
125
|
+
* Create a userdata object for Linux hosts
|
|
126
|
+
*/
|
|
127
|
+
static forLinux(options?: LinuxUserDataOptions): UserData;
|
|
128
|
+
/**
|
|
129
|
+
* Create a userdata object for Windows hosts
|
|
130
|
+
*/
|
|
131
|
+
static forWindows(options?: WindowsUserDataOptions): UserData;
|
|
132
|
+
/**
|
|
133
|
+
* Create a userdata object with custom content
|
|
134
|
+
*/
|
|
135
|
+
static custom(content: string): UserData;
|
|
136
|
+
static forOperatingSystem(os: OperatingSystemType): UserData;
|
|
137
|
+
/** The UserData Content */
|
|
138
|
+
abstract readonly content: string;
|
|
139
|
+
abstract readonly contentType?: string;
|
|
140
|
+
abstract readonly filename?: string;
|
|
141
|
+
protected readonly base64Encode: boolean | IResolvable;
|
|
142
|
+
protected readonly gzip: boolean | IResolvable;
|
|
143
|
+
constructor(userdataOptions?: UserDataCommon);
|
|
144
|
+
/**
|
|
145
|
+
* Add one or more commands to the user data
|
|
146
|
+
*/
|
|
147
|
+
abstract addCommands(...commands: string[]): void;
|
|
148
|
+
/**
|
|
149
|
+
* Add one or more commands to the user data that will run when the script exits.
|
|
150
|
+
*/
|
|
151
|
+
abstract addOnExitCommands(...commands: string[]): void;
|
|
152
|
+
/**
|
|
153
|
+
* Render the UserData for use in a construct
|
|
154
|
+
*/
|
|
155
|
+
abstract render(scope: IConstruct): string;
|
|
156
|
+
/**
|
|
157
|
+
* Adds commands to download a file from S3
|
|
158
|
+
*
|
|
159
|
+
* @returns: The local path that the file will be downloaded to
|
|
160
|
+
*/
|
|
161
|
+
abstract addS3DownloadCommand(params: S3DownloadOptions): string;
|
|
162
|
+
/**
|
|
163
|
+
* Adds commands to execute a file
|
|
164
|
+
*/
|
|
165
|
+
abstract addExecuteFileCommand(params: ExecuteFileOptions): void;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* The base class for all classes which can be used as `MultipartUserData`.
|
|
169
|
+
*/
|
|
170
|
+
export declare abstract class MultipartBody {
|
|
171
|
+
/**
|
|
172
|
+
* Content type for shell scripts
|
|
173
|
+
*/
|
|
174
|
+
static readonly SHELL_SCRIPT = "text/x-shellscript; charset=\"utf-8\"";
|
|
175
|
+
/**
|
|
176
|
+
* Content type for boot hooks
|
|
177
|
+
*/
|
|
178
|
+
static readonly CLOUD_BOOTHOOK = "text/cloud-boothook; charset=\"utf-8\"";
|
|
179
|
+
/**
|
|
180
|
+
* Constructs the new `MultipartBody` wrapping existing `UserData`. Modification to `UserData` are reflected
|
|
181
|
+
* in subsequent renders of the part.
|
|
182
|
+
*
|
|
183
|
+
* For more information about content types see `MultipartBodyOptions.contentType`.
|
|
184
|
+
*
|
|
185
|
+
* @param userData user data to wrap into body part
|
|
186
|
+
* @param contentType optional content type, if default one should not be used
|
|
187
|
+
*/
|
|
188
|
+
static fromUserData(userData: UserData, contentType?: string): MultipartBody;
|
|
189
|
+
/**
|
|
190
|
+
* When transfer encoding is specified (typically as Base64), it's caller responsibility to convert body to
|
|
191
|
+
* Base64 either by wrapping with `Fn.base64` or by converting it by other converters.
|
|
192
|
+
*
|
|
193
|
+
* Note: https://github.com/hashicorp/terraform-provider-cloudinit/pull/170
|
|
194
|
+
* /
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* Constructs the raw `MultipartBody` using specified body, content type, filename and merge type
|
|
198
|
+
*/
|
|
199
|
+
static fromRawBody(opts: dataCloudinitConfig.DataCloudinitConfigPart): MultipartBody;
|
|
200
|
+
constructor();
|
|
201
|
+
/**
|
|
202
|
+
* Render body part
|
|
203
|
+
*/
|
|
204
|
+
abstract renderBodyPart(): dataCloudinitConfig.DataCloudinitConfigPart;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Options for creating `MultipartUserData`
|
|
208
|
+
*/
|
|
209
|
+
export interface MultipartUserDataOptions extends UserDataCommon {
|
|
210
|
+
/**
|
|
211
|
+
* The string used to separate parts in multipart user data archive (it's like MIME boundary).
|
|
212
|
+
*
|
|
213
|
+
* This string should contain [a-zA-Z0-9()+,-./:=?] characters only, and should not be present in any part, or in text content of archive.
|
|
214
|
+
*
|
|
215
|
+
* @default `+AWS+CDK+User+Data+Separator==`
|
|
216
|
+
*/
|
|
217
|
+
readonly partsSeparator?: string;
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Mime multipart user data.
|
|
221
|
+
*
|
|
222
|
+
* This class represents MIME multipart user data, as described in.
|
|
223
|
+
* [Specifying Multiple User Data Blocks Using a MIME Multi Part Archive](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/bootstrap_container_instance.html#multi-part_user_data)
|
|
224
|
+
*
|
|
225
|
+
*/
|
|
226
|
+
export declare class MultipartUserData extends UserData {
|
|
227
|
+
private static readonly USE_PART_ERROR;
|
|
228
|
+
private static readonly BOUNDRY_PATTERN;
|
|
229
|
+
private parts;
|
|
230
|
+
private opts;
|
|
231
|
+
private defaultUserData?;
|
|
232
|
+
readonly contentType?: string;
|
|
233
|
+
readonly filename?: string;
|
|
234
|
+
constructor(opts?: MultipartUserDataOptions);
|
|
235
|
+
/**
|
|
236
|
+
* Adds a part to the list of parts.
|
|
237
|
+
*/
|
|
238
|
+
addPart(part: MultipartBody): void;
|
|
239
|
+
/**
|
|
240
|
+
* Adds a multipart part based on a UserData object.
|
|
241
|
+
*
|
|
242
|
+
* If `makeDefault` is true, then the UserData added by this method
|
|
243
|
+
* will also be the target of calls to the `add*Command` methods on
|
|
244
|
+
* this MultipartUserData object.
|
|
245
|
+
*
|
|
246
|
+
* If `makeDefault` is false, then this is the same as calling:
|
|
247
|
+
*
|
|
248
|
+
* ```ts
|
|
249
|
+
* declare const multiPart: compute.MultipartUserData;
|
|
250
|
+
* declare const userData: compute.UserData;
|
|
251
|
+
* declare const contentType: string;
|
|
252
|
+
*
|
|
253
|
+
* multiPart.addPart(compute.MultipartBody.fromUserData(userData, contentType));
|
|
254
|
+
* ```
|
|
255
|
+
*
|
|
256
|
+
* An undefined `makeDefault` defaults to either:
|
|
257
|
+
* - `true` if no default UserData has been set yet; or
|
|
258
|
+
* - `false` if there is no default UserData set.
|
|
259
|
+
*/
|
|
260
|
+
addUserDataPart(userData: UserData, contentType?: string, makeDefault?: boolean): void;
|
|
261
|
+
/**
|
|
262
|
+
* The content of the default UserData.
|
|
263
|
+
*/
|
|
264
|
+
get content(): string;
|
|
265
|
+
render(scope: IConstruct): string;
|
|
266
|
+
addS3DownloadCommand(params: S3DownloadOptions): string;
|
|
267
|
+
addExecuteFileCommand(params: ExecuteFileOptions): void;
|
|
268
|
+
addCommands(...commands: string[]): void;
|
|
269
|
+
addOnExitCommands(...commands: string[]): void;
|
|
270
|
+
}
|