aws-cdk-lib 2.126.0__py3-none-any.whl → 2.127.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 (69) hide show
  1. aws_cdk/__init__.py +0 -2
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.126.0.jsii.tgz → aws-cdk-lib@2.127.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +18 -6
  5. aws_cdk/aws_amazonmq/__init__.py +3 -2
  6. aws_cdk/aws_amplifyuibuilder/__init__.py +1212 -666
  7. aws_cdk/aws_apigateway/__init__.py +7 -3
  8. aws_cdk/aws_appconfig/__init__.py +108 -19
  9. aws_cdk/aws_appsync/__init__.py +43 -0
  10. aws_cdk/aws_autoscaling/__init__.py +37 -14
  11. aws_cdk/aws_cassandra/__init__.py +810 -4
  12. aws_cdk/aws_cloudfront/__init__.py +35 -37
  13. aws_cdk/aws_cloudfront/experimental/__init__.py +21 -0
  14. aws_cdk/aws_codebuild/__init__.py +43 -3
  15. aws_cdk/aws_codecommit/__init__.py +1 -0
  16. aws_cdk/aws_codepipeline/__init__.py +7 -3
  17. aws_cdk/aws_codepipeline_actions/__init__.py +11 -1
  18. aws_cdk/aws_codestarnotifications/__init__.py +24 -15
  19. aws_cdk/aws_cognito/__init__.py +180 -116
  20. aws_cdk/aws_datasync/__init__.py +8 -4
  21. aws_cdk/aws_dynamodb/__init__.py +80 -11
  22. aws_cdk/aws_ec2/__init__.py +207 -45
  23. aws_cdk/aws_ecs/__init__.py +171 -78
  24. aws_cdk/aws_ecs_patterns/__init__.py +24 -0
  25. aws_cdk/aws_efs/__init__.py +64 -8
  26. aws_cdk/aws_eks/__init__.py +52 -41
  27. aws_cdk/aws_elasticloadbalancingv2/__init__.py +12 -9
  28. aws_cdk/aws_fis/__init__.py +32 -12
  29. aws_cdk/aws_fsx/__init__.py +61 -43
  30. aws_cdk/aws_glue/__init__.py +449 -0
  31. aws_cdk/aws_guardduty/__init__.py +0 -8
  32. aws_cdk/aws_iam/__init__.py +3 -3
  33. aws_cdk/aws_inspectorv2/__init__.py +989 -0
  34. aws_cdk/aws_internetmonitor/__init__.py +10 -12
  35. aws_cdk/aws_iot/__init__.py +112 -0
  36. aws_cdk/aws_iotwireless/__init__.py +32 -19
  37. aws_cdk/aws_lambda/__init__.py +129 -32
  38. aws_cdk/aws_lambda_event_sources/__init__.py +95 -4
  39. aws_cdk/aws_lambda_nodejs/__init__.py +21 -0
  40. aws_cdk/aws_location/__init__.py +8 -2
  41. aws_cdk/aws_logs/__init__.py +7 -3
  42. aws_cdk/aws_networkmanager/__init__.py +1 -1
  43. aws_cdk/aws_opensearchserverless/__init__.py +4 -4
  44. aws_cdk/aws_osis/__init__.py +13 -13
  45. aws_cdk/aws_personalize/__init__.py +1 -1
  46. aws_cdk/aws_pinpoint/__init__.py +5 -5
  47. aws_cdk/aws_pipes/__init__.py +7 -10
  48. aws_cdk/aws_rds/__init__.py +449 -8
  49. aws_cdk/aws_redshiftserverless/__init__.py +282 -0
  50. aws_cdk/aws_rolesanywhere/__init__.py +53 -41
  51. aws_cdk/aws_route53/__init__.py +282 -0
  52. aws_cdk/aws_s3/__init__.py +11 -6
  53. aws_cdk/aws_sagemaker/__init__.py +1398 -39
  54. aws_cdk/aws_sns/__init__.py +56 -13
  55. aws_cdk/aws_sqs/__init__.py +13 -10
  56. aws_cdk/aws_stepfunctions/__init__.py +3612 -1395
  57. aws_cdk/aws_stepfunctions_tasks/__init__.py +267 -181
  58. aws_cdk/aws_transfer/__init__.py +1 -1
  59. aws_cdk/aws_verifiedpermissions/__init__.py +55 -55
  60. aws_cdk/aws_workspacesweb/__init__.py +6 -3
  61. aws_cdk/cx_api/__init__.py +17 -0
  62. aws_cdk/triggers/__init__.py +21 -0
  63. {aws_cdk_lib-2.126.0.dist-info → aws_cdk_lib-2.127.0.dist-info}/METADATA +1 -1
  64. {aws_cdk_lib-2.126.0.dist-info → aws_cdk_lib-2.127.0.dist-info}/RECORD +68 -69
  65. aws_cdk/aws_ssmguiconnect/__init__.py +0 -540
  66. {aws_cdk_lib-2.126.0.dist-info → aws_cdk_lib-2.127.0.dist-info}/LICENSE +0 -0
  67. {aws_cdk_lib-2.126.0.dist-info → aws_cdk_lib-2.127.0.dist-info}/NOTICE +0 -0
  68. {aws_cdk_lib-2.126.0.dist-info → aws_cdk_lib-2.127.0.dist-info}/WHEEL +0 -0
  69. {aws_cdk_lib-2.126.0.dist-info → aws_cdk_lib-2.127.0.dist-info}/top_level.txt +0 -0
@@ -7352,6 +7352,9 @@ class CfnClientVpnEndpoint(
7352
7352
  # the properties below are optional
7353
7353
  banner_text="bannerText"
7354
7354
  ),
7355
+ client_route_monitoring_options=ec2.CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty(
7356
+ enabled=False
7357
+ ),
7355
7358
  description="description",
7356
7359
  dns_servers=["dnsServers"],
7357
7360
  security_group_ids=["securityGroupIds"],
