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,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a, _b, _c;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.AlbListenerTarget = exports.AlbTarget = exports.AlbArnTarget = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
// https://github.com/aws/aws-cdk/blob/v2.175.1/packages/aws-cdk-lib/aws-elasticloadbalancingv2-targets/lib/alb-target.ts
|
|
7
|
+
const compute = require("../");
|
|
8
|
+
/**
|
|
9
|
+
* A single Application Load Balancer as the target for load balancing.
|
|
10
|
+
*/
|
|
11
|
+
class AlbArnTarget {
|
|
12
|
+
/**
|
|
13
|
+
* Create a new alb target.
|
|
14
|
+
* Note that the ALB must have a listener on the provided target port.
|
|
15
|
+
*
|
|
16
|
+
* @param albArn The ARN of the application load balancer to load balance to
|
|
17
|
+
* @param port The port on which the target is listening
|
|
18
|
+
*/
|
|
19
|
+
constructor(albArn, port) {
|
|
20
|
+
this.albArn = albArn;
|
|
21
|
+
this.port = port;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Register this alb target with a load balancer
|
|
25
|
+
*
|
|
26
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
27
|
+
* load balancer.
|
|
28
|
+
*/
|
|
29
|
+
attachToNetworkTargetGroup(targetGroup) {
|
|
30
|
+
return this._attach(targetGroup);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* @internal
|
|
34
|
+
*/
|
|
35
|
+
_attach(_targetGroup) {
|
|
36
|
+
return {
|
|
37
|
+
targetType: compute.TargetType.ALB,
|
|
38
|
+
targetJson: { targetId: this.albArn, port: this.port },
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
exports.AlbArnTarget = AlbArnTarget;
|
|
43
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
44
|
+
AlbArnTarget[_a] = { fqn: "terraconstructs.aws.compute.lbtargets.AlbArnTarget", version: "0.0.12" };
|
|
45
|
+
/**
|
|
46
|
+
* A single Application Load Balancer as the target for load balancing.
|
|
47
|
+
* @deprecated Use `AlbListenerTarget` instead or
|
|
48
|
+
* `AlbArnTarget` for an imported load balancer. This target does not automatically
|
|
49
|
+
* add a dependency between the ALB listener and resulting NLB target group,
|
|
50
|
+
* without which may cause stack deployments to fail if the NLB target group is provisioned
|
|
51
|
+
* before the listener has been fully created.
|
|
52
|
+
*/
|
|
53
|
+
class AlbTarget extends AlbArnTarget {
|
|
54
|
+
/**
|
|
55
|
+
* @param alb The application load balancer to load balance to
|
|
56
|
+
* @param port The port on which the target is listening
|
|
57
|
+
*/
|
|
58
|
+
constructor(alb, port) {
|
|
59
|
+
super(alb.loadBalancerArn, port);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
exports.AlbTarget = AlbTarget;
|
|
63
|
+
_b = JSII_RTTI_SYMBOL_1;
|
|
64
|
+
AlbTarget[_b] = { fqn: "terraconstructs.aws.compute.lbtargets.AlbTarget", version: "0.0.12" };
|
|
65
|
+
/**
|
|
66
|
+
* A single Application Load Balancer's listener as the target for load balancing.
|
|
67
|
+
*/
|
|
68
|
+
class AlbListenerTarget extends AlbArnTarget {
|
|
69
|
+
/**
|
|
70
|
+
* Create a new ALB target.
|
|
71
|
+
* The associated target group will automatically have a dependency added
|
|
72
|
+
* against the ALB's listener.
|
|
73
|
+
*
|
|
74
|
+
* @param albListener The application load balancer listener to target.
|
|
75
|
+
*/
|
|
76
|
+
constructor(albListener) {
|
|
77
|
+
super(albListener.loadBalancer.loadBalancerArn, albListener.port);
|
|
78
|
+
this.albListener = albListener;
|
|
79
|
+
}
|
|
80
|
+
attach(targetGroup) {
|
|
81
|
+
targetGroup.node.addDependency(this.albListener);
|
|
82
|
+
return super._attach(targetGroup);
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Register this ALB target with a load balancer.
|
|
86
|
+
*
|
|
87
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
88
|
+
* load balancer.
|
|
89
|
+
*
|
|
90
|
+
* This adds dependency on albListener because creation of ALB listener and NLB can vary during runtime.
|
|
91
|
+
* More Details on - https://github.com/aws/aws-cdk/issues/17208
|
|
92
|
+
*/
|
|
93
|
+
attachToNetworkTargetGroup(targetGroup) {
|
|
94
|
+
return this.attach(targetGroup);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.AlbListenerTarget = AlbListenerTarget;
|
|
98
|
+
_c = JSII_RTTI_SYMBOL_1;
|
|
99
|
+
AlbListenerTarget[_c] = { fqn: "terraconstructs.aws.compute.lbtargets.AlbListenerTarget", version: "0.0.12" };
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxiLXRhcmdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hd3MvY29tcHV0ZS9sYi10YXJnZXRzL2FsYi10YXJnZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5SEFBeUg7QUFFekgsK0JBQStCO0FBRS9COztHQUVHO0FBQ0gsTUFBYSxZQUFZO0lBQ3ZCOzs7Ozs7T0FNRztJQUNILFlBQ21CLE1BQWMsRUFDZCxJQUFZO1FBRFosV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFNBQUksR0FBSixJQUFJLENBQVE7SUFDNUIsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0ksMEJBQTBCLENBQy9CLFdBQXdDO1FBRXhDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7O09BRUc7SUFDTyxPQUFPLENBQ2YsWUFBa0M7UUFFbEMsT0FBTztZQUNMLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUc7WUFDbEMsVUFBVSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUU7U0FDdkQsQ0FBQztJQUNKLENBQUM7O0FBbkNILG9DQW9DQzs7O0FBRUQ7Ozs7Ozs7R0FPRztBQUNILE1BQWEsU0FBVSxTQUFRLFlBQVk7SUFDekM7OztPQUdHO0lBQ0gsWUFBWSxHQUFxQyxFQUFFLElBQVk7UUFDN0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDbkMsQ0FBQzs7QUFQSCw4QkFRQzs7O0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGlCQUFrQixTQUFRLFlBQVk7SUFDakQ7Ozs7OztPQU1HO0lBQ0gsWUFBb0IsV0FBd0M7UUFDMUQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsZUFBZSxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQURoRCxnQkFBVyxHQUFYLFdBQVcsQ0FBNkI7SUFFNUQsQ0FBQztJQUVPLE1BQU0sQ0FDWixXQUFpQztRQUVqQyxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDakQsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLDBCQUEwQixDQUMvQixXQUF3QztRQUV4QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEMsQ0FBQzs7QUFoQ0gsOENBaUNDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTc1LjEvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjItdGFyZ2V0cy9saWIvYWxiLXRhcmdldC50c1xuXG5pbXBvcnQgKiBhcyBjb21wdXRlIGZyb20gXCIuLi9cIjtcblxuLyoqXG4gKiBBIHNpbmdsZSBBcHBsaWNhdGlvbiBMb2FkIEJhbGFuY2VyIGFzIHRoZSB0YXJnZXQgZm9yIGxvYWQgYmFsYW5jaW5nLlxuICovXG5leHBvcnQgY2xhc3MgQWxiQXJuVGFyZ2V0IGltcGxlbWVudHMgY29tcHV0ZS5JTmV0d29ya0xvYWRCYWxhbmNlclRhcmdldCB7XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYWxiIHRhcmdldC5cbiAgICogTm90ZSB0aGF0IHRoZSBBTEIgbXVzdCBoYXZlIGEgbGlzdGVuZXIgb24gdGhlIHByb3ZpZGVkIHRhcmdldCBwb3J0LlxuICAgKlxuICAgKiBAcGFyYW0gYWxiQXJuIFRoZSBBUk4gb2YgdGhlIGFwcGxpY2F0aW9uIGxvYWQgYmFsYW5jZXIgdG8gbG9hZCBiYWxhbmNlIHRvXG4gICAqIEBwYXJhbSBwb3J0IFRoZSBwb3J0IG9uIHdoaWNoIHRoZSB0YXJnZXQgaXMgbGlzdGVuaW5nXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsYkFybjogc3RyaW5nLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcG9ydDogbnVtYmVyLFxuICApIHt9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIHRoaXMgYWxiIHRhcmdldCB3aXRoIGEgbG9hZCBiYWxhbmNlclxuICAgKlxuICAgKiBEb24ndCBjYWxsIHRoaXMsIGl0IGlzIGNhbGxlZCBhdXRvbWF0aWNhbGx5IHdoZW4geW91IGFkZCB0aGUgdGFyZ2V0IHRvIGFcbiAgICogbG9hZCBiYWxhbmNlci5cbiAgICovXG4gIHB1YmxpYyBhdHRhY2hUb05ldHdvcmtUYXJnZXRHcm91cChcbiAgICB0YXJnZXRHcm91cDogY29tcHV0ZS5JTmV0d29ya1RhcmdldEdyb3VwLFxuICApOiBjb21wdXRlLkxvYWRCYWxhbmNlclRhcmdldFByb3BzIHtcbiAgICByZXR1cm4gdGhpcy5fYXR0YWNoKHRhcmdldEdyb3VwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHByb3RlY3RlZCBfYXR0YWNoKFxuICAgIF90YXJnZXRHcm91cDogY29tcHV0ZS5JVGFyZ2V0R3JvdXAsXG4gICk6IGNvbXB1dGUuTG9hZEJhbGFuY2VyVGFyZ2V0UHJvcHMge1xuICAgIHJldHVybiB7XG4gICAgICB0YXJnZXRUeXBlOiBjb21wdXRlLlRhcmdldFR5cGUuQUxCLFxuICAgICAgdGFyZ2V0SnNvbjogeyB0YXJnZXRJZDogdGhpcy5hbGJBcm4sIHBvcnQ6IHRoaXMucG9ydCB9LFxuICAgIH07XG4gIH1cbn1cblxuLyoqXG4gKiBBIHNpbmdsZSBBcHBsaWNhdGlvbiBMb2FkIEJhbGFuY2VyIGFzIHRoZSB0YXJnZXQgZm9yIGxvYWQgYmFsYW5jaW5nLlxuICogQGRlcHJlY2F0ZWQgVXNlIGBBbGJMaXN0ZW5lclRhcmdldGAgaW5zdGVhZCBvclxuICogYEFsYkFyblRhcmdldGAgZm9yIGFuIGltcG9ydGVkIGxvYWQgYmFsYW5jZXIuIFRoaXMgdGFyZ2V0IGRvZXMgbm90IGF1dG9tYXRpY2FsbHlcbiAqIGFkZCBhIGRlcGVuZGVuY3kgYmV0d2VlbiB0aGUgQUxCIGxpc3RlbmVyIGFuZCByZXN1bHRpbmcgTkxCIHRhcmdldCBncm91cCxcbiAqIHdpdGhvdXQgd2hpY2ggbWF5IGNhdXNlIHN0YWNrIGRlcGxveW1lbnRzIHRvIGZhaWwgaWYgdGhlIE5MQiB0YXJnZXQgZ3JvdXAgaXMgcHJvdmlzaW9uZWRcbiAqIGJlZm9yZSB0aGUgbGlzdGVuZXIgaGFzIGJlZW4gZnVsbHkgY3JlYXRlZC5cbiAqL1xuZXhwb3J0IGNsYXNzIEFsYlRhcmdldCBleHRlbmRzIEFsYkFyblRhcmdldCB7XG4gIC8qKlxuICAgKiBAcGFyYW0gYWxiIFRoZSBhcHBsaWNhdGlvbiBsb2FkIGJhbGFuY2VyIHRvIGxvYWQgYmFsYW5jZSB0b1xuICAgKiBAcGFyYW0gcG9ydCBUaGUgcG9ydCBvbiB3aGljaCB0aGUgdGFyZ2V0IGlzIGxpc3RlbmluZ1xuICAgKi9cbiAgY29uc3RydWN0b3IoYWxiOiBjb21wdXRlLklBcHBsaWNhdGlvbkxvYWRCYWxhbmNlciwgcG9ydDogbnVtYmVyKSB7XG4gICAgc3VwZXIoYWxiLmxvYWRCYWxhbmNlckFybiwgcG9ydCk7XG4gIH1cbn1cblxuLyoqXG4gKiBBIHNpbmdsZSBBcHBsaWNhdGlvbiBMb2FkIEJhbGFuY2VyJ3MgbGlzdGVuZXIgYXMgdGhlIHRhcmdldCBmb3IgbG9hZCBiYWxhbmNpbmcuXG4gKi9cbmV4cG9ydCBjbGFzcyBBbGJMaXN0ZW5lclRhcmdldCBleHRlbmRzIEFsYkFyblRhcmdldCB7XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgQUxCIHRhcmdldC5cbiAgICogVGhlIGFzc29jaWF0ZWQgdGFyZ2V0IGdyb3VwIHdpbGwgYXV0b21hdGljYWxseSBoYXZlIGEgZGVwZW5kZW5jeSBhZGRlZFxuICAgKiBhZ2FpbnN0IHRoZSBBTEIncyBsaXN0ZW5lci5cbiAgICpcbiAgICogQHBhcmFtIGFsYkxpc3RlbmVyIFRoZSBhcHBsaWNhdGlvbiBsb2FkIGJhbGFuY2VyIGxpc3RlbmVyIHRvIHRhcmdldC5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYWxiTGlzdGVuZXI6IGNvbXB1dGUuQXBwbGljYXRpb25MaXN0ZW5lcikge1xuICAgIHN1cGVyKGFsYkxpc3RlbmVyLmxvYWRCYWxhbmNlci5sb2FkQmFsYW5jZXJBcm4sIGFsYkxpc3RlbmVyLnBvcnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBhdHRhY2goXG4gICAgdGFyZ2V0R3JvdXA6IGNvbXB1dGUuSVRhcmdldEdyb3VwLFxuICApOiBjb21wdXRlLkxvYWRCYWxhbmNlclRhcmdldFByb3BzIHtcbiAgICB0YXJnZXRHcm91cC5ub2RlLmFkZERlcGVuZGVuY3kodGhpcy5hbGJMaXN0ZW5lcik7XG4gICAgcmV0dXJuIHN1cGVyLl9hdHRhY2godGFyZ2V0R3JvdXApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIHRoaXMgQUxCIHRhcmdldCB3aXRoIGEgbG9hZCBiYWxhbmNlci5cbiAgICpcbiAgICogRG9uJ3QgY2FsbCB0aGlzLCBpdCBpcyBjYWxsZWQgYXV0b21hdGljYWxseSB3aGVuIHlvdSBhZGQgdGhlIHRhcmdldCB0byBhXG4gICAqIGxvYWQgYmFsYW5jZXIuXG4gICAqXG4gICAqIFRoaXMgYWRkcyBkZXBlbmRlbmN5IG9uIGFsYkxpc3RlbmVyIGJlY2F1c2UgY3JlYXRpb24gb2YgQUxCIGxpc3RlbmVyIGFuZCBOTEIgY2FuIHZhcnkgZHVyaW5nIHJ1bnRpbWUuXG4gICAqIE1vcmUgRGV0YWlscyBvbiAtIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9pc3N1ZXMvMTcyMDhcbiAgICovXG4gIHB1YmxpYyBhdHRhY2hUb05ldHdvcmtUYXJnZXRHcm91cChcbiAgICB0YXJnZXRHcm91cDogY29tcHV0ZS5JTmV0d29ya1RhcmdldEdyb3VwLFxuICApOiBjb21wdXRlLkxvYWRCYWxhbmNlclRhcmdldFByb3BzIHtcbiAgICByZXR1cm4gdGhpcy5hdHRhY2godGFyZ2V0R3JvdXApO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// https://github.com/aws/aws-cdk/blob/v2.175.1/packages/aws-cdk-lib/aws-elasticloadbalancingv2-targets/lib/index.ts
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
15
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
16
|
+
};
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
__exportStar(require("./alb-target"), exports);
|
|
19
|
+
__exportStar(require("./ip-target"), exports);
|
|
20
|
+
__exportStar(require("./instance-target"), exports);
|
|
21
|
+
__exportStar(require("./lambda-target"), exports);
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXdzL2NvbXB1dGUvbGItdGFyZ2V0cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsb0hBQW9IOzs7Ozs7Ozs7Ozs7Ozs7O0FBRXBILCtDQUE2QjtBQUM3Qiw4Q0FBNEI7QUFDNUIsb0RBQWtDO0FBQ2xDLGtEQUFnQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkay9ibG9iL3YyLjE3NS4xL3BhY2thZ2VzL2F3cy1jZGstbGliL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyLXRhcmdldHMvbGliL2luZGV4LnRzXG5cbmV4cG9ydCAqIGZyb20gXCIuL2FsYi10YXJnZXRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2lwLXRhcmdldFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vaW5zdGFuY2UtdGFyZ2V0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9sYW1iZGEtdGFyZ2V0XCI7XG4iXX0=
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import * as compute from "../";
|
|
2
|
+
/**
|
|
3
|
+
* An EC2 instance that is the target for load balancing
|
|
4
|
+
*
|
|
5
|
+
* If you register a target of this type, you are responsible for making
|
|
6
|
+
* sure the load balancer's security group can connect to the instance.
|
|
7
|
+
*/
|
|
8
|
+
export declare class InstanceIdTarget implements compute.IApplicationLoadBalancerTarget, compute.INetworkLoadBalancerTarget {
|
|
9
|
+
private readonly instanceId;
|
|
10
|
+
private readonly port?;
|
|
11
|
+
/**
|
|
12
|
+
* Create a new Instance target
|
|
13
|
+
*
|
|
14
|
+
* @param instanceId Instance ID of the instance to register to
|
|
15
|
+
* @param port Override the default port for the target group
|
|
16
|
+
*/
|
|
17
|
+
constructor(instanceId: string, port?: number | undefined);
|
|
18
|
+
/**
|
|
19
|
+
* Register this instance target with a load balancer
|
|
20
|
+
*
|
|
21
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
22
|
+
* load balancer.
|
|
23
|
+
*/
|
|
24
|
+
attachToApplicationTargetGroup(targetGroup: compute.IApplicationTargetGroup): compute.LoadBalancerTargetProps;
|
|
25
|
+
/**
|
|
26
|
+
* Register this instance target with a load balancer
|
|
27
|
+
*
|
|
28
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
29
|
+
* load balancer.
|
|
30
|
+
*/
|
|
31
|
+
attachToNetworkTargetGroup(targetGroup: compute.INetworkTargetGroup): compute.LoadBalancerTargetProps;
|
|
32
|
+
private attach;
|
|
33
|
+
}
|
|
34
|
+
export declare class InstanceTarget extends InstanceIdTarget {
|
|
35
|
+
/**
|
|
36
|
+
* Create a new Instance target
|
|
37
|
+
*
|
|
38
|
+
* @param instance Instance to register to
|
|
39
|
+
* @param port Override the default port for the target group
|
|
40
|
+
*/
|
|
41
|
+
constructor(instance: compute.Instance, port?: number);
|
|
42
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a, _b;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.InstanceTarget = exports.InstanceIdTarget = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
// https://github.com/aws/aws-cdk/blob/v2.175.1/packages/aws-cdk-lib/aws-elasticloadbalancingv2-targets/lib/instance-target.ts
|
|
7
|
+
const compute = require("../");
|
|
8
|
+
/**
|
|
9
|
+
* An EC2 instance that is the target for load balancing
|
|
10
|
+
*
|
|
11
|
+
* If you register a target of this type, you are responsible for making
|
|
12
|
+
* sure the load balancer's security group can connect to the instance.
|
|
13
|
+
*/
|
|
14
|
+
class InstanceIdTarget {
|
|
15
|
+
/**
|
|
16
|
+
* Create a new Instance target
|
|
17
|
+
*
|
|
18
|
+
* @param instanceId Instance ID of the instance to register to
|
|
19
|
+
* @param port Override the default port for the target group
|
|
20
|
+
*/
|
|
21
|
+
constructor(instanceId, port) {
|
|
22
|
+
this.instanceId = instanceId;
|
|
23
|
+
this.port = port;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Register this instance target with a load balancer
|
|
27
|
+
*
|
|
28
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
29
|
+
* load balancer.
|
|
30
|
+
*/
|
|
31
|
+
attachToApplicationTargetGroup(targetGroup) {
|
|
32
|
+
return this.attach(targetGroup);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Register this instance target with a load balancer
|
|
36
|
+
*
|
|
37
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
38
|
+
* load balancer.
|
|
39
|
+
*/
|
|
40
|
+
attachToNetworkTargetGroup(targetGroup) {
|
|
41
|
+
return this.attach(targetGroup);
|
|
42
|
+
}
|
|
43
|
+
attach(_targetGroup) {
|
|
44
|
+
return {
|
|
45
|
+
targetType: compute.TargetType.INSTANCE,
|
|
46
|
+
targetJson: { targetId: this.instanceId, port: this.port },
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.InstanceIdTarget = InstanceIdTarget;
|
|
51
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
52
|
+
InstanceIdTarget[_a] = { fqn: "terraconstructs.aws.compute.lbtargets.InstanceIdTarget", version: "0.0.12" };
|
|
53
|
+
class InstanceTarget extends InstanceIdTarget {
|
|
54
|
+
/**
|
|
55
|
+
* Create a new Instance target
|
|
56
|
+
*
|
|
57
|
+
* @param instance Instance to register to
|
|
58
|
+
* @param port Override the default port for the target group
|
|
59
|
+
*/
|
|
60
|
+
constructor(instance, port) {
|
|
61
|
+
super(instance.instanceId, port);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
exports.InstanceTarget = InstanceTarget;
|
|
65
|
+
_b = JSII_RTTI_SYMBOL_1;
|
|
66
|
+
InstanceTarget[_b] = { fqn: "terraconstructs.aws.compute.lbtargets.InstanceTarget", version: "0.0.12" };
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2UtdGFyZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2F3cy9jb21wdXRlL2xiLXRhcmdldHMvaW5zdGFuY2UtdGFyZ2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsOEhBQThIO0FBRTlILCtCQUErQjtBQUUvQjs7Ozs7R0FLRztBQUNILE1BQWEsZ0JBQWdCO0lBSzNCOzs7OztPQUtHO0lBQ0gsWUFDbUIsVUFBa0IsRUFDbEIsSUFBYTtRQURiLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDbEIsU0FBSSxHQUFKLElBQUksQ0FBUztJQUM3QixDQUFDO0lBRUo7Ozs7O09BS0c7SUFDSSw4QkFBOEIsQ0FDbkMsV0FBNEM7UUFFNUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLDBCQUEwQixDQUMvQixXQUF3QztRQUV4QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVPLE1BQU0sQ0FDWixZQUFrQztRQUVsQyxPQUFPO1lBQ0wsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsUUFBUTtZQUN2QyxVQUFVLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRTtTQUMzRCxDQUFDO0lBQ0osQ0FBQzs7QUEvQ0gsNENBZ0RDOzs7QUFFRCxNQUFhLGNBQWUsU0FBUSxnQkFBZ0I7SUFDbEQ7Ozs7O09BS0c7SUFDSCxZQUFZLFFBQTBCLEVBQUUsSUFBYTtRQUNuRCxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNuQyxDQUFDOztBQVRILHdDQVVDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvdjIuMTc1LjEvcGFja2FnZXMvYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjItdGFyZ2V0cy9saWIvaW5zdGFuY2UtdGFyZ2V0LnRzXG5cbmltcG9ydCAqIGFzIGNvbXB1dGUgZnJvbSBcIi4uL1wiO1xuXG4vKipcbiAqIEFuIEVDMiBpbnN0YW5jZSB0aGF0IGlzIHRoZSB0YXJnZXQgZm9yIGxvYWQgYmFsYW5jaW5nXG4gKlxuICogSWYgeW91IHJlZ2lzdGVyIGEgdGFyZ2V0IG9mIHRoaXMgdHlwZSwgeW91IGFyZSByZXNwb25zaWJsZSBmb3IgbWFraW5nXG4gKiBzdXJlIHRoZSBsb2FkIGJhbGFuY2VyJ3Mgc2VjdXJpdHkgZ3JvdXAgY2FuIGNvbm5lY3QgdG8gdGhlIGluc3RhbmNlLlxuICovXG5leHBvcnQgY2xhc3MgSW5zdGFuY2VJZFRhcmdldFxuICBpbXBsZW1lbnRzXG4gICAgY29tcHV0ZS5JQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJUYXJnZXQsXG4gICAgY29tcHV0ZS5JTmV0d29ya0xvYWRCYWxhbmNlclRhcmdldFxue1xuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IEluc3RhbmNlIHRhcmdldFxuICAgKlxuICAgKiBAcGFyYW0gaW5zdGFuY2VJZCBJbnN0YW5jZSBJRCBvZiB0aGUgaW5zdGFuY2UgdG8gcmVnaXN0ZXIgdG9cbiAgICogQHBhcmFtIHBvcnQgT3ZlcnJpZGUgdGhlIGRlZmF1bHQgcG9ydCBmb3IgdGhlIHRhcmdldCBncm91cFxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbnN0YW5jZUlkOiBzdHJpbmcsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwb3J0PzogbnVtYmVyLFxuICApIHt9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIHRoaXMgaW5zdGFuY2UgdGFyZ2V0IHdpdGggYSBsb2FkIGJhbGFuY2VyXG4gICAqXG4gICAqIERvbid0IGNhbGwgdGhpcywgaXQgaXMgY2FsbGVkIGF1dG9tYXRpY2FsbHkgd2hlbiB5b3UgYWRkIHRoZSB0YXJnZXQgdG8gYVxuICAgKiBsb2FkIGJhbGFuY2VyLlxuICAgKi9cbiAgcHVibGljIGF0dGFjaFRvQXBwbGljYXRpb25UYXJnZXRHcm91cChcbiAgICB0YXJnZXRHcm91cDogY29tcHV0ZS5JQXBwbGljYXRpb25UYXJnZXRHcm91cCxcbiAgKTogY29tcHV0ZS5Mb2FkQmFsYW5jZXJUYXJnZXRQcm9wcyB7XG4gICAgcmV0dXJuIHRoaXMuYXR0YWNoKHRhcmdldEdyb3VwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlciB0aGlzIGluc3RhbmNlIHRhcmdldCB3aXRoIGEgbG9hZCBiYWxhbmNlclxuICAgKlxuICAgKiBEb24ndCBjYWxsIHRoaXMsIGl0IGlzIGNhbGxlZCBhdXRvbWF0aWNhbGx5IHdoZW4geW91IGFkZCB0aGUgdGFyZ2V0IHRvIGFcbiAgICogbG9hZCBiYWxhbmNlci5cbiAgICovXG4gIHB1YmxpYyBhdHRhY2hUb05ldHdvcmtUYXJnZXRHcm91cChcbiAgICB0YXJnZXRHcm91cDogY29tcHV0ZS5JTmV0d29ya1RhcmdldEdyb3VwLFxuICApOiBjb21wdXRlLkxvYWRCYWxhbmNlclRhcmdldFByb3BzIHtcbiAgICByZXR1cm4gdGhpcy5hdHRhY2godGFyZ2V0R3JvdXApO1xuICB9XG5cbiAgcHJpdmF0ZSBhdHRhY2goXG4gICAgX3RhcmdldEdyb3VwOiBjb21wdXRlLklUYXJnZXRHcm91cCxcbiAgKTogY29tcHV0ZS5Mb2FkQmFsYW5jZXJUYXJnZXRQcm9wcyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRhcmdldFR5cGU6IGNvbXB1dGUuVGFyZ2V0VHlwZS5JTlNUQU5DRSxcbiAgICAgIHRhcmdldEpzb246IHsgdGFyZ2V0SWQ6IHRoaXMuaW5zdGFuY2VJZCwgcG9ydDogdGhpcy5wb3J0IH0sXG4gICAgfTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW5zdGFuY2VUYXJnZXQgZXh0ZW5kcyBJbnN0YW5jZUlkVGFyZ2V0IHtcbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBJbnN0YW5jZSB0YXJnZXRcbiAgICpcbiAgICogQHBhcmFtIGluc3RhbmNlIEluc3RhbmNlIHRvIHJlZ2lzdGVyIHRvXG4gICAqIEBwYXJhbSBwb3J0IE92ZXJyaWRlIHRoZSBkZWZhdWx0IHBvcnQgZm9yIHRoZSB0YXJnZXQgZ3JvdXBcbiAgICovXG4gIGNvbnN0cnVjdG9yKGluc3RhbmNlOiBjb21wdXRlLkluc3RhbmNlLCBwb3J0PzogbnVtYmVyKSB7XG4gICAgc3VwZXIoaW5zdGFuY2UuaW5zdGFuY2VJZCwgcG9ydCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import * as elbv2 from "../";
|
|
2
|
+
/**
|
|
3
|
+
* An IP address that is a target for load balancing.
|
|
4
|
+
*
|
|
5
|
+
* Specify IP addresses from the subnets of the virtual private cloud (VPC) for
|
|
6
|
+
* the target group, the RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and
|
|
7
|
+
* 192.168.0.0/16), and the RFC 6598 range (100.64.0.0/10). You can't specify
|
|
8
|
+
* publicly routable IP addresses.
|
|
9
|
+
*
|
|
10
|
+
* If you register a target of this type, you are responsible for making
|
|
11
|
+
* sure the load balancer's security group can send packets to the IP address.
|
|
12
|
+
*/
|
|
13
|
+
export declare class IpTarget implements elbv2.IApplicationLoadBalancerTarget, elbv2.INetworkLoadBalancerTarget {
|
|
14
|
+
private readonly ipAddress;
|
|
15
|
+
private readonly port?;
|
|
16
|
+
private readonly availabilityZone?;
|
|
17
|
+
/**
|
|
18
|
+
* Create a new IPAddress target
|
|
19
|
+
*
|
|
20
|
+
* The availabilityZone parameter determines whether the target receives
|
|
21
|
+
* traffic from the load balancer nodes in the specified Availability Zone
|
|
22
|
+
* or from all enabled Availability Zones for the load balancer.
|
|
23
|
+
*
|
|
24
|
+
* This parameter is not supported if the target type of the target group
|
|
25
|
+
* is instance. If the IP address is in a subnet of the VPC for the target
|
|
26
|
+
* group, the Availability Zone is automatically detected and this
|
|
27
|
+
* parameter is optional. If the IP address is outside the VPC, this
|
|
28
|
+
* parameter is required.
|
|
29
|
+
*
|
|
30
|
+
* With an Application Load Balancer, if the IP address is outside the VPC
|
|
31
|
+
* for the target group, the only supported value is all.
|
|
32
|
+
*
|
|
33
|
+
* Default is automatic.
|
|
34
|
+
*
|
|
35
|
+
* @param ipAddress The IP Address to load balance to
|
|
36
|
+
* @param port Override the group's default port
|
|
37
|
+
* @param availabilityZone Availability zone to send traffic from
|
|
38
|
+
*/
|
|
39
|
+
constructor(ipAddress: string, port?: number | undefined, availabilityZone?: string | undefined);
|
|
40
|
+
/**
|
|
41
|
+
* Register this instance target with a load balancer
|
|
42
|
+
*
|
|
43
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
44
|
+
* load balancer.
|
|
45
|
+
*/
|
|
46
|
+
attachToApplicationTargetGroup(targetGroup: elbv2.IApplicationTargetGroup): elbv2.LoadBalancerTargetProps;
|
|
47
|
+
/**
|
|
48
|
+
* Register this instance target with a load balancer
|
|
49
|
+
*
|
|
50
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
51
|
+
* load balancer.
|
|
52
|
+
*/
|
|
53
|
+
attachToNetworkTargetGroup(targetGroup: elbv2.INetworkTargetGroup): elbv2.LoadBalancerTargetProps;
|
|
54
|
+
private attach;
|
|
55
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.IpTarget = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
// https://github.com/aws/aws-cdk/blob/v2.175.1/packages/aws-cdk-lib/aws-elasticloadbalancingv2-targets/lib/ip-target.ts
|
|
7
|
+
const elbv2 = require("../");
|
|
8
|
+
/**
|
|
9
|
+
* An IP address that is a target for load balancing.
|
|
10
|
+
*
|
|
11
|
+
* Specify IP addresses from the subnets of the virtual private cloud (VPC) for
|
|
12
|
+
* the target group, the RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and
|
|
13
|
+
* 192.168.0.0/16), and the RFC 6598 range (100.64.0.0/10). You can't specify
|
|
14
|
+
* publicly routable IP addresses.
|
|
15
|
+
*
|
|
16
|
+
* If you register a target of this type, you are responsible for making
|
|
17
|
+
* sure the load balancer's security group can send packets to the IP address.
|
|
18
|
+
*/
|
|
19
|
+
class IpTarget {
|
|
20
|
+
/**
|
|
21
|
+
* Create a new IPAddress target
|
|
22
|
+
*
|
|
23
|
+
* The availabilityZone parameter determines whether the target receives
|
|
24
|
+
* traffic from the load balancer nodes in the specified Availability Zone
|
|
25
|
+
* or from all enabled Availability Zones for the load balancer.
|
|
26
|
+
*
|
|
27
|
+
* This parameter is not supported if the target type of the target group
|
|
28
|
+
* is instance. If the IP address is in a subnet of the VPC for the target
|
|
29
|
+
* group, the Availability Zone is automatically detected and this
|
|
30
|
+
* parameter is optional. If the IP address is outside the VPC, this
|
|
31
|
+
* parameter is required.
|
|
32
|
+
*
|
|
33
|
+
* With an Application Load Balancer, if the IP address is outside the VPC
|
|
34
|
+
* for the target group, the only supported value is all.
|
|
35
|
+
*
|
|
36
|
+
* Default is automatic.
|
|
37
|
+
*
|
|
38
|
+
* @param ipAddress The IP Address to load balance to
|
|
39
|
+
* @param port Override the group's default port
|
|
40
|
+
* @param availabilityZone Availability zone to send traffic from
|
|
41
|
+
*/
|
|
42
|
+
constructor(ipAddress, port, availabilityZone) {
|
|
43
|
+
this.ipAddress = ipAddress;
|
|
44
|
+
this.port = port;
|
|
45
|
+
this.availabilityZone = availabilityZone;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Register this instance target with a load balancer
|
|
49
|
+
*
|
|
50
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
51
|
+
* load balancer.
|
|
52
|
+
*/
|
|
53
|
+
attachToApplicationTargetGroup(targetGroup) {
|
|
54
|
+
return this.attach(targetGroup);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Register this instance target with a load balancer
|
|
58
|
+
*
|
|
59
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
60
|
+
* load balancer.
|
|
61
|
+
*/
|
|
62
|
+
attachToNetworkTargetGroup(targetGroup) {
|
|
63
|
+
return this.attach(targetGroup);
|
|
64
|
+
}
|
|
65
|
+
attach(_targetGroup) {
|
|
66
|
+
return {
|
|
67
|
+
targetType: elbv2.TargetType.IP,
|
|
68
|
+
targetJson: {
|
|
69
|
+
targetId: this.ipAddress,
|
|
70
|
+
port: this.port,
|
|
71
|
+
availabilityZone: this.availabilityZone,
|
|
72
|
+
},
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
exports.IpTarget = IpTarget;
|
|
77
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
78
|
+
IpTarget[_a] = { fqn: "terraconstructs.aws.compute.lbtargets.IpTarget", version: "0.0.12" };
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXAtdGFyZ2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2F3cy9jb21wdXRlL2xiLXRhcmdldHMvaXAtdGFyZ2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsd0hBQXdIO0FBRXhILDZCQUE2QjtBQUU3Qjs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBYSxRQUFRO0lBS25COzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FxQkc7SUFDSCxZQUNtQixTQUFpQixFQUNqQixJQUFhLEVBQ2IsZ0JBQXlCO1FBRnpCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsU0FBSSxHQUFKLElBQUksQ0FBUztRQUNiLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBUztJQUN6QyxDQUFDO0lBRUo7Ozs7O09BS0c7SUFDSSw4QkFBOEIsQ0FDbkMsV0FBMEM7UUFFMUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLDBCQUEwQixDQUMvQixXQUFzQztRQUV0QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVPLE1BQU0sQ0FDWixZQUFnQztRQUVoQyxPQUFPO1lBQ0wsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMvQixVQUFVLEVBQUU7Z0JBQ1YsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTO2dCQUN4QixJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2YsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjthQUN4QztTQUNGLENBQUM7SUFDSixDQUFDOztBQXBFSCw0QkFxRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzUuMS9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mi10YXJnZXRzL2xpYi9pcC10YXJnZXQudHNcblxuaW1wb3J0ICogYXMgZWxidjIgZnJvbSBcIi4uL1wiO1xuXG4vKipcbiAqIEFuIElQIGFkZHJlc3MgdGhhdCBpcyBhIHRhcmdldCBmb3IgbG9hZCBiYWxhbmNpbmcuXG4gKlxuICogU3BlY2lmeSBJUCBhZGRyZXNzZXMgZnJvbSB0aGUgc3VibmV0cyBvZiB0aGUgdmlydHVhbCBwcml2YXRlIGNsb3VkIChWUEMpIGZvclxuICogdGhlIHRhcmdldCBncm91cCwgdGhlIFJGQyAxOTE4IHJhbmdlICgxMC4wLjAuMC84LCAxNzIuMTYuMC4wLzEyLCBhbmRcbiAqIDE5Mi4xNjguMC4wLzE2KSwgYW5kIHRoZSBSRkMgNjU5OCByYW5nZSAoMTAwLjY0LjAuMC8xMCkuIFlvdSBjYW4ndCBzcGVjaWZ5XG4gKiBwdWJsaWNseSByb3V0YWJsZSBJUCBhZGRyZXNzZXMuXG4gKlxuICogSWYgeW91IHJlZ2lzdGVyIGEgdGFyZ2V0IG9mIHRoaXMgdHlwZSwgeW91IGFyZSByZXNwb25zaWJsZSBmb3IgbWFraW5nXG4gKiBzdXJlIHRoZSBsb2FkIGJhbGFuY2VyJ3Mgc2VjdXJpdHkgZ3JvdXAgY2FuIHNlbmQgcGFja2V0cyB0byB0aGUgSVAgYWRkcmVzcy5cbiAqL1xuZXhwb3J0IGNsYXNzIElwVGFyZ2V0XG4gIGltcGxlbWVudHNcbiAgICBlbGJ2Mi5JQXBwbGljYXRpb25Mb2FkQmFsYW5jZXJUYXJnZXQsXG4gICAgZWxidjIuSU5ldHdvcmtMb2FkQmFsYW5jZXJUYXJnZXRcbntcbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBJUEFkZHJlc3MgdGFyZ2V0XG4gICAqXG4gICAqIFRoZSBhdmFpbGFiaWxpdHlab25lIHBhcmFtZXRlciBkZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHRhcmdldCByZWNlaXZlc1xuICAgKiB0cmFmZmljIGZyb20gdGhlIGxvYWQgYmFsYW5jZXIgbm9kZXMgaW4gdGhlIHNwZWNpZmllZCBBdmFpbGFiaWxpdHkgWm9uZVxuICAgKiBvciBmcm9tIGFsbCBlbmFibGVkIEF2YWlsYWJpbGl0eSBab25lcyBmb3IgdGhlIGxvYWQgYmFsYW5jZXIuXG4gICAqXG4gICAqIFRoaXMgcGFyYW1ldGVyIGlzIG5vdCBzdXBwb3J0ZWQgaWYgdGhlIHRhcmdldCB0eXBlIG9mIHRoZSB0YXJnZXQgZ3JvdXBcbiAgICogaXMgaW5zdGFuY2UuIElmIHRoZSBJUCBhZGRyZXNzIGlzIGluIGEgc3VibmV0IG9mIHRoZSBWUEMgZm9yIHRoZSB0YXJnZXRcbiAgICogZ3JvdXAsIHRoZSBBdmFpbGFiaWxpdHkgWm9uZSBpcyBhdXRvbWF0aWNhbGx5IGRldGVjdGVkIGFuZCB0aGlzXG4gICAqIHBhcmFtZXRlciBpcyBvcHRpb25hbC4gSWYgdGhlIElQIGFkZHJlc3MgaXMgb3V0c2lkZSB0aGUgVlBDLCB0aGlzXG4gICAqIHBhcmFtZXRlciBpcyByZXF1aXJlZC5cbiAgICpcbiAgICogV2l0aCBhbiBBcHBsaWNhdGlvbiBMb2FkIEJhbGFuY2VyLCBpZiB0aGUgSVAgYWRkcmVzcyBpcyBvdXRzaWRlIHRoZSBWUENcbiAgICogZm9yIHRoZSB0YXJnZXQgZ3JvdXAsIHRoZSBvbmx5IHN1cHBvcnRlZCB2YWx1ZSBpcyBhbGwuXG4gICAqXG4gICAqIERlZmF1bHQgaXMgYXV0b21hdGljLlxuICAgKlxuICAgKiBAcGFyYW0gaXBBZGRyZXNzIFRoZSBJUCBBZGRyZXNzIHRvIGxvYWQgYmFsYW5jZSB0b1xuICAgKiBAcGFyYW0gcG9ydCBPdmVycmlkZSB0aGUgZ3JvdXAncyBkZWZhdWx0IHBvcnRcbiAgICogQHBhcmFtIGF2YWlsYWJpbGl0eVpvbmUgQXZhaWxhYmlsaXR5IHpvbmUgdG8gc2VuZCB0cmFmZmljIGZyb21cbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaXBBZGRyZXNzOiBzdHJpbmcsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwb3J0PzogbnVtYmVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXZhaWxhYmlsaXR5Wm9uZT86IHN0cmluZyxcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlciB0aGlzIGluc3RhbmNlIHRhcmdldCB3aXRoIGEgbG9hZCBiYWxhbmNlclxuICAgKlxuICAgKiBEb24ndCBjYWxsIHRoaXMsIGl0IGlzIGNhbGxlZCBhdXRvbWF0aWNhbGx5IHdoZW4geW91IGFkZCB0aGUgdGFyZ2V0IHRvIGFcbiAgICogbG9hZCBiYWxhbmNlci5cbiAgICovXG4gIHB1YmxpYyBhdHRhY2hUb0FwcGxpY2F0aW9uVGFyZ2V0R3JvdXAoXG4gICAgdGFyZ2V0R3JvdXA6IGVsYnYyLklBcHBsaWNhdGlvblRhcmdldEdyb3VwLFxuICApOiBlbGJ2Mi5Mb2FkQmFsYW5jZXJUYXJnZXRQcm9wcyB7XG4gICAgcmV0dXJuIHRoaXMuYXR0YWNoKHRhcmdldEdyb3VwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlciB0aGlzIGluc3RhbmNlIHRhcmdldCB3aXRoIGEgbG9hZCBiYWxhbmNlclxuICAgKlxuICAgKiBEb24ndCBjYWxsIHRoaXMsIGl0IGlzIGNhbGxlZCBhdXRvbWF0aWNhbGx5IHdoZW4geW91IGFkZCB0aGUgdGFyZ2V0IHRvIGFcbiAgICogbG9hZCBiYWxhbmNlci5cbiAgICovXG4gIHB1YmxpYyBhdHRhY2hUb05ldHdvcmtUYXJnZXRHcm91cChcbiAgICB0YXJnZXRHcm91cDogZWxidjIuSU5ldHdvcmtUYXJnZXRHcm91cCxcbiAgKTogZWxidjIuTG9hZEJhbGFuY2VyVGFyZ2V0UHJvcHMge1xuICAgIHJldHVybiB0aGlzLmF0dGFjaCh0YXJnZXRHcm91cCk7XG4gIH1cblxuICBwcml2YXRlIGF0dGFjaChcbiAgICBfdGFyZ2V0R3JvdXA6IGVsYnYyLklUYXJnZXRHcm91cCxcbiAgKTogZWxidjIuTG9hZEJhbGFuY2VyVGFyZ2V0UHJvcHMge1xuICAgIHJldHVybiB7XG4gICAgICB0YXJnZXRUeXBlOiBlbGJ2Mi5UYXJnZXRUeXBlLklQLFxuICAgICAgdGFyZ2V0SnNvbjoge1xuICAgICAgICB0YXJnZXRJZDogdGhpcy5pcEFkZHJlc3MsXG4gICAgICAgIHBvcnQ6IHRoaXMucG9ydCxcbiAgICAgICAgYXZhaWxhYmlsaXR5Wm9uZTogdGhpcy5hdmFpbGFiaWxpdHlab25lLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as compute from "../";
|
|
2
|
+
export declare class LambdaTarget implements compute.IApplicationLoadBalancerTarget {
|
|
3
|
+
private readonly fn;
|
|
4
|
+
/**
|
|
5
|
+
* Create a new Lambda target
|
|
6
|
+
*
|
|
7
|
+
* @param functionArn The Lambda Function to load balance to
|
|
8
|
+
*/
|
|
9
|
+
constructor(fn: compute.IFunction);
|
|
10
|
+
/**
|
|
11
|
+
* Register this instance target with a load balancer
|
|
12
|
+
*
|
|
13
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
14
|
+
* load balancer.
|
|
15
|
+
*/
|
|
16
|
+
attachToApplicationTargetGroup(targetGroup: compute.IApplicationTargetGroup): compute.LoadBalancerTargetProps;
|
|
17
|
+
/**
|
|
18
|
+
* Register this instance target with a load balancer
|
|
19
|
+
*
|
|
20
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
21
|
+
* load balancer.
|
|
22
|
+
*/
|
|
23
|
+
attachToNetworkTargetGroup(targetGroup: compute.INetworkTargetGroup): compute.LoadBalancerTargetProps;
|
|
24
|
+
private attach;
|
|
25
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.LambdaTarget = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
// https://github.com/aws/aws-cdk/blob/v2.175.1/packages/aws-cdk-lib/aws-elasticloadbalancingv2-targets/lib/lambda-target.ts
|
|
7
|
+
const compute = require("../");
|
|
8
|
+
const iam = require("../../iam");
|
|
9
|
+
class LambdaTarget {
|
|
10
|
+
/**
|
|
11
|
+
* Create a new Lambda target
|
|
12
|
+
*
|
|
13
|
+
* @param functionArn The Lambda Function to load balance to
|
|
14
|
+
*/
|
|
15
|
+
constructor(fn) {
|
|
16
|
+
this.fn = fn;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Register this instance target with a load balancer
|
|
20
|
+
*
|
|
21
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
22
|
+
* load balancer.
|
|
23
|
+
*/
|
|
24
|
+
attachToApplicationTargetGroup(targetGroup) {
|
|
25
|
+
const grant = this.fn.grantInvoke(new iam.ServicePrincipal("elasticloadbalancing.amazonaws.com"));
|
|
26
|
+
grant.applyBefore(targetGroup);
|
|
27
|
+
return this.attach(targetGroup);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Register this instance target with a load balancer
|
|
31
|
+
*
|
|
32
|
+
* Don't call this, it is called automatically when you add the target to a
|
|
33
|
+
* load balancer.
|
|
34
|
+
*/
|
|
35
|
+
attachToNetworkTargetGroup(targetGroup) {
|
|
36
|
+
const grant = this.fn.grantInvoke(new iam.ServicePrincipal("elasticloadbalancing.amazonaws.com"));
|
|
37
|
+
grant.applyBefore(targetGroup);
|
|
38
|
+
return this.attach(targetGroup);
|
|
39
|
+
}
|
|
40
|
+
attach(_targetGroup) {
|
|
41
|
+
return {
|
|
42
|
+
targetType: compute.TargetType.LAMBDA,
|
|
43
|
+
targetJson: { targetId: this.fn.functionArn },
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
exports.LambdaTarget = LambdaTarget;
|
|
48
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
49
|
+
LambdaTarget[_a] = { fqn: "terraconstructs.aws.compute.lbtargets.LambdaTarget", version: "0.0.12" };
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLXRhcmdldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hd3MvY29tcHV0ZS9sYi10YXJnZXRzL2xhbWJkYS10YXJnZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw0SEFBNEg7QUFFNUgsK0JBQStCO0FBQy9CLGlDQUFpQztBQUVqQyxNQUFhLFlBQVk7SUFDdkI7Ozs7T0FJRztJQUNILFlBQTZCLEVBQXFCO1FBQXJCLE9BQUUsR0FBRixFQUFFLENBQW1CO0lBQUcsQ0FBQztJQUV0RDs7Ozs7T0FLRztJQUNJLDhCQUE4QixDQUNuQyxXQUE0QztRQUU1QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FDL0IsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsb0NBQW9DLENBQUMsQ0FDL0QsQ0FBQztRQUNGLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDL0IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLDBCQUEwQixDQUMvQixXQUF3QztRQUV4QyxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FDL0IsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsb0NBQW9DLENBQUMsQ0FDL0QsQ0FBQztRQUNGLEtBQUssQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDL0IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTyxNQUFNLENBQ1osWUFBa0M7UUFFbEMsT0FBTztZQUNMLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLE1BQU07WUFDckMsVUFBVSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsV0FBVyxFQUFFO1NBQzlDLENBQUM7SUFDSixDQUFDOztBQS9DSCxvQ0FnREMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi92Mi4xNzUuMS9wYWNrYWdlcy9hd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2Mi10YXJnZXRzL2xpYi9sYW1iZGEtdGFyZ2V0LnRzXG5cbmltcG9ydCAqIGFzIGNvbXB1dGUgZnJvbSBcIi4uL1wiO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gXCIuLi8uLi9pYW1cIjtcblxuZXhwb3J0IGNsYXNzIExhbWJkYVRhcmdldCBpbXBsZW1lbnRzIGNvbXB1dGUuSUFwcGxpY2F0aW9uTG9hZEJhbGFuY2VyVGFyZ2V0IHtcbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBMYW1iZGEgdGFyZ2V0XG4gICAqXG4gICAqIEBwYXJhbSBmdW5jdGlvbkFybiBUaGUgTGFtYmRhIEZ1bmN0aW9uIHRvIGxvYWQgYmFsYW5jZSB0b1xuICAgKi9cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBmbjogY29tcHV0ZS5JRnVuY3Rpb24pIHt9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIHRoaXMgaW5zdGFuY2UgdGFyZ2V0IHdpdGggYSBsb2FkIGJhbGFuY2VyXG4gICAqXG4gICAqIERvbid0IGNhbGwgdGhpcywgaXQgaXMgY2FsbGVkIGF1dG9tYXRpY2FsbHkgd2hlbiB5b3UgYWRkIHRoZSB0YXJnZXQgdG8gYVxuICAgKiBsb2FkIGJhbGFuY2VyLlxuICAgKi9cbiAgcHVibGljIGF0dGFjaFRvQXBwbGljYXRpb25UYXJnZXRHcm91cChcbiAgICB0YXJnZXRHcm91cDogY29tcHV0ZS5JQXBwbGljYXRpb25UYXJnZXRHcm91cCxcbiAgKTogY29tcHV0ZS5Mb2FkQmFsYW5jZXJUYXJnZXRQcm9wcyB7XG4gICAgY29uc3QgZ3JhbnQgPSB0aGlzLmZuLmdyYW50SW52b2tlKFxuICAgICAgbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKFwiZWxhc3RpY2xvYWRiYWxhbmNpbmcuYW1hem9uYXdzLmNvbVwiKSxcbiAgICApO1xuICAgIGdyYW50LmFwcGx5QmVmb3JlKHRhcmdldEdyb3VwKTtcbiAgICByZXR1cm4gdGhpcy5hdHRhY2godGFyZ2V0R3JvdXApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVyIHRoaXMgaW5zdGFuY2UgdGFyZ2V0IHdpdGggYSBsb2FkIGJhbGFuY2VyXG4gICAqXG4gICAqIERvbid0IGNhbGwgdGhpcywgaXQgaXMgY2FsbGVkIGF1dG9tYXRpY2FsbHkgd2hlbiB5b3UgYWRkIHRoZSB0YXJnZXQgdG8gYVxuICAgKiBsb2FkIGJhbGFuY2VyLlxuICAgKi9cbiAgcHVibGljIGF0dGFjaFRvTmV0d29ya1RhcmdldEdyb3VwKFxuICAgIHRhcmdldEdyb3VwOiBjb21wdXRlLklOZXR3b3JrVGFyZ2V0R3JvdXAsXG4gICk6IGNvbXB1dGUuTG9hZEJhbGFuY2VyVGFyZ2V0UHJvcHMge1xuICAgIGNvbnN0IGdyYW50ID0gdGhpcy5mbi5ncmFudEludm9rZShcbiAgICAgIG5ldyBpYW0uU2VydmljZVByaW5jaXBhbChcImVsYXN0aWNsb2FkYmFsYW5jaW5nLmFtYXpvbmF3cy5jb21cIiksXG4gICAgKTtcbiAgICBncmFudC5hcHBseUJlZm9yZSh0YXJnZXRHcm91cCk7XG4gICAgcmV0dXJuIHRoaXMuYXR0YWNoKHRhcmdldEdyb3VwKTtcbiAgfVxuXG4gIHByaXZhdGUgYXR0YWNoKFxuICAgIF90YXJnZXRHcm91cDogY29tcHV0ZS5JVGFyZ2V0R3JvdXAsXG4gICk6IGNvbXB1dGUuTG9hZEJhbGFuY2VyVGFyZ2V0UHJvcHMge1xuICAgIHJldHVybiB7XG4gICAgICB0YXJnZXRUeXBlOiBjb21wdXRlLlRhcmdldFR5cGUuTEFNQkRBLFxuICAgICAgdGFyZ2V0SnNvbjogeyB0YXJnZXRJZDogdGhpcy5mbi5mdW5jdGlvbkFybiB9LFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|