aws-cdk-lib 2.143.1__py3-none-any.whl → 2.145.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (43) hide show
  1. aws_cdk/__init__.py +1 -1
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.143.1.jsii.tgz → aws-cdk-lib@2.145.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_apigatewayv2_authorizers/__init__.py +27 -0
  5. aws_cdk/aws_apigatewayv2_integrations/__init__.py +28 -0
  6. aws_cdk/aws_appconfig/__init__.py +132 -1
  7. aws_cdk/aws_autoscaling/__init__.py +4 -4
  8. aws_cdk/aws_bedrock/__init__.py +48 -0
  9. aws_cdk/aws_chatbot/__init__.py +149 -2
  10. aws_cdk/aws_cloudfront/experimental/__init__.py +65 -9
  11. aws_cdk/aws_codebuild/__init__.py +801 -16
  12. aws_cdk/aws_config/__init__.py +1305 -45
  13. aws_cdk/aws_dynamodb/__init__.py +309 -3
  14. aws_cdk/aws_ec2/__init__.py +112 -31
  15. aws_cdk/aws_ecs_patterns/__init__.py +89 -7
  16. aws_cdk/aws_eks/__init__.py +185 -41
  17. aws_cdk/aws_fsx/__init__.py +4 -4
  18. aws_cdk/aws_glue/__init__.py +39 -0
  19. aws_cdk/aws_iam/__init__.py +3 -3
  20. aws_cdk/aws_lambda/__init__.py +605 -42
  21. aws_cdk/aws_lambda_nodejs/__init__.py +160 -13
  22. aws_cdk/aws_logs/__init__.py +114 -8
  23. aws_cdk/aws_logs_destinations/__init__.py +11 -9
  24. aws_cdk/aws_mediaconnect/__init__.py +2 -6
  25. aws_cdk/aws_medialive/__init__.py +20 -2
  26. aws_cdk/aws_mediapackagev2/__init__.py +476 -0
  27. aws_cdk/aws_rds/__init__.py +27 -19
  28. aws_cdk/aws_route53/__init__.py +3 -3
  29. aws_cdk/aws_s3/__init__.py +21 -0
  30. aws_cdk/aws_s3_deployment/__init__.py +3 -2
  31. aws_cdk/aws_securityhub/__init__.py +2415 -374
  32. aws_cdk/aws_securitylake/__init__.py +179 -314
  33. aws_cdk/aws_sqs/__init__.py +2 -2
  34. aws_cdk/aws_stepfunctions/__init__.py +53 -24
  35. aws_cdk/aws_stepfunctions_tasks/__init__.py +763 -16
  36. aws_cdk/pipelines/__init__.py +2 -0
  37. aws_cdk/triggers/__init__.py +65 -9
  38. {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/METADATA +1 -1
  39. {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/RECORD +43 -43
  40. {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/WHEEL +1 -1
  41. {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/LICENSE +0 -0
  42. {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/NOTICE +0 -0
  43. {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/top_level.txt +0 -0
@@ -2023,6 +2023,22 @@ ec2.Vpc(self, "VPC",
2023
2023
 
2024
2024
  **Note**: `CpuCredits.UNLIMITED` mode is not supported for T3 instances that are launched on a Dedicated Host.
2025
2025
 
2026
+ ### Shutdown behavior
2027
+
2028
+ You can specify the behavior of the instance when you initiate shutdown from the instance (using the operating system command for system shutdown).
2029
+
2030
+ ```python
2031
+ # vpc: ec2.Vpc
2032
+
2033
+
2034
+ ec2.Instance(self, "Instance",
2035
+ vpc=vpc,
2036
+ instance_type=ec2.InstanceType.of(ec2.InstanceClass.T3, ec2.InstanceSize.NANO),
2037
+ machine_image=ec2.AmazonLinuxImage(generation=ec2.AmazonLinuxGeneration.AMAZON_LINUX_2),
2038
+ instance_initiated_shutdown_behavior=ec2.InstanceInitiatedShutdownBehavior.TERMINATE
2039
+ )
2040
+ ```
2041
+
2026
2042
  ## VPC Flow Logs
2027
2043
 
2028
2044
  VPC Flow Logs is a feature that enables you to capture information about the IP traffic going to and from network interfaces in your VPC. Flow log data can be published to Amazon CloudWatch Logs and Amazon S3. After you've created a flow log, you can retrieve and view its data in the chosen destination. ([https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html)).
@@ -3782,29 +3798,19 @@ class AmazonLinuxEdition(enum.Enum):
3782
3798
  class AmazonLinuxGeneration(enum.Enum):
3783
3799
  '''What generation of Amazon Linux to use.
3784
3800
 
3785
- :exampleMetadata: lit=aws-autoscaling/test/example.images.lit.ts infused
3801
+ :exampleMetadata: infused
3786
3802
 
3787
3803
  Example::
3788
3804
 
3789
- # Pick a Windows edition to use
3790
- windows = ec2.WindowsImage(ec2.WindowsVersion.WINDOWS_SERVER_2019_ENGLISH_FULL_BASE)
3791
-
3792
- # Pick the right Amazon Linux edition. All arguments shown are optional
3793
- # and will default to these values when omitted.
3794
- amzn_linux = ec2.AmazonLinuxImage(
3795
- generation=ec2.AmazonLinuxGeneration.AMAZON_LINUX,
3796
- edition=ec2.AmazonLinuxEdition.STANDARD,
3797
- virtualization=ec2.AmazonLinuxVirt.HVM,
3798
- storage=ec2.AmazonLinuxStorage.GENERAL_PURPOSE
3799
- )
3805
+ # vpc: ec2.Vpc
3800
3806
 
3801
- # For other custom (Linux) images, instantiate a `GenericLinuxImage` with
3802
- # a map giving the AMI to in for each region:
3803
3807
 
3804
- linux = ec2.GenericLinuxImage({
3805
- "us-east-1": "ami-97785bed",
3806
- "eu-west-1": "ami-12345678"
3807
- })
3808
+ ec2.Instance(self, "Instance",
3809
+ vpc=vpc,
3810
+ instance_type=ec2.InstanceType.of(ec2.InstanceClass.T3, ec2.InstanceSize.NANO),
3811
+ machine_image=ec2.AmazonLinuxImage(generation=ec2.AmazonLinuxGeneration.AMAZON_LINUX_2),
3812
+ instance_initiated_shutdown_behavior=ec2.InstanceInitiatedShutdownBehavior.TERMINATE
3813
+ )
3808
3814
  '''
3809
3815
 
3810
3816
  AMAZON_LINUX = "AMAZON_LINUX"
@@ -9409,6 +9415,7 @@ class CfnCustomerGateway(
9409
9415
 
9410
9416
  # the properties below are optional
9411
9417
  bgp_asn=123,
9418
+ bgp_asn_extended=123,
9412
9419
  certificate_arn="certificateArn",
9413
9420
  device_name="deviceName",
9414
9421
  tags=[CfnTag(
@@ -9426,6 +9433,7 @@ class CfnCustomerGateway(
9426
9433
  ip_address: builtins.str,
9427
9434
  type: builtins.str,
9428
9435
  bgp_asn: typing.Optional[jsii.Number] = None,
9436
+ bgp_asn_extended: typing.Optional[jsii.Number] = None,
9429
9437
  certificate_arn: typing.Optional[builtins.str] = None,
9430
9438
  device_name: typing.Optional[builtins.str] = None,
9431
9439
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -9436,6 +9444,7 @@ class CfnCustomerGateway(
9436
9444
  :param ip_address: IPv4 address for the customer gateway device's outside interface. The address must be static.
9437
9445
  :param type: The type of VPN connection that this customer gateway supports ( ``ipsec.1`` ).
9438
9446
  :param bgp_asn: For devices that support BGP, the customer gateway's BGP ASN. Default: 65000 Default: - 65000
9447
+ :param bgp_asn_extended:
9439
9448
  :param certificate_arn: The Amazon Resource Name (ARN) for the customer gateway certificate.
9440
9449
  :param device_name: The name of customer gateway device.
9441
9450
  :param tags: One or more tags for the customer gateway.
@@ -9448,6 +9457,7 @@ class CfnCustomerGateway(
9448
9457
  ip_address=ip_address,
9449
9458
  type=type,
9450
9459
  bgp_asn=bgp_asn,
9460
+ bgp_asn_extended=bgp_asn_extended,
9451
9461
  certificate_arn=certificate_arn,
9452
9462
  device_name=device_name,
9453
9463
  tags=tags,
@@ -9544,6 +9554,18 @@ class CfnCustomerGateway(
9544
9554
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
9545
9555
  jsii.set(self, "bgpAsn", value)
9546
9556
 
9557
+ @builtins.property
9558
+ @jsii.member(jsii_name="bgpAsnExtended")
9559
+ def bgp_asn_extended(self) -> typing.Optional[jsii.Number]:
9560
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "bgpAsnExtended"))
9561
+
9562
+ @bgp_asn_extended.setter
9563
+ def bgp_asn_extended(self, value: typing.Optional[jsii.Number]) -> None:
9564
+ if __debug__:
9565
+ type_hints = typing.get_type_hints(_typecheckingstub__f41644d25c48e5c3c87a361ba478bdb4a18bf473fe1582fa35c6311f6d5284d8)
9566
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
9567
+ jsii.set(self, "bgpAsnExtended", value)
9568
+
9547
9569
  @builtins.property
9548
9570
  @jsii.member(jsii_name="certificateArn")
9549
9571
  def certificate_arn(self) -> typing.Optional[builtins.str]:
@@ -9591,6 +9613,7 @@ class CfnCustomerGateway(
9591
9613
  "ip_address": "ipAddress",
9592
9614
  "type": "type",
9593
9615
  "bgp_asn": "bgpAsn",
9616
+ "bgp_asn_extended": "bgpAsnExtended",
9594
9617
  "certificate_arn": "certificateArn",
9595
9618
  "device_name": "deviceName",
9596
9619
  "tags": "tags",
@@ -9603,6 +9626,7 @@ class CfnCustomerGatewayProps:
9603
9626
  ip_address: builtins.str,
9604
9627
  type: builtins.str,
9605
9628
  bgp_asn: typing.Optional[jsii.Number] = None,
9629
+ bgp_asn_extended: typing.Optional[jsii.Number] = None,
9606
9630
  certificate_arn: typing.Optional[builtins.str] = None,
9607
9631
  device_name: typing.Optional[builtins.str] = None,
9608
9632
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -9612,6 +9636,7 @@ class CfnCustomerGatewayProps:
9612
9636
  :param ip_address: IPv4 address for the customer gateway device's outside interface. The address must be static.
9613
9637
  :param type: The type of VPN connection that this customer gateway supports ( ``ipsec.1`` ).
9614
9638
  :param bgp_asn: For devices that support BGP, the customer gateway's BGP ASN. Default: 65000 Default: - 65000
9639
+ :param bgp_asn_extended:
9615
9640
  :param certificate_arn: The Amazon Resource Name (ARN) for the customer gateway certificate.
9616
9641
  :param device_name: The name of customer gateway device.
9617
9642
  :param tags: One or more tags for the customer gateway.
@@ -9631,6 +9656,7 @@ class CfnCustomerGatewayProps:
9631
9656
 
9632
9657
  # the properties below are optional
9633
9658
  bgp_asn=123,
9659
+ bgp_asn_extended=123,
9634
9660
  certificate_arn="certificateArn",
9635
9661
  device_name="deviceName",
9636
9662
  tags=[CfnTag(
@@ -9644,6 +9670,7 @@ class CfnCustomerGatewayProps:
9644
9670
  check_type(argname="argument ip_address", value=ip_address, expected_type=type_hints["ip_address"])
9645
9671
  check_type(argname="argument type", value=type, expected_type=type_hints["type"])
9646
9672
  check_type(argname="argument bgp_asn", value=bgp_asn, expected_type=type_hints["bgp_asn"])
9673
+ check_type(argname="argument bgp_asn_extended", value=bgp_asn_extended, expected_type=type_hints["bgp_asn_extended"])
9647
9674
  check_type(argname="argument certificate_arn", value=certificate_arn, expected_type=type_hints["certificate_arn"])
9648
9675
  check_type(argname="argument device_name", value=device_name, expected_type=type_hints["device_name"])
9649
9676
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
@@ -9653,6 +9680,8 @@ class CfnCustomerGatewayProps:
9653
9680
  }
9654
9681
  if bgp_asn is not None:
9655
9682
  self._values["bgp_asn"] = bgp_asn
9683
+ if bgp_asn_extended is not None:
9684
+ self._values["bgp_asn_extended"] = bgp_asn_extended
9656
9685
  if certificate_arn is not None:
9657
9686
  self._values["certificate_arn"] = certificate_arn
9658
9687
  if device_name is not None:
@@ -9695,6 +9724,14 @@ class CfnCustomerGatewayProps:
9695
9724
  result = self._values.get("bgp_asn")
9696
9725
  return typing.cast(typing.Optional[jsii.Number], result)
9697
9726
 
9727
+ @builtins.property
9728
+ def bgp_asn_extended(self) -> typing.Optional[jsii.Number]:
9729
+ '''
9730
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customergateway.html#cfn-ec2-customergateway-bgpasnextended
9731
+ '''
9732
+ result = self._values.get("bgp_asn_extended")
9733
+ return typing.cast(typing.Optional[jsii.Number], result)
9734
+
9698
9735
  @builtins.property
9699
9736
  def certificate_arn(self) -> typing.Optional[builtins.str]:
9700
9737
  '''The Amazon Resource Name (ARN) for the customer gateway certificate.
@@ -47824,7 +47861,7 @@ class CfnSubnet(
47824
47861
  subnetcount = subnetcount + 1
47825
47862
 
47826
47863
  cluster = eks.Cluster(self, "hello-eks",
47827
- version=eks.KubernetesVersion.V1_29,
47864
+ version=eks.KubernetesVersion.V1_30,
47828
47865
  vpc=vpc,
47829
47866
  ip_family=eks.IpFamily.IP_V6,
47830
47867
  vpc_subnets=[ec2.SubnetSelection(subnets=vpc.public_subnets)]
@@ -55612,7 +55649,7 @@ class CfnVPCCidrBlock(
55612
55649
  subnetcount = subnetcount + 1
55613
55650
 
55614
55651
  cluster = eks.Cluster(self, "hello-eks",
55615
- version=eks.KubernetesVersion.V1_29,
55652
+ version=eks.KubernetesVersion.V1_30,
55616
55653
  vpc=vpc,
55617
55654
  ip_family=eks.IpFamily.IP_V6,
55618
55655
  vpc_subnets=[ec2.SubnetSelection(subnets=vpc.public_subnets)]
@@ -55905,7 +55942,7 @@ class CfnVPCCidrBlockProps:
55905
55942
  subnetcount = subnetcount + 1
55906
55943
 
55907
55944
  cluster = eks.Cluster(self, "hello-eks",
55908
- version=eks.KubernetesVersion.V1_29,
55945
+ version=eks.KubernetesVersion.V1_30,
55909
55946
  vpc=vpc,
55910
55947
  ip_family=eks.IpFamily.IP_V6,
55911
55948
  vpc_subnets=[ec2.SubnetSelection(subnets=vpc.public_subnets)]
@@ -72054,6 +72091,7 @@ class Instance(
72054
72091
  ebs_optimized: typing.Optional[builtins.bool] = None,
72055
72092
  init: typing.Optional[CloudFormationInit] = None,
72056
72093
  init_options: typing.Optional[typing.Union[ApplyCloudFormationInitOptions, typing.Dict[builtins.str, typing.Any]]] = None,
72094
+ instance_initiated_shutdown_behavior: typing.Optional["InstanceInitiatedShutdownBehavior"] = None,
72057
72095
  instance_name: typing.Optional[builtins.str] = None,
72058
72096
  key_name: typing.Optional[builtins.str] = None,
72059
72097
  key_pair: typing.Optional[IKeyPair] = None,
@@ -72086,6 +72124,7 @@ class Instance(
72086
72124
  :param ebs_optimized: Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance. Default: false
72087
72125
  :param init: Apply the given CloudFormation Init configuration to the instance at startup. Default: - no CloudFormation init
72088
72126
  :param init_options: Use the given options for applying CloudFormation Init. Describes the configsets to use and the timeout to wait Default: - default options
72127
+ :param instance_initiated_shutdown_behavior: Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: InstanceInitiatedShutdownBehavior.STOP
72089
72128
  :param instance_name: The name of the instance. Default: - CDK generated name
72090
72129
  :param key_name: (deprecated) Name of SSH keypair to grant access to instance. Default: - No SSH access will be possible.
72091
72130
  :param key_pair: The SSH keypair to grant access to the instance. Default: - No SSH access will be possible.
@@ -72120,6 +72159,7 @@ class Instance(
72120
72159
  ebs_optimized=ebs_optimized,
72121
72160
  init=init,
72122
72161
  init_options=init_options,
72162
+ instance_initiated_shutdown_behavior=instance_initiated_shutdown_behavior,
72123
72163
  instance_name=instance_name,
72124
72164
  key_name=key_name,
72125
72165
  key_pair=key_pair,
@@ -72828,6 +72868,19 @@ class InstanceInitiatedShutdownBehavior(enum.Enum):
72828
72868
  '''Provides the options for specifying the instance initiated shutdown behavior.
72829
72869
 
72830
72870
  :see: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingInstanceInitiatedShutdownBehavior
72871
+ :exampleMetadata: infused
72872
+
72873
+ Example::
72874
+
72875
+ # vpc: ec2.Vpc
72876
+
72877
+
72878
+ ec2.Instance(self, "Instance",
72879
+ vpc=vpc,
72880
+ instance_type=ec2.InstanceType.of(ec2.InstanceClass.T3, ec2.InstanceSize.NANO),
72881
+ machine_image=ec2.AmazonLinuxImage(generation=ec2.AmazonLinuxGeneration.AMAZON_LINUX_2),
72882
+ instance_initiated_shutdown_behavior=ec2.InstanceInitiatedShutdownBehavior.TERMINATE
72883
+ )
72831
72884
  '''
72832
72885
 
72833
72886
  STOP = "STOP"
@@ -72853,6 +72906,7 @@ class InstanceInitiatedShutdownBehavior(enum.Enum):
72853
72906
  "ebs_optimized": "ebsOptimized",
72854
72907
  "init": "init",
72855
72908
  "init_options": "initOptions",
72909
+ "instance_initiated_shutdown_behavior": "instanceInitiatedShutdownBehavior",
72856
72910
  "instance_name": "instanceName",
72857
72911
  "key_name": "keyName",
72858
72912
  "key_pair": "keyPair",
@@ -72887,6 +72941,7 @@ class InstanceProps:
72887
72941
  ebs_optimized: typing.Optional[builtins.bool] = None,
72888
72942
  init: typing.Optional[CloudFormationInit] = None,
72889
72943
  init_options: typing.Optional[typing.Union[ApplyCloudFormationInitOptions, typing.Dict[builtins.str, typing.Any]]] = None,
72944
+ instance_initiated_shutdown_behavior: typing.Optional[InstanceInitiatedShutdownBehavior] = None,
72890
72945
  instance_name: typing.Optional[builtins.str] = None,
72891
72946
  key_name: typing.Optional[builtins.str] = None,
72892
72947
  key_pair: typing.Optional[IKeyPair] = None,
@@ -72918,6 +72973,7 @@ class InstanceProps:
72918
72973
  :param ebs_optimized: Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance. Default: false
72919
72974
  :param init: Apply the given CloudFormation Init configuration to the instance at startup. Default: - no CloudFormation init
72920
72975
  :param init_options: Use the given options for applying CloudFormation Init. Describes the configsets to use and the timeout to wait Default: - default options
72976
+ :param instance_initiated_shutdown_behavior: Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: InstanceInitiatedShutdownBehavior.STOP
72921
72977
  :param instance_name: The name of the instance. Default: - CDK generated name
72922
72978
  :param key_name: (deprecated) Name of SSH keypair to grant access to instance. Default: - No SSH access will be possible.
72923
72979
  :param key_pair: The SSH keypair to grant access to the instance. Default: - No SSH access will be possible.
@@ -72972,6 +73028,7 @@ class InstanceProps:
72972
73028
  check_type(argname="argument ebs_optimized", value=ebs_optimized, expected_type=type_hints["ebs_optimized"])
72973
73029
  check_type(argname="argument init", value=init, expected_type=type_hints["init"])
72974
73030
  check_type(argname="argument init_options", value=init_options, expected_type=type_hints["init_options"])
73031
+ check_type(argname="argument instance_initiated_shutdown_behavior", value=instance_initiated_shutdown_behavior, expected_type=type_hints["instance_initiated_shutdown_behavior"])
72975
73032
  check_type(argname="argument instance_name", value=instance_name, expected_type=type_hints["instance_name"])
72976
73033
  check_type(argname="argument key_name", value=key_name, expected_type=type_hints["key_name"])
72977
73034
  check_type(argname="argument key_pair", value=key_pair, expected_type=type_hints["key_pair"])
@@ -73012,6 +73069,8 @@ class InstanceProps:
73012
73069
  self._values["init"] = init
73013
73070
  if init_options is not None:
73014
73071
  self._values["init_options"] = init_options
73072
+ if instance_initiated_shutdown_behavior is not None:
73073
+ self._values["instance_initiated_shutdown_behavior"] = instance_initiated_shutdown_behavior
73015
73074
  if instance_name is not None:
73016
73075
  self._values["instance_name"] = instance_name
73017
73076
  if key_name is not None:
@@ -73175,6 +73234,19 @@ class InstanceProps:
73175
73234
  result = self._values.get("init_options")
73176
73235
  return typing.cast(typing.Optional[ApplyCloudFormationInitOptions], result)
73177
73236
 
73237
+ @builtins.property
73238
+ def instance_initiated_shutdown_behavior(
73239
+ self,
73240
+ ) -> typing.Optional[InstanceInitiatedShutdownBehavior]:
73241
+ '''Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).
73242
+
73243
+ :default: InstanceInitiatedShutdownBehavior.STOP
73244
+
73245
+ :see: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#Using_ChangingInstanceInitiatedShutdownBehavior
73246
+ '''
73247
+ result = self._values.get("instance_initiated_shutdown_behavior")
73248
+ return typing.cast(typing.Optional[InstanceInitiatedShutdownBehavior], result)
73249
+
73178
73250
  @builtins.property
73179
73251
  def instance_name(self) -> typing.Optional[builtins.str]:
73180
73252
  '''The name of the instance.
@@ -73531,17 +73603,11 @@ class InstanceSize(enum.Enum):
73531
73603
 
73532
73604
  cluster = rds.DatabaseCluster(self, "Database",
73533
73605
  engine=rds.DatabaseClusterEngine.aurora_mysql(version=rds.AuroraMysqlEngineVersion.VER_3_01_0),
73534
- writer=rds.ClusterInstance.provisioned("writer",
73535
- instance_type=ec2.InstanceType.of(ec2.InstanceClass.R6G, ec2.InstanceSize.XLARGE4)
73606
+ writer=rds.ClusterInstance.provisioned("Instance",
73607
+ instance_type=ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE3, ec2.InstanceSize.SMALL)
73536
73608
  ),
73537
- serverless_v2_min_capacity=6.5,
73538
- serverless_v2_max_capacity=64,
73539
- readers=[
73540
- # will be put in promotion tier 1 and will scale with the writer
73541
- rds.ClusterInstance.serverless_v2("reader1", scale_with_writer=True),
73542
- # will be put in promotion tier 2 and will not scale with the writer
73543
- rds.ClusterInstance.serverless_v2("reader2")
73544
- ],
73609
+ readers=[rds.ClusterInstance.provisioned("reader")],
73610
+ instance_update_behaviour=rds.InstanceUpdateBehaviour.ROLLING, # Optional - defaults to rds.InstanceUpdateBehaviour.BULK
73545
73611
  vpc=vpc
73546
73612
  )
73547
73613
  '''
@@ -74865,6 +74931,11 @@ class InterfaceVpcEndpointAwsService(
74865
74931
  def PINPOINT_V1(cls) -> "InterfaceVpcEndpointAwsService":
74866
74932
  return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "PINPOINT_V1"))
74867
74933
 
74934
+ @jsii.python.classproperty
74935
+ @jsii.member(jsii_name="PIPES_DATA")
74936
+ def PIPES_DATA(cls) -> "InterfaceVpcEndpointAwsService":
74937
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "PIPES_DATA"))
74938
+
74868
74939
  @jsii.python.classproperty
74869
74940
  @jsii.member(jsii_name="POLLY")
74870
74941
  def POLLY(cls) -> "InterfaceVpcEndpointAwsService":
@@ -95148,6 +95219,7 @@ def _typecheckingstub__16b41182e007e05b84fd0c97afc1e26001e78a56de2eb5b10c9f809de
95148
95219
  ip_address: builtins.str,
95149
95220
  type: builtins.str,
95150
95221
  bgp_asn: typing.Optional[jsii.Number] = None,
95222
+ bgp_asn_extended: typing.Optional[jsii.Number] = None,
95151
95223
  certificate_arn: typing.Optional[builtins.str] = None,
95152
95224
  device_name: typing.Optional[builtins.str] = None,
95153
95225
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -95185,6 +95257,12 @@ def _typecheckingstub__84dfb7d1775bd2bb124f990570c9a2ef23fafd01744cfe248fcb36056
95185
95257
  """Type checking stubs"""
95186
95258
  pass
95187
95259
 
95260
+ def _typecheckingstub__f41644d25c48e5c3c87a361ba478bdb4a18bf473fe1582fa35c6311f6d5284d8(
95261
+ value: typing.Optional[jsii.Number],
95262
+ ) -> None:
95263
+ """Type checking stubs"""
95264
+ pass
95265
+
95188
95266
  def _typecheckingstub__4a4b900e840c5be3a2b16a5177f91335cf813daeca359e549a639cb05a03ac63(
95189
95267
  value: typing.Optional[builtins.str],
95190
95268
  ) -> None:
@@ -95208,6 +95286,7 @@ def _typecheckingstub__b0ef9a2e3e2b6937b21db500a1cd795126e924d9b920931a413ecdb66
95208
95286
  ip_address: builtins.str,
95209
95287
  type: builtins.str,
95210
95288
  bgp_asn: typing.Optional[jsii.Number] = None,
95289
+ bgp_asn_extended: typing.Optional[jsii.Number] = None,
95211
95290
  certificate_arn: typing.Optional[builtins.str] = None,
95212
95291
  device_name: typing.Optional[builtins.str] = None,
95213
95292
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -104074,6 +104153,7 @@ def _typecheckingstub__5fdf31f5ae2497c7efcb56df558011698f38dc19cff28ca7a78a08a6d
104074
104153
  ebs_optimized: typing.Optional[builtins.bool] = None,
104075
104154
  init: typing.Optional[CloudFormationInit] = None,
104076
104155
  init_options: typing.Optional[typing.Union[ApplyCloudFormationInitOptions, typing.Dict[builtins.str, typing.Any]]] = None,
104156
+ instance_initiated_shutdown_behavior: typing.Optional[InstanceInitiatedShutdownBehavior] = None,
104077
104157
  instance_name: typing.Optional[builtins.str] = None,
104078
104158
  key_name: typing.Optional[builtins.str] = None,
104079
104159
  key_pair: typing.Optional[IKeyPair] = None,
@@ -104126,6 +104206,7 @@ def _typecheckingstub__2d4dc63c6e6ee3ddc68d5dd204d8ac5ef1f1dec37a7b84d636225df1c
104126
104206
  ebs_optimized: typing.Optional[builtins.bool] = None,
104127
104207
  init: typing.Optional[CloudFormationInit] = None,
104128
104208
  init_options: typing.Optional[typing.Union[ApplyCloudFormationInitOptions, typing.Dict[builtins.str, typing.Any]]] = None,
104209
+ instance_initiated_shutdown_behavior: typing.Optional[InstanceInitiatedShutdownBehavior] = None,
104129
104210
  instance_name: typing.Optional[builtins.str] = None,
104130
104211
  key_name: typing.Optional[builtins.str] = None,
104131
104212
  key_pair: typing.Optional[IKeyPair] = None,
@@ -882,6 +882,42 @@ application_load_balanced_fargate_service = ecs_patterns.ApplicationLoadBalanced
882
882
  )
883
883
  ```
884
884
 
885
+ ### Customize Container Name for ScheduledFargateTask
886
+
887
+ ```python
888
+ # cluster: ecs.Cluster
889
+
890
+ scheduled_fargate_task = ecs_patterns.ScheduledFargateTask(self, "ScheduledFargateTask",
891
+ cluster=cluster,
892
+ scheduled_fargate_task_image_options=ecsPatterns.ScheduledFargateTaskImageOptions(
893
+ image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample"),
894
+ container_name="customContainerName",
895
+ memory_limit_mi_b=512
896
+ ),
897
+ schedule=appscaling.Schedule.expression("rate(1 minute)"),
898
+ platform_version=ecs.FargatePlatformVersion.LATEST
899
+ )
900
+ ```
901
+
902
+ ### Customize Container Name for ScheduledEc2Task
903
+
904
+ ```python
905
+ # cluster: ecs.Cluster
906
+
907
+ ecs_scheduled_task = ecs_patterns.ScheduledEc2Task(self, "ScheduledTask",
908
+ cluster=cluster,
909
+ scheduled_ec2_task_image_options=ecsPatterns.ScheduledEc2TaskImageOptions(
910
+ image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample"),
911
+ container_name="customContainerName",
912
+ memory_limit_mi_b=256,
913
+ environment={"name": "TRIGGER", "value": "CloudWatch Events"}
914
+ ),
915
+ schedule=appscaling.Schedule.expression("rate(1 minute)"),
916
+ enabled=True,
917
+ rule_name="sample-scheduled-task-rule"
918
+ )
919
+ ```
920
+
885
921
  ### Set PlatformVersion for ScheduledFargateTask
886
922
 
887
923
  ```python
@@ -7107,6 +7143,7 @@ class ScheduledTaskBaseProps:
7107
7143
  name_mapping={
7108
7144
  "image": "image",
7109
7145
  "command": "command",
7146
+ "container_name": "containerName",
7110
7147
  "environment": "environment",
7111
7148
  "log_driver": "logDriver",
7112
7149
  "secrets": "secrets",
@@ -7118,6 +7155,7 @@ class ScheduledTaskImageProps:
7118
7155
  *,
7119
7156
  image: _ContainerImage_94af1b43,
7120
7157
  command: typing.Optional[typing.Sequence[builtins.str]] = None,
7158
+ container_name: typing.Optional[builtins.str] = None,
7121
7159
  environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
7122
7160
  log_driver: typing.Optional[_LogDriver_393a21bb] = None,
7123
7161
  secrets: typing.Optional[typing.Mapping[builtins.str, _Secret_6be2f64f]] = None,
@@ -7125,6 +7163,7 @@ class ScheduledTaskImageProps:
7125
7163
  '''
7126
7164
  :param image: The image used to start a container. Image or taskDefinition must be specified, but not both. Default: - none
7127
7165
  :param command: The command that is passed to the container. If you provide a shell command as a single string, you have to quote command-line arguments. Default: - CMD value built into container image.
7166
+ :param container_name: Optional name for the container added. Default: - ScheduledContainer
7128
7167
  :param environment: The environment variables to pass to the container. Default: none
7129
7168
  :param log_driver: The log driver to use. Default: - AwsLogDriver if enableLogging is true
7130
7169
  :param secrets: The secret to expose to the container as an environment variable. Default: - No secret environment variables.
@@ -7147,6 +7186,7 @@ class ScheduledTaskImageProps:
7147
7186
 
7148
7187
  # the properties below are optional
7149
7188
  command=["command"],
7189
+ container_name="containerName",
7150
7190
  environment={
7151
7191
  "environment_key": "environment"
7152
7192
  },
@@ -7160,6 +7200,7 @@ class ScheduledTaskImageProps:
7160
7200
  type_hints = typing.get_type_hints(_typecheckingstub__4aa2efa8ff1cfca00647a05fc250401ad24348dd97b5fa82c5f8ca12e0c43302)
7161
7201
  check_type(argname="argument image", value=image, expected_type=type_hints["image"])
7162
7202
  check_type(argname="argument command", value=command, expected_type=type_hints["command"])
7203
+ check_type(argname="argument container_name", value=container_name, expected_type=type_hints["container_name"])
7163
7204
  check_type(argname="argument environment", value=environment, expected_type=type_hints["environment"])
7164
7205
  check_type(argname="argument log_driver", value=log_driver, expected_type=type_hints["log_driver"])
7165
7206
  check_type(argname="argument secrets", value=secrets, expected_type=type_hints["secrets"])
@@ -7168,6 +7209,8 @@ class ScheduledTaskImageProps:
7168
7209
  }
7169
7210
  if command is not None:
7170
7211
  self._values["command"] = command
7212
+ if container_name is not None:
7213
+ self._values["container_name"] = container_name
7171
7214
  if environment is not None:
7172
7215
  self._values["environment"] = environment
7173
7216
  if log_driver is not None:
@@ -7198,6 +7241,15 @@ class ScheduledTaskImageProps:
7198
7241
  result = self._values.get("command")
7199
7242
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
7200
7243
 
7244
+ @builtins.property
7245
+ def container_name(self) -> typing.Optional[builtins.str]:
7246
+ '''Optional name for the container added.
7247
+
7248
+ :default: - ScheduledContainer
7249
+ '''
7250
+ result = self._values.get("container_name")
7251
+ return typing.cast(typing.Optional[builtins.str], result)
7252
+
7201
7253
  @builtins.property
7202
7254
  def environment(
7203
7255
  self,
@@ -14656,6 +14708,7 @@ class ScheduledEc2Task(
14656
14708
  name_mapping={
14657
14709
  "image": "image",
14658
14710
  "command": "command",
14711
+ "container_name": "containerName",
14659
14712
  "environment": "environment",
14660
14713
  "log_driver": "logDriver",
14661
14714
  "secrets": "secrets",
@@ -14670,6 +14723,7 @@ class ScheduledEc2TaskImageOptions(ScheduledTaskImageProps):
14670
14723
  *,
14671
14724
  image: _ContainerImage_94af1b43,
14672
14725
  command: typing.Optional[typing.Sequence[builtins.str]] = None,
14726
+ container_name: typing.Optional[builtins.str] = None,
14673
14727
  environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
14674
14728
  log_driver: typing.Optional[_LogDriver_393a21bb] = None,
14675
14729
  secrets: typing.Optional[typing.Mapping[builtins.str, _Secret_6be2f64f]] = None,
@@ -14681,6 +14735,7 @@ class ScheduledEc2TaskImageOptions(ScheduledTaskImageProps):
14681
14735
 
14682
14736
  :param image: The image used to start a container. Image or taskDefinition must be specified, but not both. Default: - none
14683
14737
  :param command: The command that is passed to the container. If you provide a shell command as a single string, you have to quote command-line arguments. Default: - CMD value built into container image.
14738
+ :param container_name: Optional name for the container added. Default: - ScheduledContainer
14684
14739
  :param environment: The environment variables to pass to the container. Default: none
14685
14740
  :param log_driver: The log driver to use. Default: - AwsLogDriver if enableLogging is true
14686
14741
  :param secrets: The secret to expose to the container as an environment variable. Default: - No secret environment variables.
@@ -14711,6 +14766,7 @@ class ScheduledEc2TaskImageOptions(ScheduledTaskImageProps):
14711
14766
  type_hints = typing.get_type_hints(_typecheckingstub__e93374ad5dd5f7125f15d5a78dc084f3c790e70e31747218ac4971e2100b17a5)
14712
14767
  check_type(argname="argument image", value=image, expected_type=type_hints["image"])
14713
14768
  check_type(argname="argument command", value=command, expected_type=type_hints["command"])
14769
+ check_type(argname="argument container_name", value=container_name, expected_type=type_hints["container_name"])
14714
14770
  check_type(argname="argument environment", value=environment, expected_type=type_hints["environment"])
14715
14771
  check_type(argname="argument log_driver", value=log_driver, expected_type=type_hints["log_driver"])
14716
14772
  check_type(argname="argument secrets", value=secrets, expected_type=type_hints["secrets"])
@@ -14722,6 +14778,8 @@ class ScheduledEc2TaskImageOptions(ScheduledTaskImageProps):
14722
14778
  }
14723
14779
  if command is not None:
14724
14780
  self._values["command"] = command
14781
+ if container_name is not None:
14782
+ self._values["container_name"] = container_name
14725
14783
  if environment is not None:
14726
14784
  self._values["environment"] = environment
14727
14785
  if log_driver is not None:
@@ -14758,6 +14816,15 @@ class ScheduledEc2TaskImageOptions(ScheduledTaskImageProps):
14758
14816
  result = self._values.get("command")
14759
14817
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
14760
14818
 
14819
+ @builtins.property
14820
+ def container_name(self) -> typing.Optional[builtins.str]:
14821
+ '''Optional name for the container added.
14822
+
14823
+ :default: - ScheduledContainer
14824
+ '''
14825
+ result = self._values.get("container_name")
14826
+ return typing.cast(typing.Optional[builtins.str], result)
14827
+
14761
14828
  @builtins.property
14762
14829
  def environment(
14763
14830
  self,
@@ -15220,6 +15287,7 @@ class ScheduledFargateTask(
15220
15287
  name_mapping={
15221
15288
  "image": "image",
15222
15289
  "command": "command",
15290
+ "container_name": "containerName",
15223
15291
  "environment": "environment",
15224
15292
  "log_driver": "logDriver",
15225
15293
  "secrets": "secrets",
@@ -15240,6 +15308,7 @@ class ScheduledFargateTaskImageOptions(
15240
15308
  *,
15241
15309
  image: _ContainerImage_94af1b43,
15242
15310
  command: typing.Optional[typing.Sequence[builtins.str]] = None,
15311
+ container_name: typing.Optional[builtins.str] = None,
15243
15312
  environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
15244
15313
  log_driver: typing.Optional[_LogDriver_393a21bb] = None,
15245
15314
  secrets: typing.Optional[typing.Mapping[builtins.str, _Secret_6be2f64f]] = None,
@@ -15254,6 +15323,7 @@ class ScheduledFargateTaskImageOptions(
15254
15323
 
15255
15324
  :param image: The image used to start a container. Image or taskDefinition must be specified, but not both. Default: - none
15256
15325
  :param command: The command that is passed to the container. If you provide a shell command as a single string, you have to quote command-line arguments. Default: - CMD value built into container image.
15326
+ :param container_name: Optional name for the container added. Default: - ScheduledContainer
15257
15327
  :param environment: The environment variables to pass to the container. Default: none
15258
15328
  :param log_driver: The log driver to use. Default: - AwsLogDriver if enableLogging is true
15259
15329
  :param secrets: The secret to expose to the container as an environment variable. Default: - No secret environment variables.
@@ -15268,20 +15338,17 @@ class ScheduledFargateTaskImageOptions(
15268
15338
 
15269
15339
  Example::
15270
15340
 
15271
- vpc = ec2.Vpc(self, "Vpc", max_azs=1)
15272
- cluster = ecs.Cluster(self, "EcsCluster", vpc=vpc)
15341
+ # cluster: ecs.Cluster
15342
+
15273
15343
  scheduled_fargate_task = ecs_patterns.ScheduledFargateTask(self, "ScheduledFargateTask",
15274
15344
  cluster=cluster,
15275
15345
  scheduled_fargate_task_image_options=ecsPatterns.ScheduledFargateTaskImageOptions(
15276
15346
  image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample"),
15347
+ container_name="customContainerName",
15277
15348
  memory_limit_mi_b=512
15278
15349
  ),
15279
15350
  schedule=appscaling.Schedule.expression("rate(1 minute)"),
15280
- tags=[Tag(
15281
- key="my-tag",
15282
- value="my-tag-value"
15283
- )
15284
- ]
15351
+ platform_version=ecs.FargatePlatformVersion.LATEST
15285
15352
  )
15286
15353
  '''
15287
15354
  if isinstance(runtime_platform, dict):
@@ -15290,6 +15357,7 @@ class ScheduledFargateTaskImageOptions(
15290
15357
  type_hints = typing.get_type_hints(_typecheckingstub__4a749e8e91135e4a7ff734b7c08ac37ec5bc550062036c75493dec9505f90952)
15291
15358
  check_type(argname="argument image", value=image, expected_type=type_hints["image"])
15292
15359
  check_type(argname="argument command", value=command, expected_type=type_hints["command"])
15360
+ check_type(argname="argument container_name", value=container_name, expected_type=type_hints["container_name"])
15293
15361
  check_type(argname="argument environment", value=environment, expected_type=type_hints["environment"])
15294
15362
  check_type(argname="argument log_driver", value=log_driver, expected_type=type_hints["log_driver"])
15295
15363
  check_type(argname="argument secrets", value=secrets, expected_type=type_hints["secrets"])
@@ -15304,6 +15372,8 @@ class ScheduledFargateTaskImageOptions(
15304
15372
  }
15305
15373
  if command is not None:
15306
15374
  self._values["command"] = command
15375
+ if container_name is not None:
15376
+ self._values["container_name"] = container_name
15307
15377
  if environment is not None:
15308
15378
  self._values["environment"] = environment
15309
15379
  if log_driver is not None:
@@ -15346,6 +15416,15 @@ class ScheduledFargateTaskImageOptions(
15346
15416
  result = self._values.get("command")
15347
15417
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
15348
15418
 
15419
+ @builtins.property
15420
+ def container_name(self) -> typing.Optional[builtins.str]:
15421
+ '''Optional name for the container added.
15422
+
15423
+ :default: - ScheduledContainer
15424
+ '''
15425
+ result = self._values.get("container_name")
15426
+ return typing.cast(typing.Optional[builtins.str], result)
15427
+
15349
15428
  @builtins.property
15350
15429
  def environment(
15351
15430
  self,
@@ -16584,6 +16663,7 @@ def _typecheckingstub__4aa2efa8ff1cfca00647a05fc250401ad24348dd97b5fa82c5f8ca12e
16584
16663
  *,
16585
16664
  image: _ContainerImage_94af1b43,
16586
16665
  command: typing.Optional[typing.Sequence[builtins.str]] = None,
16666
+ container_name: typing.Optional[builtins.str] = None,
16587
16667
  environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
16588
16668
  log_driver: typing.Optional[_LogDriver_393a21bb] = None,
16589
16669
  secrets: typing.Optional[typing.Mapping[builtins.str, _Secret_6be2f64f]] = None,
@@ -17321,6 +17401,7 @@ def _typecheckingstub__e93374ad5dd5f7125f15d5a78dc084f3c790e70e31747218ac4971e21
17321
17401
  *,
17322
17402
  image: _ContainerImage_94af1b43,
17323
17403
  command: typing.Optional[typing.Sequence[builtins.str]] = None,
17404
+ container_name: typing.Optional[builtins.str] = None,
17324
17405
  environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
17325
17406
  log_driver: typing.Optional[_LogDriver_393a21bb] = None,
17326
17407
  secrets: typing.Optional[typing.Mapping[builtins.str, _Secret_6be2f64f]] = None,
@@ -17379,6 +17460,7 @@ def _typecheckingstub__4a749e8e91135e4a7ff734b7c08ac37ec5bc550062036c75493dec950
17379
17460
  *,
17380
17461
  image: _ContainerImage_94af1b43,
17381
17462
  command: typing.Optional[typing.Sequence[builtins.str]] = None,
17463
+ container_name: typing.Optional[builtins.str] = None,
17382
17464
  environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
17383
17465
  log_driver: typing.Optional[_LogDriver_393a21bb] = None,
17384
17466
  secrets: typing.Optional[typing.Mapping[builtins.str, _Secret_6be2f64f]] = None,