@@ -7382,6 +7385,7 @@ class CfnClientVpnEndpoint(
7382
7385
  server_certificate_arn: builtins.str,
7383
7386
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClientVpnEndpoint.ClientConnectOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7384
7387
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7388
+ client_route_monitoring_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7385
7389
  description: typing.Optional[builtins.str] = None,
7386
7390
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
7387
7391
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -7402,6 +7406,7 @@ class CfnClientVpnEndpoint(
7402
7406
  :param server_certificate_arn: The ARN of the server certificate. For more information, see the `AWS Certificate Manager User Guide <https://docs.aws.amazon.com/acm/latest/userguide/>`_ .
7403
7407
  :param client_connect_options: The options for managing connection authorization for new client connections.
7404
7408
  :param client_login_banner_options: Options for enabling a customizable text banner that will be displayed on AWS provided clients when a VPN session is established.
7409
+ :param client_route_monitoring_options:
7405
7410
  :param description: A brief description of the Client VPN endpoint.
7406
7411
  :param dns_servers: Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address configured on the device is used for the DNS server.
7407
7412
  :param security_group_ids: The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups.
@@ -7424,6 +7429,7 @@ class CfnClientVpnEndpoint(
7424
7429
  server_certificate_arn=server_certificate_arn,
7425
7430
  client_connect_options=client_connect_options,
7426
7431
  client_login_banner_options=client_login_banner_options,
7432
+ client_route_monitoring_options=client_route_monitoring_options,
7427
7433
  description=description,
7428
7434
  dns_servers=dns_servers,
7429
7435
  security_group_ids=security_group_ids,
@@ -7579,6 +7585,23 @@ class CfnClientVpnEndpoint(
7579
7585
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
7580
7586
  jsii.set(self, "clientLoginBannerOptions", value)
7581
7587
 
7588
+ @builtins.property
7589
+ @jsii.member(jsii_name="clientRouteMonitoringOptions")
7590
+ def client_route_monitoring_options(
7591
+ self,
7592
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty"]]:
7593
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty"]], jsii.get(self, "clientRouteMonitoringOptions"))
7594
+
7595
+ @client_route_monitoring_options.setter
7596
+ def client_route_monitoring_options(
7597
+ self,
7598
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty"]],
7599
+ ) -> None:
7600
+ if __debug__:
7601
+ type_hints = typing.get_type_hints(_typecheckingstub__256286aa73ef76d9e8c01586acd7784d241671a2785ad66bbabd4271eef9d823)
7602
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
7603
+ jsii.set(self, "clientRouteMonitoringOptions", value)
7604
+
7582
7605
  @builtins.property
7583
7606
  @jsii.member(jsii_name="description")
7584
7607
  def description(self) -> typing.Optional[builtins.str]:
@@ -8066,6 +8089,61 @@ class CfnClientVpnEndpoint(
8066
8089
  k + "=" + repr(v) for k, v in self._values.items()
8067
8090
  )
8068
8091
 
8092
+ @jsii.data_type(
8093
+ jsii_type="aws-cdk-lib.aws_ec2.CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty",
8094
+ jsii_struct_bases=[],
8095
+ name_mapping={"enabled": "enabled"},
8096
+ )
8097
+ class ClientRouteMonitoringOptionsProperty:
8098
+ def __init__(
8099
+ self,
8100
+ *,
8101
+ enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
8102
+ ) -> None:
8103
+ '''
8104
+ :param enabled:
8105
+
8106
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientroutemonitoringoptions.html
8107
+ :exampleMetadata: fixture=_generated
8108
+
8109
+ Example::
8110
+
8111
+ # The code below shows an example of how to instantiate this type.
8112
+ # The values are placeholders you should change.
8113
+ from aws_cdk import aws_ec2 as ec2
8114
+
8115
+ client_route_monitoring_options_property = ec2.CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty(
8116
+ enabled=False
8117
+ )
8118
+ '''
8119
+ if __debug__:
8120
+ type_hints = typing.get_type_hints(_typecheckingstub__a95e90764e53fffb06a3e0dcecbd41f642f3362128769eb65cf04e24be9cd71b)
8121
+ check_type(argname="argument enabled", value=enabled, expected_type=type_hints["enabled"])
8122
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
8123
+ if enabled is not None:
8124
+ self._values["enabled"] = enabled
8125
+
8126
+ @builtins.property
8127
+ def enabled(
8128
+ self,
8129
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
8130
+ '''
8131
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientroutemonitoringoptions.html#cfn-ec2-clientvpnendpoint-clientroutemonitoringoptions-enabled
8132
+ '''
8133
+ result = self._values.get("enabled")
8134
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
8135
+
8136
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
8137
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
8138
+
8139
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
8140
+ return not (rhs == self)
8141
+
8142
+ def __repr__(self) -> str:
8143
+ return "ClientRouteMonitoringOptionsProperty(%s)" % ", ".join(
8144
+ k + "=" + repr(v) for k, v in self._values.items()
8145
+ )
8146
+
8069
8147
  @jsii.data_type(
8070
8148
  jsii_type="aws-cdk-lib.aws_ec2.CfnClientVpnEndpoint.ConnectionLogOptionsProperty",
8071
8149
  jsii_struct_bases=[],
@@ -8378,6 +8456,7 @@ class CfnClientVpnEndpoint(
8378
8456
  "server_certificate_arn": "serverCertificateArn",
8379
8457
  "client_connect_options": "clientConnectOptions",
8380
8458
  "client_login_banner_options": "clientLoginBannerOptions",
8459
+ "client_route_monitoring_options": "clientRouteMonitoringOptions",
8381
8460
  "description": "description",
8382
8461
  "dns_servers": "dnsServers",
8383
8462
  "security_group_ids": "securityGroupIds",
@@ -8400,6 +8479,7 @@ class CfnClientVpnEndpointProps:
8400
8479
  server_certificate_arn: builtins.str,
8401
8480
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8402
8481
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8482
+ client_route_monitoring_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8403
8483
  description: typing.Optional[builtins.str] = None,
8404
8484
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
8405
8485
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -8419,6 +8499,7 @@ class CfnClientVpnEndpointProps:
8419
8499
  :param server_certificate_arn: The ARN of the server certificate. For more information, see the `AWS Certificate Manager User Guide <https://docs.aws.amazon.com/acm/latest/userguide/>`_ .
8420
8500
  :param client_connect_options: The options for managing connection authorization for new client connections.
8421
8501
  :param client_login_banner_options: Options for enabling a customizable text banner that will be displayed on AWS provided clients when a VPN session is established.
8502
+ :param client_route_monitoring_options:
8422
8503
  :param description: A brief description of the Client VPN endpoint.
8423
8504
  :param dns_servers: Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address configured on the device is used for the DNS server.
8424
8505
  :param security_group_ids: The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups.
@@ -8480,6 +8561,9 @@ class CfnClientVpnEndpointProps:
8480
8561
  # the properties below are optional
8481
8562
  banner_text="bannerText"
8482
8563
  ),
8564
+ client_route_monitoring_options=ec2.CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty(
8565
+ enabled=False
8566
+ ),
8483
8567
  description="description",
8484
8568
  dns_servers=["dnsServers"],
8485
8569
  security_group_ids=["securityGroupIds"],
@@ -8506,6 +8590,7 @@ class CfnClientVpnEndpointProps:
8506
8590
  check_type(argname="argument server_certificate_arn", value=server_certificate_arn, expected_type=type_hints["server_certificate_arn"])
8507
8591
  check_type(argname="argument client_connect_options", value=client_connect_options, expected_type=type_hints["client_connect_options"])
8508
8592
  check_type(argname="argument client_login_banner_options", value=client_login_banner_options, expected_type=type_hints["client_login_banner_options"])
8593
+ check_type(argname="argument client_route_monitoring_options", value=client_route_monitoring_options, expected_type=type_hints["client_route_monitoring_options"])
8509
8594
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
8510
8595
  check_type(argname="argument dns_servers", value=dns_servers, expected_type=type_hints["dns_servers"])
8511
8596
  check_type(argname="argument security_group_ids", value=security_group_ids, expected_type=type_hints["security_group_ids"])
@@ -8526,6 +8611,8 @@ class CfnClientVpnEndpointProps:
8526
8611
  self._values["client_connect_options"] = client_connect_options
8527
8612
  if client_login_banner_options is not None:
8528
8613
  self._values["client_login_banner_options"] = client_login_banner_options
8614
+ if client_route_monitoring_options is not None:
8615
+ self._values["client_route_monitoring_options"] = client_route_monitoring_options
8529
8616
  if description is not None:
8530
8617
  self._values["description"] = description
8531
8618
  if dns_servers is not None:
@@ -8624,6 +8711,16 @@ class CfnClientVpnEndpointProps:
8624
8711
  result = self._values.get("client_login_banner_options")
8625
8712
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty]], result)
8626
8713
 
8714
+ @builtins.property
8715
+ def client_route_monitoring_options(
8716
+ self,
8717
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty]]:
8718
+ '''
8719
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-clientroutemonitoringoptions
8720
+ '''
8721
+ result = self._values.get("client_route_monitoring_options")
8722
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty]], result)
8723
+
8627
8724
  @builtins.property
