terraconstructs 0.0.11 → 0.0.13
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 +105205 -35113
- 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.d.ts +26 -1
- package/lib/aws/notify/event-pattern.js +49 -5
- 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,463 @@
|
|
|
1
|
+
import { Construct } from "constructs";
|
|
2
|
+
import { AmazonLinux2022ImageSsmParameterProps } from "./amazon-linux-2022";
|
|
3
|
+
import { AmazonLinux2023ImageSsmParameterProps } from "./amazon-linux-2023";
|
|
4
|
+
import { AmazonLinux2ImageSsmParameterProps } from "./amazon-linux2";
|
|
5
|
+
import { AmazonLinuxCpuType, AmazonLinuxEdition, AmazonLinuxGeneration, AmazonLinuxStorage, AmazonLinuxVirt, IMachineImage, MachineImageConfig, OperatingSystemType } from "./common";
|
|
6
|
+
import { UserData } from "../user-data";
|
|
7
|
+
import { WindowsVersion } from "../windows-versions";
|
|
8
|
+
/**
|
|
9
|
+
* Factory functions for standard Amazon Machine Image objects.
|
|
10
|
+
*/
|
|
11
|
+
export declare abstract class MachineImage {
|
|
12
|
+
/**
|
|
13
|
+
* A Windows image that is automatically kept up-to-date
|
|
14
|
+
*
|
|
15
|
+
* This Machine Image automatically updates to the latest version on every
|
|
16
|
+
* deployment. Be aware this will cause your instances to be replaced when a
|
|
17
|
+
* new version of the image becomes available. Do not store stateful information
|
|
18
|
+
* on the instance if you are using this image.
|
|
19
|
+
*/
|
|
20
|
+
static latestWindows(version: WindowsVersion, props?: WindowsImageProps): IMachineImage;
|
|
21
|
+
/**
|
|
22
|
+
* An Amazon Linux 2 image that is automatically kept up-to-date
|
|
23
|
+
*
|
|
24
|
+
* This Machine Image automatically updates to the latest version on every
|
|
25
|
+
* deployment. Be aware this will cause your instances to be replaced when a
|
|
26
|
+
* new version of the image becomes available. Do not store stateful information
|
|
27
|
+
* on the instance if you are using this image.
|
|
28
|
+
*/
|
|
29
|
+
static latestAmazonLinux2(props?: AmazonLinux2ImageSsmParameterProps): IMachineImage;
|
|
30
|
+
/**
|
|
31
|
+
* An Amazon Linux 2022 image that is automatically kept up-to-date
|
|
32
|
+
*
|
|
33
|
+
* This Machine Image automatically updates to the latest version on every
|
|
34
|
+
* deployment. Be aware this will cause your instances to be replaced when a
|
|
35
|
+
* new version of the image becomes available. Do not store stateful information
|
|
36
|
+
* on the instance if you are using this image.
|
|
37
|
+
*
|
|
38
|
+
* @deprecated - use latestAmazonLinux2023() instead
|
|
39
|
+
*/
|
|
40
|
+
static latestAmazonLinux2022(props?: AmazonLinux2022ImageSsmParameterProps): IMachineImage;
|
|
41
|
+
/**
|
|
42
|
+
* An Amazon Linux 2023 image that is automatically kept up-to-date
|
|
43
|
+
*
|
|
44
|
+
* This Machine Image automatically updates to the latest version on every
|
|
45
|
+
* deployment. Be aware this will cause your instances to be replaced when a
|
|
46
|
+
* new version of the image becomes available. Do not store stateful information
|
|
47
|
+
* on the instance if you are using this image.
|
|
48
|
+
*/
|
|
49
|
+
static latestAmazonLinux2023(props?: AmazonLinux2023ImageSsmParameterProps): IMachineImage;
|
|
50
|
+
/**
|
|
51
|
+
* An Amazon Linux image that is automatically kept up-to-date
|
|
52
|
+
*
|
|
53
|
+
* This Machine Image automatically updates to the latest version on every
|
|
54
|
+
* deployment. Be aware this will cause your instances to be replaced when a
|
|
55
|
+
* new version of the image becomes available. Do not store stateful information
|
|
56
|
+
* on the instance if you are using this image.
|
|
57
|
+
*
|
|
58
|
+
* N.B.: "latest" in the name of this function indicates that it always uses the most recent
|
|
59
|
+
* image of a particular generation of Amazon Linux, not that it uses the "latest generation".
|
|
60
|
+
* For backwards compatibility, this function uses Amazon Linux 1 if no generation
|
|
61
|
+
* is specified.
|
|
62
|
+
*
|
|
63
|
+
* Specify the desired generation using the `generation` property:
|
|
64
|
+
*
|
|
65
|
+
* ```ts
|
|
66
|
+
* compute.MachineImage.latestAmazonLinux({
|
|
67
|
+
* // Use Amazon Linux 2
|
|
68
|
+
* generation: ec2.AmazonLinuxGeneration.AMAZON_LINUX_2,
|
|
69
|
+
* })
|
|
70
|
+
* ```
|
|
71
|
+
* @deprecated use MachineImage.latestAmazonLinux2 instead
|
|
72
|
+
*/
|
|
73
|
+
static latestAmazonLinux(props?: AmazonLinuxImageProps): IMachineImage;
|
|
74
|
+
/**
|
|
75
|
+
* A Linux image where you specify the AMI ID for every region
|
|
76
|
+
*
|
|
77
|
+
* @param amiMap For every region where you are deploying the stack,
|
|
78
|
+
* specify the AMI ID for that region.
|
|
79
|
+
* @param props Customize the image by supplying additional props
|
|
80
|
+
*/
|
|
81
|
+
static genericLinux(amiMap: Record<string, string>, props?: GenericLinuxImageProps): IMachineImage;
|
|
82
|
+
/**
|
|
83
|
+
* A Windows image where you specify the AMI ID for every region
|
|
84
|
+
*
|
|
85
|
+
* @param amiMap For every region where you are deploying the stack,
|
|
86
|
+
* specify the AMI ID for that region.
|
|
87
|
+
* @param props Customize the image by supplying additional props
|
|
88
|
+
*/
|
|
89
|
+
static genericWindows(amiMap: Record<string, string>, props?: GenericWindowsImageProps): IMachineImage;
|
|
90
|
+
/**
|
|
91
|
+
* An image specified in SSM parameter store that is automatically kept up-to-date
|
|
92
|
+
*
|
|
93
|
+
* This Machine Image automatically updates to the latest version on every
|
|
94
|
+
* deployment. Be aware this will cause your instances to be replaced when a
|
|
95
|
+
* new version of the image becomes available. Do not store stateful information
|
|
96
|
+
* on the instance if you are using this image.
|
|
97
|
+
*
|
|
98
|
+
* @param parameterName The name of SSM parameter containing the AMi id
|
|
99
|
+
* @param os The operating system type of the AMI
|
|
100
|
+
* @param userData optional user data for the given image
|
|
101
|
+
* @deprecated Use `MachineImage.fromSsmParameter()` instead
|
|
102
|
+
*/
|
|
103
|
+
static fromSSMParameter(parameterName: string, os: OperatingSystemType, userData?: UserData): IMachineImage;
|
|
104
|
+
/**
|
|
105
|
+
* An image specified in SSM parameter store
|
|
106
|
+
*
|
|
107
|
+
* By default, the SSM parameter is refreshed at every deployment,
|
|
108
|
+
* causing your instances to be replaced whenever a new version of the AMI
|
|
109
|
+
* is released.
|
|
110
|
+
*
|
|
111
|
+
* Pass `{ cachedInContext: true }` to keep the AMI ID stable. If you do, you
|
|
112
|
+
* will have to remember to periodically invalidate the context to refresh
|
|
113
|
+
* to the newest AMI ID.
|
|
114
|
+
*/
|
|
115
|
+
static fromSsmParameter(parameterName: string, options?: SsmParameterImageOptions): IMachineImage;
|
|
116
|
+
/**
|
|
117
|
+
* An image specified in SSM parameter store that will be resolved at instance launch time.
|
|
118
|
+
*
|
|
119
|
+
* The AMI ID will be resolved at instance launch time.
|
|
120
|
+
*
|
|
121
|
+
* @param parameterName The name of SSM parameter containing the AMI ID
|
|
122
|
+
* @param options The parameter image options
|
|
123
|
+
*
|
|
124
|
+
* @see https://docs.aws.amazon.com/autoscaling/ec2/userguide/using-systems-manager-parameters.html
|
|
125
|
+
*
|
|
126
|
+
*/
|
|
127
|
+
static resolveSsmParameterAtLaunch(parameterName: string, options?: SsmParameterImageOptions): IMachineImage;
|
|
128
|
+
/**
|
|
129
|
+
* Look up a shared Machine Image using DescribeImages
|
|
130
|
+
*
|
|
131
|
+
* The most recent, available, launchable image matching the given filter
|
|
132
|
+
* criteria will be used. Looking up AMIs may take a long time; specify
|
|
133
|
+
* as many filter criteria as possible to narrow down the search.
|
|
134
|
+
*
|
|
135
|
+
* The AMI selected will be cached in `cdk.context.json` and the same value
|
|
136
|
+
* will be used on future runs. To refresh the AMI lookup, you will have to
|
|
137
|
+
* evict the value from the cache using the `cdk context` command. See
|
|
138
|
+
* https://docs.aws.amazon.com/cdk/latest/guide/context.html for more information.
|
|
139
|
+
*
|
|
140
|
+
* This function can not be used in environment-agnostic stacks.
|
|
141
|
+
*/
|
|
142
|
+
static lookup(props: LookupMachineImageProps): IMachineImage;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Select the image based on a given SSM parameter at deployment time of the CloudFormation Stack.
|
|
146
|
+
*
|
|
147
|
+
* This Machine Image automatically updates to the latest version on every
|
|
148
|
+
* deployment. Be aware this will cause your instances to be replaced when a
|
|
149
|
+
* new version of the image becomes available. Do not store stateful information
|
|
150
|
+
* on the instance if you are using this image.
|
|
151
|
+
*
|
|
152
|
+
* The AMI ID is selected using the values published to the SSM parameter store.
|
|
153
|
+
*/
|
|
154
|
+
export declare class GenericSSMParameterImage implements IMachineImage {
|
|
155
|
+
private readonly os;
|
|
156
|
+
private readonly userData?;
|
|
157
|
+
/**
|
|
158
|
+
* Name of the SSM parameter we're looking up
|
|
159
|
+
*/
|
|
160
|
+
readonly parameterName: string;
|
|
161
|
+
constructor(parameterName: string, os: OperatingSystemType, userData?: UserData | undefined);
|
|
162
|
+
/**
|
|
163
|
+
* Return the image to use in the given context
|
|
164
|
+
*/
|
|
165
|
+
getImage(scope: Construct): MachineImageConfig;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Select the image based on a given SSM parameter at instance launch time.
|
|
169
|
+
*
|
|
170
|
+
* This Machine Image comes with an imageId as `resolve:ssm:parameter-name` or `resolve:ssm:parameter-name:version` format
|
|
171
|
+
* as described in the document:
|
|
172
|
+
*
|
|
173
|
+
* @see https://docs.aws.amazon.com/autoscaling/ec2/userguide/using-systems-manager-parameters.html
|
|
174
|
+
*
|
|
175
|
+
* The AMI ID would be selected at instance launch time.
|
|
176
|
+
*/
|
|
177
|
+
export declare class ResolveSsmParameterAtLaunchImage implements IMachineImage {
|
|
178
|
+
private readonly props;
|
|
179
|
+
/**
|
|
180
|
+
* Name of the SSM parameter we're looking up
|
|
181
|
+
*/
|
|
182
|
+
readonly parameterName: string;
|
|
183
|
+
constructor(parameterName: string, props?: SsmParameterImageOptions);
|
|
184
|
+
/**
|
|
185
|
+
* Return the image to use in the given context
|
|
186
|
+
*/
|
|
187
|
+
getImage(_: Construct): MachineImageConfig;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Properties for GenericSsmParameterImage
|
|
191
|
+
*/
|
|
192
|
+
export interface SsmParameterImageOptions {
|
|
193
|
+
/**
|
|
194
|
+
* Operating system
|
|
195
|
+
*
|
|
196
|
+
* @default OperatingSystemType.LINUX
|
|
197
|
+
*/
|
|
198
|
+
readonly os?: OperatingSystemType;
|
|
199
|
+
/**
|
|
200
|
+
* Custom UserData
|
|
201
|
+
*
|
|
202
|
+
* @default - UserData appropriate for the OS
|
|
203
|
+
*/
|
|
204
|
+
readonly userData?: UserData;
|
|
205
|
+
/**
|
|
206
|
+
* Whether the AMI ID is cached to be stable between deployments
|
|
207
|
+
*
|
|
208
|
+
* By default, the newest image is used on each deployment. This will cause
|
|
209
|
+
* instances to be replaced whenever a new version is released, and may cause
|
|
210
|
+
* downtime if there aren't enough running instances in the AutoScalingGroup
|
|
211
|
+
* to reschedule the tasks on.
|
|
212
|
+
*
|
|
213
|
+
* If set to true, the AMI ID will be cached in `cdk.context.json` and the
|
|
214
|
+
* same value will be used on future runs. Your instances will not be replaced
|
|
215
|
+
* but your AMI version will grow old over time. To refresh the AMI lookup,
|
|
216
|
+
* you will have to evict the value from the cache using the `cdk context`
|
|
217
|
+
* command. See https://docs.aws.amazon.com/cdk/latest/guide/context.html for
|
|
218
|
+
* more information.
|
|
219
|
+
*
|
|
220
|
+
* Can not be set to `true` in environment-agnostic stacks.
|
|
221
|
+
*
|
|
222
|
+
* @default false
|
|
223
|
+
*/
|
|
224
|
+
readonly cachedInContext?: boolean;
|
|
225
|
+
/**
|
|
226
|
+
* The version of the SSM parameter.
|
|
227
|
+
*
|
|
228
|
+
* @default no version specified.
|
|
229
|
+
*/
|
|
230
|
+
readonly parameterVersion?: string;
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Configuration options for WindowsImage
|
|
234
|
+
*/
|
|
235
|
+
export interface WindowsImageProps {
|
|
236
|
+
/**
|
|
237
|
+
* Initial user data
|
|
238
|
+
*
|
|
239
|
+
* @default - Empty UserData for Windows machines
|
|
240
|
+
*/
|
|
241
|
+
readonly userData?: UserData;
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Select the latest version of the indicated Windows version
|
|
245
|
+
*
|
|
246
|
+
* This Machine Image automatically updates to the latest version on every
|
|
247
|
+
* deployment. Be aware this will cause your instances to be replaced when a
|
|
248
|
+
* new version of the image becomes available. Do not store stateful information
|
|
249
|
+
* on the instance if you are using this image.
|
|
250
|
+
*
|
|
251
|
+
* The AMI ID is selected using the values published to the SSM parameter store.
|
|
252
|
+
*
|
|
253
|
+
* https://aws.amazon.com/blogs/mt/query-for-the-latest-windows-ami-using-systems-manager-parameter-store/
|
|
254
|
+
*/
|
|
255
|
+
export declare class WindowsImage extends GenericSSMParameterImage {
|
|
256
|
+
private static DEPRECATED_VERSION_NAME_MAP;
|
|
257
|
+
constructor(version: WindowsVersion, props?: WindowsImageProps);
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Amazon Linux image properties
|
|
261
|
+
*/
|
|
262
|
+
export interface AmazonLinuxImageProps {
|
|
263
|
+
/**
|
|
264
|
+
* What generation of Amazon Linux to use
|
|
265
|
+
*
|
|
266
|
+
* @default AmazonLinux
|
|
267
|
+
*/
|
|
268
|
+
readonly generation?: AmazonLinuxGeneration;
|
|
269
|
+
/**
|
|
270
|
+
* What edition of Amazon Linux to use
|
|
271
|
+
*
|
|
272
|
+
* @default Standard
|
|
273
|
+
*/
|
|
274
|
+
readonly edition?: AmazonLinuxEdition;
|
|
275
|
+
/**
|
|
276
|
+
* What kernel version of Amazon Linux to use
|
|
277
|
+
*
|
|
278
|
+
* @default -
|
|
279
|
+
*/
|
|
280
|
+
readonly kernel?: AmazonLinuxKernel;
|
|
281
|
+
/**
|
|
282
|
+
* What storage backed image to use
|
|
283
|
+
*
|
|
284
|
+
* @default GeneralPurpose
|
|
285
|
+
*/
|
|
286
|
+
readonly storage?: AmazonLinuxStorage;
|
|
287
|
+
/**
|
|
288
|
+
* Initial user data
|
|
289
|
+
*
|
|
290
|
+
* @default - Empty UserData for Linux machines
|
|
291
|
+
*/
|
|
292
|
+
readonly userData?: UserData;
|
|
293
|
+
/**
|
|
294
|
+
* CPU Type
|
|
295
|
+
*
|
|
296
|
+
* @default X86_64
|
|
297
|
+
*/
|
|
298
|
+
readonly cpuType?: AmazonLinuxCpuType;
|
|
299
|
+
/**
|
|
300
|
+
* Virtualization type
|
|
301
|
+
*
|
|
302
|
+
* @default HVM
|
|
303
|
+
*/
|
|
304
|
+
readonly virtualization?: AmazonLinuxVirt;
|
|
305
|
+
/**
|
|
306
|
+
* Whether the AMI ID is cached to be stable between deployments
|
|
307
|
+
*
|
|
308
|
+
* By default, the newest image is used on each deployment. This will cause
|
|
309
|
+
* instances to be replaced whenever a new version is released, and may cause
|
|
310
|
+
* downtime if there aren't enough running instances in the AutoScalingGroup
|
|
311
|
+
* to reschedule the tasks on.
|
|
312
|
+
*
|
|
313
|
+
* If set to true, the AMI ID will be cached in `cdk.context.json` and the
|
|
314
|
+
* same value will be used on future runs. Your instances will not be replaced
|
|
315
|
+
* but your AMI version will grow old over time. To refresh the AMI lookup,
|
|
316
|
+
* you will have to evict the value from the cache using the `cdk context`
|
|
317
|
+
* command. See https://docs.aws.amazon.com/cdk/latest/guide/context.html for
|
|
318
|
+
* more information.
|
|
319
|
+
*
|
|
320
|
+
* Can not be set to `true` in environment-agnostic stacks.
|
|
321
|
+
*
|
|
322
|
+
* @default false
|
|
323
|
+
*/
|
|
324
|
+
readonly cachedInContext?: boolean;
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Selects the latest version of Amazon Linux
|
|
328
|
+
*
|
|
329
|
+
* This Machine Image automatically updates to the latest version on every
|
|
330
|
+
* deployment. Be aware this will cause your instances to be replaced when a
|
|
331
|
+
* new version of the image becomes available. Do not store stateful information
|
|
332
|
+
* on the instance if you are using this image.
|
|
333
|
+
*
|
|
334
|
+
* The AMI ID is selected using the values published to the SSM parameter store.
|
|
335
|
+
*/
|
|
336
|
+
export declare class AmazonLinuxImage extends GenericSSMParameterImage {
|
|
337
|
+
private readonly props;
|
|
338
|
+
/**
|
|
339
|
+
* Return the SSM parameter name that will contain the Amazon Linux image with the given attributes
|
|
340
|
+
*/
|
|
341
|
+
static ssmParameterName(props?: AmazonLinuxImageProps): string;
|
|
342
|
+
private readonly cachedInContext;
|
|
343
|
+
constructor(props?: AmazonLinuxImageProps);
|
|
344
|
+
/**
|
|
345
|
+
* Return the image to use in the given context
|
|
346
|
+
*/
|
|
347
|
+
getImage(scope: Construct): MachineImageConfig;
|
|
348
|
+
}
|
|
349
|
+
/**
|
|
350
|
+
* Amazon Linux Kernel
|
|
351
|
+
*/
|
|
352
|
+
export declare enum AmazonLinuxKernel {
|
|
353
|
+
/**
|
|
354
|
+
* Kernel version 5.10
|
|
355
|
+
*/
|
|
356
|
+
KERNEL5_X = "kernel-5.10",
|
|
357
|
+
/**
|
|
358
|
+
* Kernel version 6.1
|
|
359
|
+
*/
|
|
360
|
+
KERNEL6_1 = "kernel-6.1"
|
|
361
|
+
}
|
|
362
|
+
/**
|
|
363
|
+
* Configuration options for GenericLinuxImage
|
|
364
|
+
*/
|
|
365
|
+
export interface GenericLinuxImageProps {
|
|
366
|
+
/**
|
|
367
|
+
* Initial user data
|
|
368
|
+
*
|
|
369
|
+
* @default - Empty UserData for Linux machines
|
|
370
|
+
*/
|
|
371
|
+
readonly userData?: UserData;
|
|
372
|
+
}
|
|
373
|
+
/**
|
|
374
|
+
* Configuration options for GenericWindowsImage
|
|
375
|
+
*/
|
|
376
|
+
export interface GenericWindowsImageProps {
|
|
377
|
+
/**
|
|
378
|
+
* Initial user data
|
|
379
|
+
*
|
|
380
|
+
* @default - Empty UserData for Windows machines
|
|
381
|
+
*/
|
|
382
|
+
readonly userData?: UserData;
|
|
383
|
+
}
|
|
384
|
+
/**
|
|
385
|
+
* Construct a Linux machine image from an AMI map
|
|
386
|
+
*
|
|
387
|
+
* Linux images IDs are not published to SSM parameter store yet, so you'll have to
|
|
388
|
+
* manually specify an AMI map.
|
|
389
|
+
*/
|
|
390
|
+
export declare class GenericLinuxImage implements IMachineImage {
|
|
391
|
+
private readonly amiMap;
|
|
392
|
+
private readonly props;
|
|
393
|
+
constructor(amiMap: {
|
|
394
|
+
[region: string]: string;
|
|
395
|
+
}, props?: GenericLinuxImageProps);
|
|
396
|
+
getImage(scope: Construct): MachineImageConfig;
|
|
397
|
+
}
|
|
398
|
+
/**
|
|
399
|
+
* Construct a Windows machine image from an AMI map
|
|
400
|
+
*
|
|
401
|
+
* Allows you to create a generic Windows EC2 , manually specify an AMI map.
|
|
402
|
+
*/
|
|
403
|
+
export declare class GenericWindowsImage implements IMachineImage {
|
|
404
|
+
private readonly amiMap;
|
|
405
|
+
private readonly props;
|
|
406
|
+
constructor(amiMap: {
|
|
407
|
+
[region: string]: string;
|
|
408
|
+
}, props?: GenericWindowsImageProps);
|
|
409
|
+
getImage(scope: Construct): MachineImageConfig;
|
|
410
|
+
}
|
|
411
|
+
/**
|
|
412
|
+
* A machine image whose AMI ID will be searched using DescribeImages.
|
|
413
|
+
*
|
|
414
|
+
* The most recent, available, launchable image matching the given filter
|
|
415
|
+
* criteria will be used. Looking up AMIs may take a long time; specify
|
|
416
|
+
* as many filter criteria as possible to narrow down the search.
|
|
417
|
+
*
|
|
418
|
+
* The AMI selected will be cached in `grid.context.json` and the same value
|
|
419
|
+
* will be used on future runs. To refresh the AMI lookup, you will have to
|
|
420
|
+
* evict the value from the cache using the `grid context` command. See
|
|
421
|
+
* https://docs.aws.amazon.com/cdk/latest/guide/context.html for more information.
|
|
422
|
+
*/
|
|
423
|
+
export declare class LookupMachineImage implements IMachineImage {
|
|
424
|
+
private readonly props;
|
|
425
|
+
constructor(props: LookupMachineImageProps);
|
|
426
|
+
getImage(scope: Construct): MachineImageConfig;
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* Properties for looking up an image
|
|
430
|
+
*/
|
|
431
|
+
export interface LookupMachineImageProps {
|
|
432
|
+
/**
|
|
433
|
+
* Name of the image (may contain wildcards)
|
|
434
|
+
*/
|
|
435
|
+
readonly name: string;
|
|
436
|
+
/**
|
|
437
|
+
* Owner account IDs or aliases
|
|
438
|
+
*
|
|
439
|
+
* @default - All owners
|
|
440
|
+
*/
|
|
441
|
+
readonly owners?: string[];
|
|
442
|
+
/**
|
|
443
|
+
* Additional filters on the AMI
|
|
444
|
+
*
|
|
445
|
+
* @see https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html
|
|
446
|
+
* @default - No additional filters
|
|
447
|
+
*/
|
|
448
|
+
readonly filters?: {
|
|
449
|
+
[key: string]: string[];
|
|
450
|
+
};
|
|
451
|
+
/**
|
|
452
|
+
* Look for Windows images
|
|
453
|
+
*
|
|
454
|
+
* @default false
|
|
455
|
+
*/
|
|
456
|
+
readonly windows?: boolean;
|
|
457
|
+
/**
|
|
458
|
+
* Custom userdata for this image
|
|
459
|
+
*
|
|
460
|
+
* @default - Empty user data appropriate for the platform type
|
|
461
|
+
*/
|
|
462
|
+
readonly userData?: UserData;
|
|
463
|
+
}
|