8628
8725
  def description(self) -> typing.Optional[builtins.str]:
8629
8726
  '''A brief description of the Client VPN endpoint.
@@ -11346,9 +11443,9 @@ class CfnEC2Fleet(
11346
11443
  :param memory_mib: The minimum and maximum amount of memory, in MiB.
11347
11444
  :param network_bandwidth_gbps: The minimum and maximum amount of baseline network bandwidth, in gigabits per second (Gbps). For more information, see `Amazon EC2 instance network bandwidth <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html>`_ in the *Amazon EC2 User Guide* . Default: No minimum or maximum limits
11348
11445
  :param network_interface_count: The minimum and maximum number of network interfaces. Default: No minimum or maximum limits
11349
- :param on_demand_max_price_percentage_over_lowest_price: The price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as ``999999`` . This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: ``20``
11446
+ :param on_demand_max_price_percentage_over_lowest_price: [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To indicate no price protection threshold, specify a high value, such as ``999999`` . This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: ``20``
11350
11447
  :param require_hibernate_support: Indicates whether instance types must support hibernation for On-Demand Instances. This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ . Default: ``false``
11351
- :param spot_max_price_percentage_over_lowest_price: The price protection threshold for Spot Instance. This is the maximum you’ll pay for an Spot Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as ``999999`` . This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: ``100``
11448
+ :param spot_max_price_percentage_over_lowest_price: [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To indicate no price protection threshold, specify a high value, such as ``999999`` . If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, then ``SpotMaxPricePercentageOverLowestPrice`` is used and the value for that parameter defaults to ``100`` . Default: ``100``
11352
11449
  :param total_local_storage_gb: The minimum and maximum amount of total local storage, in GB. Default: No minimum or maximum limits
11353
11450
  :param v_cpu_count: The minimum and maximum number of vCPUs.
11354
11451
 
@@ -11781,13 +11878,13 @@ class CfnEC2Fleet(
11781
11878
  def on_demand_max_price_percentage_over_lowest_price(
11782
11879
  self,
11783
11880
  ) -> typing.Optional[jsii.Number]:
11784
- '''The price protection threshold for On-Demand Instances.
11881
+ '''[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price.
11785
11882
 
11786
- This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.
11883
+ The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
11787
11884
 
11788
11885
  The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
11789
11886
 
11790
- To turn off price protection, specify a high value, such as ``999999`` .
11887
+ To indicate no price protection threshold, specify a high value, such as ``999999`` .
11791
11888
 
11792
11889
  This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ .
11793
11890
  .. epigraph::
@@ -11820,18 +11917,20 @@ class CfnEC2Fleet(
11820
11917
  def spot_max_price_percentage_over_lowest_price(
11821
11918
  self,
11822
11919
  ) -> typing.Optional[jsii.Number]:
11823
- '''The price protection threshold for Spot Instance.
11920
+ '''[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price.
11824
11921
 
11825
- This is the maximum you’ll pay for an Spot Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.
11922
+ The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.
11826
11923
 
11827
11924
  The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
11828
11925
 
11829
- To turn off price protection, specify a high value, such as ``999999`` .
11926
+ To indicate no price protection threshold, specify a high value, such as ``999999`` .
11927
+
11928
+ If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.
11830
11929
 
11831
11930
  This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ .
11832
11931
  .. epigraph::
11833
11932
 
11834
- If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.
11933
+ Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, then ``SpotMaxPricePercentageOverLowestPrice`` is used and the value for that parameter defaults to ``100`` .
11835
11934
 
11836
11935
  Default: ``100``
11837
11936
 
@@ -20426,9 +20525,13 @@ class CfnInstance(
20426
20525
  )
20427
20526
  class ElasticGpuSpecificationProperty:
20428
20527
  def __init__(self, *, type: builtins.str) -> None:
20429
- '''Specifies the type of Elastic GPU.
20528
+ '''.. epigraph::
20529
+
20530
+ Amazon Elastic Graphics reached end of life on January 8, 2024.
20430
20531
 
20431
- An Elastic GPU is a GPU resource that you can attach to your Amazon EC2 instance to accelerate the graphics performance of your applications. For more information, see `Amazon EC2 Elastic GPUs <https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html>`_ in the *Amazon EC2 User Guide for Windows Instances* .
20532
+ For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
20533
+
20534
+ Specifies the type of Elastic GPU. An Elastic GPU is a GPU resource that you can attach to your Amazon EC2 instance to accelerate the graphics performance of your applications. For more information, see `Amazon EC2 Elastic GPUs <https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html>`_ in the *Amazon EC2 User Guide for Windows Instances* .
20432
20535
 
20433
20536
  ``ElasticGpuSpecification`` is a property of the `AWS::EC2::Instance <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html>`_ resource.
20434
20537
 
@@ -20941,7 +21044,7 @@ class CfnInstance(
20941
21044
 
20942
21045
  :param device_index: The position of the network interface in the attachment order. A primary network interface has a device index of 0. If you create a network interface when launching an instance, you must specify the device index.
20943
21046
  :param associate_carrier_ip_address: Indicates whether to assign a carrier IP address to the network interface. You can only assign a carrier IP address to a network interface that is in a subnet in a Wavelength Zone. For more information about carrier IP addresses, see `Carrier IP address <https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip>`_ in the *AWS Wavelength Developer Guide* .
20944
- :param associate_public_ip_address: Indicates whether to assign a public IPv4 address to an instance. Applies only if creating a network interface when launching an instance. The network interface must be the primary network interface. If launching into a default subnet, the default value is ``true`` . Starting on February 1, 2024, AWS will charge for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
21047
+ :param associate_public_ip_address: Indicates whether to assign a public IPv4 address to an instance. Applies only if creating a network interface when launching an instance. The network interface must be the primary network interface. If launching into a default subnet, the default value is ``true`` . AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
20945
21048
  :param delete_on_termination: Indicates whether the network interface is deleted when the instance is terminated. Applies only if creating a network interface when launching an instance.
20946
21049
  :param description: The description of the network interface. Applies only if creating a network interface when launching an instance.
20947
21050
  :param group_set: The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
@@ -21063,7 +21166,7 @@ class CfnInstance(
21063
21166
 
21064
21167
  Applies only if creating a network interface when launching an instance. The network interface must be the primary network interface. If launching into a default subnet, the default value is ``true`` .
21065
21168
 
21066
- Starting on February 1, 2024, AWS will charge for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
21169
+ AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
21067
21170
 
21068
21171
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-networkinterface.html#cfn-ec2-instance-networkinterface-associatepublicipaddress
21069
21172
  '''
@@ -24500,7 +24603,13 @@ class CfnLaunchTemplate(
24500
24603
  )
24501
24604
  class ElasticGpuSpecificationProperty:
24502
24605
  def __init__(self, *, type: typing.Optional[builtins.str] = None) -> None:
24503
- '''Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.
24606
+ '''.. epigraph::
24607
+
24608
+ Amazon Elastic Graphics reached end of life on January 8, 2024.
24609
+
24610
+ For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.
24611
+
24612
+ Specifies a specification for an Elastic GPU for an Amazon EC2 launch template.
24504
24613
 
24505
24614
  ``ElasticGpuSpecification`` is a property of `AWS::EC2::LaunchTemplate LaunchTemplateData <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html>`_ .
24506
24615
 
@@ -24988,6 +25097,7 @@ class CfnLaunchTemplate(
24988
25097
  "instance_generations": "instanceGenerations",
24989
25098
  "local_storage": "localStorage",
24990
25099
  "local_storage_types": "localStorageTypes",
25100
+ "max_spot_price_as_percentage_of_optimal_on_demand_price": "maxSpotPriceAsPercentageOfOptimalOnDemandPrice",
24991
25101
  "memory_gib_per_v_cpu": "memoryGiBPerVCpu",
24992
25102
  "memory_mib": "memoryMiB",
24993
25103
  "network_bandwidth_gbps": "networkBandwidthGbps",
@@ -25017,6 +25127,7 @@ class CfnLaunchTemplate(
25017
25127
  instance_generations: typing.Optional[typing.Sequence[builtins.str]] = None,
25018
25128
  local_storage: typing.Optional[builtins.str] = None,
25019
25129
  local_storage_types: typing.Optional[typing.Sequence[builtins.str]] = None,
25130
+ max_spot_price_as_percentage_of_optimal_on_demand_price: typing.Optional[jsii.Number] = None,
25020
25131
  memory_gib_per_v_cpu: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLaunchTemplate.MemoryGiBPerVCpuProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
25021
25132
  memory_mib: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLaunchTemplate.MemoryMiBProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
25022
25133
  network_bandwidth_gbps: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLaunchTemplate.NetworkBandwidthGbpsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -25062,13 +25173,14 @@ class CfnLaunchTemplate(
25062
25173
  :param instance_generations: Indicates whether current or previous generation instance types are included. The current generation instance types are recommended for use. Current generation instance types are typically the latest two to three generations in each instance family. For more information, see `Instance types <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html>`_ in the *Amazon EC2 User Guide* . For current generation instance types, specify ``current`` . For previous generation instance types, specify ``previous`` . Default: Current and previous generation instance types
25063
25174
  :param local_storage: Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, `Amazon EC2 instance store <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html>`_ in the *Amazon EC2 User Guide* . - To include instance types with instance store volumes, specify ``included`` . - To require only instance types with instance store volumes, specify ``required`` . - To exclude instance types with instance store volumes, specify ``excluded`` . Default: ``included``
25064
25175
  :param local_storage_types: The type of local storage that is required. - For instance types with hard disk drive (HDD) storage, specify ``hdd`` . - For instance types with solid state drive (SSD) storage, specify ``ssd`` . Default: ``hdd`` and ``ssd``
25176
+ :param max_spot_price_as_percentage_of_optimal_on_demand_price: [Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To indicate no price protection threshold, specify a high value, such as ``999999`` . If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is based on the per vCPU or per memory price instead of the per instance price. .. epigraph:: Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, then ``SpotMaxPricePercentageOverLowestPrice`` is used and the value for that parameter defaults to ``100`` .
25065
25177
  :param memory_gib_per_v_cpu: The minimum and maximum amount of memory per vCPU, in GiB. Default: No minimum or maximum limits
25066
25178
  :param memory_mib: The minimum and maximum amount of memory, in MiB.
25067
25179
  :param network_bandwidth_gbps: The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default: No minimum or maximum limits
25068
25180
  :param network_interface_count: The minimum and maximum number of network interfaces. Default: No minimum or maximum limits
25069
- :param on_demand_max_price_percentage_over_lowest_price: The price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as ``999999`` . This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: ``20``
25181
+ :param on_demand_max_price_percentage_over_lowest_price: [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as ``999999`` . This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: ``20``
25070
25182
  :param require_hibernate_support: Indicates whether instance types must support hibernation for On-Demand Instances. This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ . Default: ``false``
25071
- :param spot_max_price_percentage_over_lowest_price: The price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as ``999999`` . This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: ``100``
25183
+ :param spot_max_price_percentage_over_lowest_price: [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To indicate no price protection threshold, specify a high value, such as ``999999`` . If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, then ``SpotMaxPricePercentageOverLowestPrice`` is used and the value for that parameter defaults to ``100`` . Default: ``100``
25072
25184
  :param total_local_storage_gb: The minimum and maximum amount of total local storage, in GB. Default: No minimum or maximum limits
25073
25185
  :param v_cpu_count: The minimum and maximum number of vCPUs.
25074
25186
 
@@ -25105,6 +25217,7 @@ class CfnLaunchTemplate(
25105
25217
  instance_generations=["instanceGenerations"],
25106
25218
  local_storage="localStorage",
25107
25219
  local_storage_types=["localStorageTypes"],
25220
+ max_spot_price_as_percentage_of_optimal_on_demand_price=123,
25108
25221
  memory_gi_bPer_vCpu=ec2.CfnLaunchTemplate.MemoryGiBPerVCpuProperty(
25109
25222
  max=123,
25110
25223
  min=123
@@ -25150,6 +25263,7 @@ class CfnLaunchTemplate(
25150
25263
  check_type(argname="argument instance_generations", value=instance_generations, expected_type=type_hints["instance_generations"])
25151
25264
  check_type(argname="argument local_storage", value=local_storage, expected_type=type_hints["local_storage"])
25152
25265
  check_type(argname="argument local_storage_types", value=local_storage_types, expected_type=type_hints["local_storage_types"])
25266
+ check_type(argname="argument max_spot_price_as_percentage_of_optimal_on_demand_price", value=max_spot_price_as_percentage_of_optimal_on_demand_price, expected_type=type_hints["max_spot_price_as_percentage_of_optimal_on_demand_price"])
25153
25267
  check_type(argname="argument memory_gib_per_v_cpu", value=memory_gib_per_v_cpu, expected_type=type_hints["memory_gib_per_v_cpu"])
25154
25268
  check_type(argname="argument memory_mib", value=memory_mib, expected_type=type_hints["memory_mib"])
25155
25269
  check_type(argname="argument network_bandwidth_gbps", value=network_bandwidth_gbps, expected_type=type_hints["network_bandwidth_gbps"])
@@ -25188,6 +25302,8 @@ class CfnLaunchTemplate(
25188
25302
  self._values["local_storage"] = local_storage
25189
25303
  if local_storage_types is not None:
25190
25304
  self._values["local_storage_types"] = local_storage_types
25305
+ if max_spot_price_as_percentage_of_optimal_on_demand_price is not None:
25306
+ self._values["max_spot_price_as_percentage_of_optimal_on_demand_price"] = max_spot_price_as_percentage_of_optimal_on_demand_price
25191
25307
  if memory_gib_per_v_cpu is not None:
25192
25308
  self._values["memory_gib_per_v_cpu"] = memory_gib_per_v_cpu
25193
25309
  if memory_mib is not None:
@@ -25445,6 +25561,28 @@ class CfnLaunchTemplate(
25445
25561
  result = self._values.get("local_storage_types")
25446
25562
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
25447
25563
 
25564
+ @builtins.property
25565
+ def max_spot_price_as_percentage_of_optimal_on_demand_price(
25566
+ self,
25567
+ ) -> typing.Optional[jsii.Number]:
25568
+ '''[Price protection] The price protection threshold for Spot Instances, as a percentage of an identified On-Demand price.
25569
+
25570
+ The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
25571
+
25572
+ The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
25573
+
25574
+ To indicate no price protection threshold, specify a high value, such as ``999999`` .
25575
+
25576
+ If you set ``DesiredCapacityType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is based on the per vCPU or per memory price instead of the per instance price.
25577
+ .. epigraph::
25578
+
25579
+ Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, then ``SpotMaxPricePercentageOverLowestPrice`` is used and the value for that parameter defaults to ``100`` .
25580
+
25581
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-instancerequirements.html#cfn-ec2-launchtemplate-instancerequirements-maxspotpriceaspercentageofoptimalondemandprice
25582
+ '''
25583
+ result = self._values.get("max_spot_price_as_percentage_of_optimal_on_demand_price")
25584
+ return typing.cast(typing.Optional[jsii.Number], result)
25585
+
25448
25586
  @builtins.property
25449
25587
  def memory_gib_per_v_cpu(
25450
25588
  self,
@@ -25499,9 +25637,9 @@ class CfnLaunchTemplate(
25499
25637
  def on_demand_max_price_percentage_over_lowest_price(
25500
25638
  self,
25501
25639
  ) -> typing.Optional[jsii.Number]:
25502
- '''The price protection threshold for On-Demand Instances.
25640
+ '''[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price.
25503
25641
 
25504
- This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.
25642
+ The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
25505
25643
 
25506
25644
  The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
25507
25645
 
@@ -25538,18 +25676,20 @@ class CfnLaunchTemplate(
25538
25676
  def spot_max_price_percentage_over_lowest_price(
25539
25677
  self,
25540
25678
  ) -> typing.Optional[jsii.Number]:
25541
- '''The price protection threshold for Spot Instances.
25679
+ '''[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price.
25542
25680
 
25543
- This is the maximum you’ll pay for a Spot Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.
25681
+ The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.
25544
25682
 
25545
25683
  The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
25546
25684
 
25547
- To turn off price protection, specify a high value, such as ``999999`` .
25685
+ To indicate no price protection threshold, specify a high value, such as ``999999`` .
25686
+
25687
+ If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.
25548
25688
 
25549
25689
  This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ .
25550
25690
  .. epigraph::
25551
25691
 
25552
- If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.
25692
+ Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, then ``SpotMaxPricePercentageOverLowestPrice`` is used and the value for that parameter defaults to ``100`` .
25553
25693
 
25554
25694
  Default: ``100``
25555
25695
 
@@ -25975,6 +26115,7 @@ class CfnLaunchTemplate(
25975
26115
  instance_generations=["instanceGenerations"],
25976
26116
  local_storage="localStorage",
25977
26117
  local_storage_types=["localStorageTypes"],
26118
+ max_spot_price_as_percentage_of_optimal_on_demand_price=123,
25978
26119
  memory_gi_bPer_vCpu=ec2.CfnLaunchTemplate.MemoryGiBPerVCpuProperty(
25979
26120
  max=123,
25980
26121
  min=123
@@ -27469,7 +27610,7 @@ class CfnLaunchTemplate(
27469
27610
  ``NetworkInterface`` is a property of `AWS::EC2::LaunchTemplate LaunchTemplateData <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html>`_ .
27470
27611
 
27471
27612
  :param associate_carrier_ip_address: Associates a Carrier IP address with eth0 for a new network interface. Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see `Carrier IP addresses <https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip>`_ in the *AWS Wavelength Developer Guide* .
27472
- :param associate_public_ip_address: Associates a public IPv4 address with eth0 for a new network interface. Starting on February 1, 2024, AWS will charge for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `Amazon VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
27613
+ :param associate_public_ip_address: Associates a public IPv4 address with eth0 for a new network interface. AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `Amazon VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
27473
27614
  :param connection_tracking_specification: A connection tracking specification for the network interface.
27474
27615
  :param delete_on_termination: Indicates whether the network interface is deleted when the instance is terminated.
27475
27616
  :param description: A description for the network interface.
@@ -27632,7 +27773,7 @@ class CfnLaunchTemplate(
27632
27773
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
27633
27774
  '''Associates a public IPv4 address with eth0 for a new network interface.
27634
27775
 
27635
- Starting on February 1, 2024, AWS will charge for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `Amazon VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
27776
+ AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `Amazon VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
27636
27777
 
27637
27778
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-associatepublicipaddress
27638
27779
  '''
@@ -41294,7 +41435,8 @@ class CfnSecurityGroupIngress(
41294
41435
  @builtins.property
41295
41436
  @jsii.member(jsii_name="attrId")
41296
41437
  def attr_id(self) -> builtins.str:
41297
- '''
41438
+ '''The Security Group Rule Id.
41439
+
41298
41440
  :cloudformationAttribute: Id
41299
41441
  '''
41300
41442
  return typing.cast(builtins.str, jsii.get(self, "attrId"))
@@ -43389,7 +43531,7 @@ class CfnSpotFleet(
43389
43531
  ) -> None:
43390
43532
  '''Describes a network interface.
43391
43533
 
43392
- :param associate_public_ip_address: Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is ``true`` . Starting on February 1, 2024, AWS will charge for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `Amazon VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
43534
+ :param associate_public_ip_address: Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is ``true`` . AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `Amazon VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
43393
43535
  :param delete_on_termination: Indicates whether the network interface is deleted when the instance is terminated.
43394
43536
  :param description: The description of the network interface. Applies only if creating a network interface when launching an instance.
43395
43537
  :param device_index: The position of the network interface in the attachment order. A primary network interface has a device index of 0. If you specify a network interface when launching an instance, you must specify the device index.
@@ -43476,7 +43618,7 @@ class CfnSpotFleet(
43476
43618
 
43477
43619
  The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is ``true`` .
43478
43620
 
43479
- Starting on February 1, 2024, AWS will charge for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `Amazon VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
43621
+ AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `Amazon VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
43480
43622
 
43481
43623
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instancenetworkinterfacespecification.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-associatepublicipaddress
43482
43624
  '''
@@ -43706,9 +43848,9 @@ class CfnSpotFleet(
43706
43848
  :param memory_mib: The minimum and maximum amount of memory, in MiB.
43707
43849
  :param network_bandwidth_gbps: The minimum and maximum amount of baseline network bandwidth, in gigabits per second (Gbps). For more information, see `Amazon EC2 instance network bandwidth <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html>`_ in the *Amazon EC2 User Guide* . Default: No minimum or maximum limits
43708
43850
  :param network_interface_count: The minimum and maximum number of network interfaces. Default: No minimum or maximum limits
43709
- :param on_demand_max_price_percentage_over_lowest_price: The price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as ``999999`` . This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: ``20``
43851
+ :param on_demand_max_price_percentage_over_lowest_price: [Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To indicate no price protection threshold, specify a high value, such as ``999999`` . This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: ``20``
43710
43852
  :param require_hibernate_support: Indicates whether instance types must support hibernation for On-Demand Instances. This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ . Default: ``false``
43711
- :param spot_max_price_percentage_over_lowest_price: The price protection threshold for Spot Instance. This is the maximum you’ll pay for an Spot Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To turn off price protection, specify a high value, such as ``999999`` . This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. Default: ``100``
43853
+ :param spot_max_price_percentage_over_lowest_price: [Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price. The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold. The parameter accepts an integer, which Amazon EC2 interprets as a percentage. To indicate no price protection threshold, specify a high value, such as ``999999`` . If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price. This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ . .. epigraph:: Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, then ``SpotMaxPricePercentageOverLowestPrice`` is used and the value for that parameter defaults to ``100`` . Default: ``100``
43712
43854
  :param total_local_storage_gb: The minimum and maximum amount of total local storage, in GB. Default: No minimum or maximum limits
43713
43855
  :param v_cpu_count: The minimum and maximum number of vCPUs.
43714
43856
 
@@ -44141,13 +44283,13 @@ class CfnSpotFleet(
44141
44283
  def on_demand_max_price_percentage_over_lowest_price(
44142
44284
  self,
44143
44285
  ) -> typing.Optional[jsii.Number]:
44144
- '''The price protection threshold for On-Demand Instances.
44286
+ '''[Price protection] The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price.
44145
44287
 
44146
- This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.
44288
+ The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
44147
44289
 
44148
44290
  The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
44149
44291
 
44150
- To turn off price protection, specify a high value, such as ``999999`` .
44292
+ To indicate no price protection threshold, specify a high value, such as ``999999`` .
44151
44293
 
44152
44294
  This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ .
44153
44295
  .. epigraph::
@@ -44180,18 +44322,20 @@ class CfnSpotFleet(
44180
44322
  def spot_max_price_percentage_over_lowest_price(
44181
44323
  self,
44182
44324
  ) -> typing.Optional[jsii.Number]:
44183
- '''The price protection threshold for Spot Instance.
44325
+ '''[Price protection] The price protection threshold for Spot Instances, as a percentage higher than an identified Spot price.
44184
44326
 
44185
- This is the maximum you’ll pay for an Spot Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.
44327
+ The identified Spot price is the Spot price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified Spot price is from the lowest priced current generation instance types, and failing that, from the lowest priced previous generation instance types that match your attributes. When Amazon EC2 selects instance types with your attributes, it will exclude instance types whose Spot price exceeds your specified threshold.
44186
44328
 
44187
44329
  The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
44188
44330
 
44189
- To turn off price protection, specify a high value, such as ``999999`` .
44331
+ To indicate no price protection threshold, specify a high value, such as ``999999`` .
44332
+
44333
+ If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.
44190
44334
 
44191
44335
  This parameter is not supported for `GetSpotPlacementScores <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html>`_ and `GetInstanceTypesFromInstanceRequirements <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html>`_ .
44192
44336
  .. epigraph::
44193
44337
 
44194
- If you set ``TargetCapacityUnitType`` to ``vcpu`` or ``memory-mib`` , the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.
44338
+ Only one of ``SpotMaxPricePercentageOverLowestPrice`` or ``MaxSpotPriceAsPercentageOfOptimalOnDemandPrice`` can be specified. If you don't specify either, then ``SpotMaxPricePercentageOverLowestPrice`` is used and the value for that parameter defaults to ``100`` .
44195
44339
 
44196
44340
  Default: ``100``
44197
44341
 
@@ -47224,7 +47368,7 @@ class CfnSubnet(
47224
47368
  subnetcount = subnetcount + 1
47225
47369
 
47226
47370
  cluster = eks.Cluster(self, "hello-eks",
47227
- version=eks.KubernetesVersion.V1_28,
47371
+ version=eks.KubernetesVersion.V1_29,
47228
47372
  vpc=vpc,
47229
47373
  ip_family=eks.IpFamily.IP_V6,
47230
47374
  vpc_subnets=[ec2.SubnetSelection(subnets=vpc.public_subnets)]
@@ -47270,7 +47414,7 @@ class CfnSubnet(
47270
47414
  :param ipv6_ipam_pool_id: An IPv6 IPAM pool ID for the subnet.
47271
47415
  :param ipv6_native: Indicates whether this is an IPv6 only subnet. For more information, see `Subnet basics <https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html#subnet-basics>`_ in the *Amazon Virtual Private Cloud User Guide* .
47272
47416
  :param ipv6_netmask_length: An IPv6 netmask length for the subnet.
47273
- :param map_public_ip_on_launch: Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false`` . Starting on February 1, 2024, AWS will charge for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
47417
+ :param map_public_ip_on_launch: Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false`` . AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
47274
47418
  :param outpost_arn: The Amazon Resource Name (ARN) of the Outpost.
47275
47419
  :param private_dns_name_options_on_launch: The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see `Amazon EC2 instance hostname types <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html>`_ in the *Amazon Elastic Compute Cloud User Guide* . Available options: - EnableResourceNameDnsAAAARecord (true | false) - EnableResourceNameDnsARecord (true | false) - HostnameType (ip-name | resource-name)
47276
47420
  :param tags: Any tags assigned to the subnet.
@@ -48283,7 +48427,7 @@ class CfnSubnetProps:
48283
48427
  :param ipv6_ipam_pool_id: An IPv6 IPAM pool ID for the subnet.
48284
48428
  :param ipv6_native: Indicates whether this is an IPv6 only subnet. For more information, see `Subnet basics <https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html#subnet-basics>`_ in the *Amazon Virtual Private Cloud User Guide* .
48285
48429
  :param ipv6_netmask_length: An IPv6 netmask length for the subnet.
48286
- :param map_public_ip_on_launch: Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false`` . Starting on February 1, 2024, AWS will charge for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
48430
+ :param map_public_ip_on_launch: Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false`` . AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
48287
48431
  :param outpost_arn: The Amazon Resource Name (ARN) of the Outpost.
48288
48432
  :param private_dns_name_options_on_launch: The hostname type for EC2 instances launched into this subnet and how DNS A and AAAA record queries to the instances should be handled. For more information, see `Amazon EC2 instance hostname types <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-naming.html>`_ in the *Amazon Elastic Compute Cloud User Guide* . Available options: - EnableResourceNameDnsAAAARecord (true | false) - EnableResourceNameDnsARecord (true | false) - HostnameType (ip-name | resource-name)
48289
48433
  :param tags: Any tags assigned to the subnet.
@@ -48523,7 +48667,7 @@ class CfnSubnetProps:
48523
48667
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
48524
48668
  '''Indicates whether instances launched in this subnet receive a public IPv4 address. The default value is ``false`` .
48525
48669
 
48526
- Starting on February 1, 2024, AWS will charge for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
48670
+ AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
48527
48671
 
48528
48672
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-mappubliciponlaunch
48529
48673
  '''
@@ -54674,7 +54818,7 @@ class CfnVPC(
54674
54818
  ):
54675
54819
  '''Specifies a virtual private cloud (VPC).
54676
54820
 
54677
- You can optionally request an IPv6 CIDR block for the VPC. You can request an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP).
54821
+ To add an IPv6 CIDR block to the VPC, see `AWS::EC2::VPCCidrBlock <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html>`_ .
54678
54822
 
54679
54823
  For more information, see `Virtual private clouds (VPC) <https://docs.aws.amazon.com/vpc/latest/userguide/configure-your-vpc.html>`_ in the *Amazon VPC User Guide* .
54680
54824
 
@@ -54959,9 +55103,11 @@ class CfnVPCCidrBlock(
54959
55103
  metaclass=jsii.JSIIMeta,
54960
55104
  jsii_type="aws-cdk-lib.aws_ec2.CfnVPCCidrBlock",
54961
55105
  ):
54962
- '''Associates a CIDR block with your VPC. You can only associate a single IPv6 CIDR block with your VPC.
55106
+ '''Associates a CIDR block with your VPC.
55107
+
55108
+ You can optionally request an IPv6 CIDR block for the VPC. You can request an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP).
54963
55109
 
54964
- For more information about associating CIDR blocks with your VPC and applicable restrictions, see `VPC and Subnet Sizing <https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html#VPC_Sizing>`_ in the *Amazon VPC User Guide* .
55110
+ For more information, see `VPC CIDR blocks <https://docs.aws.amazon.com/vpc/latest/userguide/vpc-cidr-blocks.html>`_ in the *Amazon VPC User Guide* .
54965
55111
 
54966
55112
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html
54967
55113
  :cloudformationResource: AWS::EC2::VPCCidrBlock
@@ -54993,7 +55139,7 @@ class CfnVPCCidrBlock(
54993
55139
  subnetcount = subnetcount + 1
54994
55140
 
54995
55141
  cluster = eks.Cluster(self, "hello-eks",
54996
- version=eks.KubernetesVersion.V1_28,
55142
+ version=eks.KubernetesVersion.V1_29,
54997
55143
  vpc=vpc,
54998
55144
  ip_family=eks.IpFamily.IP_V6,
54999
55145
  vpc_subnets=[ec2.SubnetSelection(subnets=vpc.public_subnets)]
@@ -55285,7 +55431,7 @@ class CfnVPCCidrBlockProps:
55285
55431
  subnetcount = subnetcount + 1
55286
55432
 
55287
55433
  cluster = eks.Cluster(self, "hello-eks",
55288
- version=eks.KubernetesVersion.V1_28,
55434
+ version=eks.KubernetesVersion.V1_29,
55289
55435
  vpc=vpc,
55290
55436
  ip_family=eks.IpFamily.IP_V6,
55291
55437
  vpc_subnets=[ec2.SubnetSelection(subnets=vpc.public_subnets)]
@@ -93237,6 +93383,7 @@ def _typecheckingstub__1880bffa9253aaedfa6af6175da6262a96ea34dadf82dc678a1eef91c
93237
93383
  server_certificate_arn: builtins.str,
93238
93384
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
93239
93385
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
93386
+ client_route_monitoring_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
93240
93387
  description: typing.Optional[builtins.str] = None,
93241
93388
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
93242
93389
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -93299,6 +93446,12 @@ def _typecheckingstub__497c1bea9e9caa987aeafc2d4334f07cd2d9664a3f3cd38bebd561170
93299
93446
  """Type checking stubs"""
93300
93447
  pass
93301
93448
 
93449
+ def _typecheckingstub__256286aa73ef76d9e8c01586acd7784d241671a2785ad66bbabd4271eef9d823(
93450
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty]],
93451
+ ) -> None:
93452
+ """Type checking stubs"""
93453
+ pass
93454
+
93302
93455
  def _typecheckingstub__bb1d5fb0102c1b6de24ad13acfc13837ec5422291e23048395fe03350aea2188(
93303
93456
  value: typing.Optional[builtins.str],
93304
93457
  ) -> None:
@@ -93392,6 +93545,13 @@ def _typecheckingstub__907ff3a3bd097ac37a720bbc18cf4e29748beb226ddf13641e4835016
93392
93545
  """Type checking stubs"""
93393
93546
  pass
93394
93547
 
93548
+ def _typecheckingstub__a95e90764e53fffb06a3e0dcecbd41f642f3362128769eb65cf04e24be9cd71b(
93549
+ *,
93550
+ enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
93551
+ ) -> None:
93552
+ """Type checking stubs"""
93553
+ pass
93554
+
93395
93555
  def _typecheckingstub__2c142e5322bb8bda4ace9616736c0e12d7c7b9b219932b4168a975e68d0d9395(
93396
93556
  *,
93397
93557
  enabled: typing.Union[builtins.bool, _IResolvable_da3f097b],
@@ -93432,6 +93592,7 @@ def _typecheckingstub__05994467e800c33b4a01e884b4b20bef2569d710f5dc323617cd814e5
93432
93592
  server_certificate_arn: builtins.str,
93433
93593
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
93434
93594
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
93595
+ client_route_monitoring_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientRouteMonitoringOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
93435
93596
  description: typing.Optional[builtins.str] = None,
93436
93597
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
93437
93598
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -95868,6 +96029,7 @@ def _typecheckingstub__5fc9ef3203af5508d5ac30f48557352d8fd1abcefdc9c04e40826c7c6
95868
96029
  instance_generations: typing.Optional[typing.Sequence[builtins.str]] = None,
95869
96030
  local_storage: typing.Optional[builtins.str] = None,
95870
96031
  local_storage_types: typing.Optional[typing.Sequence[builtins.str]] = None,
96032
+ max_spot_price_as_percentage_of_optimal_on_demand_price: typing.Optional[jsii.Number] = None,
95871
96033
  memory_gib_per_v_cpu: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLaunchTemplate.MemoryGiBPerVCpuProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
95872
96034
  memory_mib: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLaunchTemplate.MemoryMiBProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
95873
96035
  network_bandwidth_gbps: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLaunchTemplate.NetworkBandwidthGbpsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,