aws-cdk-lib 2.185.0__py3-none-any.whl → 2.186.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 (49) hide show
  1. aws_cdk/__init__.py +102 -29
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.185.0.jsii.tgz → aws-cdk-lib@2.186.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +3 -2
  5. aws_cdk/aws_apigatewayv2/__init__.py +9 -0
  6. aws_cdk/aws_appconfig/__init__.py +3 -3
  7. aws_cdk/aws_applicationsignals/__init__.py +363 -3
  8. aws_cdk/aws_appsync/__init__.py +65 -3
  9. aws_cdk/aws_bedrock/__init__.py +385 -14
  10. aws_cdk/aws_cleanrooms/__init__.py +21 -9
  11. aws_cdk/aws_cloudformation/__init__.py +1 -5
  12. aws_cdk/aws_cloudfront/__init__.py +4 -1
  13. aws_cdk/aws_cloudfront_origins/__init__.py +4 -2
  14. aws_cdk/aws_codeartifact/__init__.py +20 -33
  15. aws_cdk/aws_codepipeline/__init__.py +1328 -120
  16. aws_cdk/aws_cognito/__init__.py +1 -1
  17. aws_cdk/aws_cognito_identitypool/__init__.py +2303 -0
  18. aws_cdk/aws_connect/__init__.py +3 -7
  19. aws_cdk/aws_controltower/__init__.py +18 -26
  20. aws_cdk/aws_datazone/__init__.py +3471 -2
  21. aws_cdk/aws_ec2/__init__.py +560 -25
  22. aws_cdk/aws_ecs/__init__.py +15 -20
  23. aws_cdk/aws_events/__init__.py +37 -14
  24. aws_cdk/aws_gamelift/__init__.py +5 -5
  25. aws_cdk/aws_iam/__init__.py +264 -0
  26. aws_cdk/aws_imagebuilder/__init__.py +3 -27
  27. aws_cdk/aws_kinesisfirehose/__init__.py +2 -3
  28. aws_cdk/aws_lambda/__init__.py +7 -1
  29. aws_cdk/aws_location/__init__.py +24 -7
  30. aws_cdk/aws_msk/__init__.py +8 -2
  31. aws_cdk/aws_networkfirewall/__init__.py +16 -12
  32. aws_cdk/aws_oam/__init__.py +8 -37
  33. aws_cdk/aws_quicksight/__init__.py +6 -69
  34. aws_cdk/aws_redshiftserverless/__init__.py +192 -15
  35. aws_cdk/aws_rum/__init__.py +315 -52
  36. aws_cdk/aws_scheduler/__init__.py +3944 -121
  37. aws_cdk/aws_scheduler_targets/__init__.py +4472 -0
  38. aws_cdk/aws_ssmquicksetup/__init__.py +5 -3
  39. aws_cdk/aws_stepfunctions/__init__.py +17 -15
  40. aws_cdk/aws_timestream/__init__.py +4 -4
  41. aws_cdk/aws_wafv2/__init__.py +345 -0
  42. aws_cdk/aws_workspacesthinclient/__init__.py +4 -4
  43. aws_cdk/cx_api/__init__.py +23 -0
  44. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/METADATA +1 -1
  45. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/RECORD +49 -47
  46. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/LICENSE +0 -0
  47. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/NOTICE +0 -0
  48. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/WHEEL +0 -0
  49. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/top_level.txt +0 -0
@@ -1230,6 +1230,20 @@ ec2.VpcEndpointService(self, "EndpointService",
1230
1230
  )
1231
1231
  ```
1232
1232
 
1233
+ You can specify which IP address types (IPv4, IPv6, or both) are supported for your VPC endpoint service:
1234
+
1235
+ ```python
1236
+ # network_load_balancer: elbv2.NetworkLoadBalancer
1237
+
1238
+
1239
+ ec2.VpcEndpointService(self, "EndpointService",
1240
+ vpc_endpoint_service_load_balancers=[network_load_balancer],
1241
+ # Support both IPv4 and IPv6 connections to the endpoint service
1242
+ supported_ip_address_types=[ec2.IpAddressType.IPV4, ec2.IpAddressType.IPV6
1243
+ ]
1244
+ )
1245
+ ```
1246
+
1233
1247
  Endpoint services support private DNS, which makes it easier for clients to connect to your service by automatically setting up DNS in their VPC.
1234
1248
  You can enable private DNS on an endpoint service like so:
1235
1249
 
@@ -2616,7 +2630,15 @@ ec2.PrefixList(self, "PrefixList",
2616
2630
  )
2617
2631
  ```
2618
2632
 
2619
- For more information see [Work with customer-managed prefix lists](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-managed-prefix-lists.html)
2633
+ To import AWS-managed prefix list, you can use `PrefixList.fromLookup()`.
2634
+
2635
+ ```python
2636
+ ec2.PrefixList.from_lookup(self, "PrefixListFromName",
2637
+ prefix_list_name="com.amazonaws.global.cloudfront.origin-facing"
2638
+ )
2639
+ ```
2640
+
2641
+ For more information see [Work with customer-managed prefix lists](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-managed-prefix-lists.html).
2620
2642
 
2621
2643
  ### IAM instance profile
2622
2644
 
@@ -5786,6 +5808,62 @@ class CfnCapacityReservation(
5786
5808
  '''
5787
5809
  return typing.cast(jsii.Number, jsii.get(self, "attrAvailableInstanceCount"))
5788
5810
 
5811
+ @builtins.property
5812
+ @jsii.member(jsii_name="attrCapacityAllocationSet")
5813
+ def attr_capacity_allocation_set(self) -> _IResolvable_da3f097b:
5814
+ '''
5815
+ :cloudformationAttribute: CapacityAllocationSet
5816
+ '''
5817
+ return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrCapacityAllocationSet"))
5818
+
5819
+ @builtins.property
5820
+ @jsii.member(jsii_name="attrCapacityReservationArn")
5821
+ def attr_capacity_reservation_arn(self) -> builtins.str:
5822
+ '''The Amazon Resource Name (ARN) of the Capacity Reservation.
5823
+
5824
+ :cloudformationAttribute: CapacityReservationArn
5825
+ '''
5826
+ return typing.cast(builtins.str, jsii.get(self, "attrCapacityReservationArn"))
5827
+
5828
+ @builtins.property
5829
+ @jsii.member(jsii_name="attrCapacityReservationFleetId")
5830
+ def attr_capacity_reservation_fleet_id(self) -> builtins.str:
5831
+ '''The ID of the Capacity Reservation Fleet to which the Capacity Reservation belongs.
5832
+
5833
+ Only valid for Capacity Reservations that were created by a Capacity Reservation Fleet.
5834
+
5835
+ :cloudformationAttribute: CapacityReservationFleetId
5836
+ '''
5837
+ return typing.cast(builtins.str, jsii.get(self, "attrCapacityReservationFleetId"))
5838
+
5839
+ @builtins.property
5840
+ @jsii.member(jsii_name="attrCommitmentInfo")
5841
+ def attr_commitment_info(self) -> _IResolvable_da3f097b:
5842
+ '''
5843
+ :cloudformationAttribute: CommitmentInfo
5844
+ '''
5845
+ return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrCommitmentInfo"))
5846
+
5847
+ @builtins.property
5848
+ @jsii.member(jsii_name="attrCreateDate")
5849
+ def attr_create_date(self) -> builtins.str:
5850
+ '''The date and time at which the Capacity Reservation was created.
5851
+
5852
+ :cloudformationAttribute: CreateDate
5853
+ '''
5854
+ return typing.cast(builtins.str, jsii.get(self, "attrCreateDate"))
5855
+
5856
+ @builtins.property
5857
+ @jsii.member(jsii_name="attrDeliveryPreference")
5858
+ def attr_delivery_preference(self) -> builtins.str:
5859
+ '''The delivery method for a future-dated Capacity Reservation.
5860
+
5861
+ ``incremental`` indicates that the requested capacity is delivered in addition to any running instances and reserved capacity that you have in your account at the requested date and time.
5862
+
5863
+ :cloudformationAttribute: DeliveryPreference
5864
+ '''
5865
+ return typing.cast(builtins.str, jsii.get(self, "attrDeliveryPreference"))
5866
+
5789
5867
  @builtins.property
5790
5868
  @jsii.member(jsii_name="attrId")
5791
5869
  def attr_id(self) -> builtins.str:
@@ -5806,6 +5884,54 @@ class CfnCapacityReservation(
5806
5884
  '''
5807
5885
  return typing.cast(builtins.str, jsii.get(self, "attrInstanceType"))
5808
5886
 
5887
+ @builtins.property
5888
+ @jsii.member(jsii_name="attrOwnerId")
5889
+ def attr_owner_id(self) -> builtins.str:
5890
+ '''The ID of the AWS account that owns the Capacity Reservation.
5891
+
5892
+ :cloudformationAttribute: OwnerId
5893
+ '''
5894
+ return typing.cast(builtins.str, jsii.get(self, "attrOwnerId"))
5895
+
5896
+ @builtins.property
5897
+ @jsii.member(jsii_name="attrReservationType")
5898
+ def attr_reservation_type(self) -> builtins.str:
5899
+ '''The type of Capacity Reservation.
5900
+
5901
+ :cloudformationAttribute: ReservationType
5902
+ '''
5903
+ return typing.cast(builtins.str, jsii.get(self, "attrReservationType"))
5904
+
5905
+ @builtins.property
5906
+ @jsii.member(jsii_name="attrStartDate")
5907
+ def attr_start_date(self) -> builtins.str:
5908
+ '''The date and time at which the Capacity Reservation was started.
5909
+
5910
+ :cloudformationAttribute: StartDate
5911
+ '''
5912
+ return typing.cast(builtins.str, jsii.get(self, "attrStartDate"))
5913
+
5914
+ @builtins.property
5915
+ @jsii.member(jsii_name="attrState")
5916
+ def attr_state(self) -> builtins.str:
5917
+ '''The current state of the Capacity Reservation. A Capacity Reservation can be in one of the following states:.
5918
+
5919
+ - ``active`` - The capacity is available for use.
5920
+ - ``expired`` - The Capacity Reservation expired automatically at the date and time specified in your reservation request. The reserved capacity is no longer available for your use.
5921
+ - ``cancelled`` - The Capacity Reservation was canceled. The reserved capacity is no longer available for your use.
5922
+ - ``pending`` - The Capacity Reservation request was successful but the capacity provisioning is still pending.
5923
+ - ``failed`` - The Capacity Reservation request has failed. A request can fail due to request parameters that are not valid, capacity constraints, or instance limit constraints. You can view a failed request for 60 minutes.
5924
+ - ``scheduled`` - ( *Future-dated Capacity Reservations* ) The future-dated Capacity Reservation request was approved and the Capacity Reservation is scheduled for delivery on the requested start date.
5925
+ - ``payment-pending`` - ( *Capacity Blocks* ) The upfront payment has not been processed yet.
5926
+ - ``payment-failed`` - ( *Capacity Blocks* ) The upfront payment was not processed in the 12-hour time frame. Your Capacity Block was released.
5927
+ - ``assessing`` - ( *Future-dated Capacity Reservations* ) Amazon EC2 is assessing your request for a future-dated Capacity Reservation.
5928
+ - ``delayed`` - ( *Future-dated Capacity Reservations* ) Amazon EC2 encountered a delay in provisioning the requested future-dated Capacity Reservation. Amazon EC2 is unable to deliver the requested capacity by the requested start date and time.
5929
+ - ``unsupported`` - ( *Future-dated Capacity Reservations* ) Amazon EC2 can't support the future-dated Capacity Reservation request due to capacity constraints. You can view unsupported requests for 30 days. The Capacity Reservation will not be delivered.
5930
+
5931
+ :cloudformationAttribute: State
5932
+ '''
5933
+ return typing.cast(builtins.str, jsii.get(self, "attrState"))
5934
+
5809
5935
  @builtins.property
5810
5936
  @jsii.member(jsii_name="attrTenancy")
5811
5937
  def attr_tenancy(self) -> builtins.str:
@@ -6062,6 +6188,153 @@ class CfnCapacityReservation(
6062
6188
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
6063
6189
  jsii.set(self, "unusedReservationBillingOwnerId", value) # pyright: ignore[reportArgumentType]
6064
6190
 
6191
+ @jsii.data_type(
6192
+ jsii_type="aws-cdk-lib.aws_ec2.CfnCapacityReservation.CapacityAllocationProperty",
6193
+ jsii_struct_bases=[],
6194
+ name_mapping={"allocation_type": "allocationType", "count": "count"},
6195
+ )
6196
+ class CapacityAllocationProperty:
6197
+ def __init__(
6198
+ self,
6199
+ *,
6200
+ allocation_type: typing.Optional[builtins.str] = None,
6201
+ count: typing.Optional[jsii.Number] = None,
6202
+ ) -> None:
6203
+ '''Information about instance capacity usage for a Capacity Reservation.
6204
+
6205
+ :param allocation_type: The usage type. ``used`` indicates that the instance capacity is in use by instances that are running in the Capacity Reservation.
6206
+ :param count: The amount of instance capacity associated with the usage. For example a value of ``4`` indicates that instance capacity for 4 instances is currently in use.
6207
+
6208
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-capacityallocation.html
6209
+ :exampleMetadata: fixture=_generated
6210
+
6211
+ Example::
6212
+
6213
+ # The code below shows an example of how to instantiate this type.
6214
+ # The values are placeholders you should change.
6215
+ from aws_cdk import aws_ec2 as ec2
6216
+
6217
+ capacity_allocation_property = ec2.CfnCapacityReservation.CapacityAllocationProperty(
6218
+ allocation_type="allocationType",
6219
+ count=123
6220
+ )
6221
+ '''
6222
+ if __debug__:
6223
+ type_hints = typing.get_type_hints(_typecheckingstub__bb73541f409f83260eb045bf4e0e3879b1c1c509522736f018397f8ac1cf955c)
6224
+ check_type(argname="argument allocation_type", value=allocation_type, expected_type=type_hints["allocation_type"])
6225
+ check_type(argname="argument count", value=count, expected_type=type_hints["count"])
6226
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
6227
+ if allocation_type is not None:
6228
+ self._values["allocation_type"] = allocation_type
6229
+ if count is not None:
6230
+ self._values["count"] = count
6231
+
6232
+ @builtins.property
6233
+ def allocation_type(self) -> typing.Optional[builtins.str]:
6234
+ '''The usage type.
6235
+
6236
+ ``used`` indicates that the instance capacity is in use by instances that are running in the Capacity Reservation.
6237
+
6238
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-capacityallocation.html#cfn-ec2-capacityreservation-capacityallocation-allocationtype
6239
+ '''
6240
+ result = self._values.get("allocation_type")
6241
+ return typing.cast(typing.Optional[builtins.str], result)
6242
+
6243
+ @builtins.property
6244
+ def count(self) -> typing.Optional[jsii.Number]:
6245
+ '''The amount of instance capacity associated with the usage.
6246
+
6247
+ For example a value of ``4`` indicates that instance capacity for 4 instances is currently in use.
6248
+
6249
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-capacityallocation.html#cfn-ec2-capacityreservation-capacityallocation-count
6250
+ '''
6251
+ result = self._values.get("count")
6252
+ return typing.cast(typing.Optional[jsii.Number], result)
6253
+
6254
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6255
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6256
+
6257
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6258
+ return not (rhs == self)
6259
+
6260
+ def __repr__(self) -> str:
6261
+ return "CapacityAllocationProperty(%s)" % ", ".join(
6262
+ k + "=" + repr(v) for k, v in self._values.items()
6263
+ )
6264
+
6265
+ @jsii.data_type(
6266
+ jsii_type="aws-cdk-lib.aws_ec2.CfnCapacityReservation.CommitmentInfoProperty",
6267
+ jsii_struct_bases=[],
6268
+ name_mapping={
6269
+ "commitment_end_date": "commitmentEndDate",
6270
+ "committed_instance_count": "committedInstanceCount",
6271
+ },
6272
+ )
6273
+ class CommitmentInfoProperty:
6274
+ def __init__(
6275
+ self,
6276
+ *,
6277
+ commitment_end_date: typing.Optional[builtins.str] = None,
6278
+ committed_instance_count: typing.Optional[jsii.Number] = None,
6279
+ ) -> None:
6280
+ '''Information about your commitment for a future-dated Capacity Reservation.
6281
+
6282
+ :param commitment_end_date: The date and time at which the commitment duration expires, in the ISO8601 format in the UTC time zone ( ``YYYY-MM-DDThh:mm:ss.sssZ`` ). You can't decrease the instance count or cancel the Capacity Reservation before this date and time.
6283
+ :param committed_instance_count: The instance capacity that you committed to when you requested the future-dated Capacity Reservation.
6284
+
6285
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-commitmentinfo.html
6286
+ :exampleMetadata: fixture=_generated
6287
+
6288
+ Example::
6289
+
6290
+ # The code below shows an example of how to instantiate this type.
6291
+ # The values are placeholders you should change.
6292
+ from aws_cdk import aws_ec2 as ec2
6293
+
6294
+ commitment_info_property = ec2.CfnCapacityReservation.CommitmentInfoProperty(
6295
+ commitment_end_date="commitmentEndDate",
6296
+ committed_instance_count=123
6297
+ )
6298
+ '''
6299
+ if __debug__:
6300
+ type_hints = typing.get_type_hints(_typecheckingstub__3c56a4c8d14f2a52b13c3cf61a95ca1ca01e35305d2313a0778cf6fad31ac4ef)
6301
+ check_type(argname="argument commitment_end_date", value=commitment_end_date, expected_type=type_hints["commitment_end_date"])
6302
+ check_type(argname="argument committed_instance_count", value=committed_instance_count, expected_type=type_hints["committed_instance_count"])
6303
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
6304
+ if commitment_end_date is not None:
6305
+ self._values["commitment_end_date"] = commitment_end_date
6306
+ if committed_instance_count is not None:
6307
+ self._values["committed_instance_count"] = committed_instance_count
6308
+
6309
+ @builtins.property
6310
+ def commitment_end_date(self) -> typing.Optional[builtins.str]:
6311
+ '''The date and time at which the commitment duration expires, in the ISO8601 format in the UTC time zone ( ``YYYY-MM-DDThh:mm:ss.sssZ`` ). You can't decrease the instance count or cancel the Capacity Reservation before this date and time.
6312
+
6313
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-commitmentinfo.html#cfn-ec2-capacityreservation-commitmentinfo-commitmentenddate
6314
+ '''
6315
+ result = self._values.get("commitment_end_date")
6316
+ return typing.cast(typing.Optional[builtins.str], result)
6317
+
6318
+ @builtins.property
6319
+ def committed_instance_count(self) -> typing.Optional[jsii.Number]:
6320
+ '''The instance capacity that you committed to when you requested the future-dated Capacity Reservation.
6321
+
6322
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-capacityreservation-commitmentinfo.html#cfn-ec2-capacityreservation-commitmentinfo-committedinstancecount
6323
+ '''
6324
+ result = self._values.get("committed_instance_count")
6325
+ return typing.cast(typing.Optional[jsii.Number], result)
6326
+
6327
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6328
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6329
+
6330
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6331
+ return not (rhs == self)
6332
+
6333
+ def __repr__(self) -> str:
6334
+ return "CommitmentInfoProperty(%s)" % ", ".join(
6335
+ k + "=" + repr(v) for k, v in self._values.items()
6336
+ )
6337
+
6065
6338
  @jsii.data_type(
6066
6339
  jsii_type="aws-cdk-lib.aws_ec2.CfnCapacityReservation.TagSpecificationProperty",
6067
6340
  jsii_struct_bases=[],
@@ -12138,7 +12411,7 @@ class CfnEC2Fleet(
12138
12411
  :param accelerator_manufacturers: Indicates whether instance types must have accelerators by specific manufacturers. - For instance types with AWS devices, specify ``amazon-web-services`` . - For instance types with AMD devices, specify ``amd`` . - For instance types with Habana devices, specify ``habana`` . - For instance types with NVIDIA devices, specify ``nvidia`` . - For instance types with Xilinx devices, specify ``xilinx`` . Default: Any manufacturer
12139
12412
  :param accelerator_names: The accelerators that must be on the instance type. - For instance types with NVIDIA A10G GPUs, specify ``a10g`` . - For instance types with NVIDIA A100 GPUs, specify ``a100`` . - For instance types with NVIDIA H100 GPUs, specify ``h100`` . - For instance types with AWS Inferentia chips, specify ``inferentia`` . - For instance types with NVIDIA GRID K520 GPUs, specify ``k520`` . - For instance types with NVIDIA K80 GPUs, specify ``k80`` . - For instance types with NVIDIA M60 GPUs, specify ``m60`` . - For instance types with AMD Radeon Pro V520 GPUs, specify ``radeon-pro-v520`` . - For instance types with NVIDIA T4 GPUs, specify ``t4`` . - For instance types with NVIDIA T4G GPUs, specify ``t4g`` . - For instance types with Xilinx VU9P FPGAs, specify ``vu9p`` . - For instance types with NVIDIA V100 GPUs, specify ``v100`` . Default: Any accelerator
12140
12413
  :param accelerator_total_memory_mib: The minimum and maximum amount of total accelerator memory, in MiB. Default: No minimum or maximum limits
12141
- :param accelerator_types: The accelerator types that must be on the instance type. - For instance types with FPGA accelerators, specify ``fpga`` . - For instance types with GPU accelerators, specify ``gpu`` . - For instance types with Inference accelerators, specify ``inference`` . Default: Any accelerator type
12414
+ :param accelerator_types: The accelerator types that must be on the instance type. - For instance types with FPGA accelerators, specify ``fpga`` . - For instance types with GPU accelerators, specify ``gpu`` . Default: Any accelerator type
12142
12415
  :param allowed_instance_types: The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk ( ``*`` ), to allow an instance type, size, or generation. The following are examples: ``m5.8xlarge`` , ``c5*.*`` , ``m5a.*`` , ``r*`` , ``*3*`` . For example, if you specify ``c5*`` ,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*`` , Amazon EC2 will allow all the M5a instance types, but not the M5n instance types. .. epigraph:: If you specify ``AllowedInstanceTypes`` , you can't specify ``ExcludedInstanceTypes`` . Default: All instance types
12143
12416
  :param bare_metal: Indicates whether bare metal instance types must be included, excluded, or required. - To include bare metal instance types, specify ``included`` . - To require only bare metal instance types, specify ``required`` . - To exclude bare metal instance types, specify ``excluded`` . Default: ``excluded``
12144
12417
  :param baseline_ebs_bandwidth_mbps: The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see `Amazon EBS–optimized instances <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html>`_ in the *Amazon EC2 User Guide* . Default: No minimum or maximum limits
@@ -12386,7 +12659,6 @@ class CfnEC2Fleet(
12386
12659
 
12387
12660
  - For instance types with FPGA accelerators, specify ``fpga`` .
12388
12661
  - For instance types with GPU accelerators, specify ``gpu`` .
12389
- - For instance types with Inference accelerators, specify ``inference`` .
12390
12662
 
12391
12663
  Default: Any accelerator type
12392
12664
 
@@ -26531,7 +26803,7 @@ class CfnLaunchTemplate(
26531
26803
  :param accelerator_manufacturers: Indicates whether instance types must have accelerators by specific manufacturers. - For instance types with AWS devices, specify ``amazon-web-services`` . - For instance types with AMD devices, specify ``amd`` . - For instance types with Habana devices, specify ``habana`` . - For instance types with NVIDIA devices, specify ``nvidia`` . - For instance types with Xilinx devices, specify ``xilinx`` . Default: Any manufacturer
26532
26804
  :param accelerator_names: The accelerators that must be on the instance type. - For instance types with NVIDIA A10G GPUs, specify ``a10g`` . - For instance types with NVIDIA A100 GPUs, specify ``a100`` . - For instance types with NVIDIA H100 GPUs, specify ``h100`` . - For instance types with AWS Inferentia chips, specify ``inferentia`` . - For instance types with NVIDIA GRID K520 GPUs, specify ``k520`` . - For instance types with NVIDIA K80 GPUs, specify ``k80`` . - For instance types with NVIDIA M60 GPUs, specify ``m60`` . - For instance types with AMD Radeon Pro V520 GPUs, specify ``radeon-pro-v520`` . - For instance types with NVIDIA T4 GPUs, specify ``t4`` . - For instance types with NVIDIA T4G GPUs, specify ``t4g`` . - For instance types with Xilinx VU9P FPGAs, specify ``vu9p`` . - For instance types with NVIDIA V100 GPUs, specify ``v100`` . Default: Any accelerator
26533
26805
  :param accelerator_total_memory_mib: The minimum and maximum amount of total accelerator memory, in MiB. Default: No minimum or maximum limits
26534
- :param accelerator_types: The accelerator types that must be on the instance type. - For instance types with FPGA accelerators, specify ``fpga`` . - For instance types with GPU accelerators, specify ``gpu`` . - For instance types with Inference accelerators, specify ``inference`` . Default: Any accelerator type
26806
+ :param accelerator_types: The accelerator types that must be on the instance type. - For instance types with FPGA accelerators, specify ``fpga`` . - For instance types with GPU accelerators, specify ``gpu`` . Default: Any accelerator type
26535
26807
  :param allowed_instance_types: The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk ( ``*`` ), to allow an instance type, size, or generation. The following are examples: ``m5.8xlarge`` , ``c5*.*`` , ``m5a.*`` , ``r*`` , ``*3*`` . For example, if you specify ``c5*`` ,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*`` , Amazon EC2 will allow all the M5a instance types, but not the M5n instance types. .. epigraph:: If you specify ``AllowedInstanceTypes`` , you can't specify ``ExcludedInstanceTypes`` . Default: All instance types
26536
26808
  :param bare_metal: Indicates whether bare metal instance types must be included, excluded, or required. - To include bare metal instance types, specify ``included`` . - To require only bare metal instance types, specify ``required`` . - To exclude bare metal instance types, specify ``excluded`` . Default: ``excluded``
26537
26809
  :param baseline_ebs_bandwidth_mbps: The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see `Amazon EBS–optimized instances <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html>`_ in the *Amazon EC2 User Guide* . Default: No minimum or maximum limits
@@ -26779,7 +27051,6 @@ class CfnLaunchTemplate(
26779
27051
 
26780
27052
  - For instance types with FPGA accelerators, specify ``fpga`` .
26781
27053
  - For instance types with GPU accelerators, specify ``gpu`` .
26782
- - For instance types with Inference accelerators, specify ``inference`` .
26783
27054
 
26784
27055
  Default: Any accelerator type
26785
27056
 
@@ -29428,8 +29699,9 @@ class CfnLaunchTemplate(
29428
29699
  *,
29429
29700
  bandwidth_weighting: typing.Optional[builtins.str] = None,
29430
29701
  ) -> None:
29431
- '''
29432
- :param bandwidth_weighting: Specifies the performance options of your instance or sets it to default.
29702
+ '''Contains settings for the network performance options for the instance.
29703
+
29704
+ :param bandwidth_weighting: Specify the bandwidth weighting option to boost the associated type of baseline bandwidth, as follows:. - **default** - This option uses the standard bandwidth configuration for your instance type. - **vpc-1** - This option boosts your networking baseline bandwidth and reduces your EBS baseline bandwidth. - **ebs-1** - This option boosts your EBS baseline bandwidth and reduces your networking baseline bandwidth.
29433
29705
 
29434
29706
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkperformanceoptions.html
29435
29707
  :exampleMetadata: fixture=_generated
@@ -29453,7 +29725,11 @@ class CfnLaunchTemplate(
29453
29725
 
29454
29726
  @builtins.property
29455
29727
  def bandwidth_weighting(self) -> typing.Optional[builtins.str]:
29456
- '''Specifies the performance options of your instance or sets it to default.
29728
+ '''Specify the bandwidth weighting option to boost the associated type of baseline bandwidth, as follows:.
29729
+
29730
+ - **default** - This option uses the standard bandwidth configuration for your instance type.
29731
+ - **vpc-1** - This option boosts your networking baseline bandwidth and reduces your EBS baseline bandwidth.
29732
+ - **ebs-1** - This option boosts your EBS baseline bandwidth and reduces your networking baseline bandwidth.
29457
29733
 
29458
29734
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkperformanceoptions.html#cfn-ec2-launchtemplate-networkperformanceoptions-bandwidthweighting
29459
29735
  '''
@@ -45922,7 +46198,7 @@ class CfnSpotFleet(
45922
46198
  :param accelerator_manufacturers: Indicates whether instance types must have accelerators by specific manufacturers. - For instance types with AWS devices, specify ``amazon-web-services`` . - For instance types with AMD devices, specify ``amd`` . - For instance types with Habana devices, specify ``habana`` . - For instance types with NVIDIA devices, specify ``nvidia`` . - For instance types with Xilinx devices, specify ``xilinx`` . Default: Any manufacturer
45923
46199
  :param accelerator_names: The accelerators that must be on the instance type. - For instance types with NVIDIA A10G GPUs, specify ``a10g`` . - For instance types with NVIDIA A100 GPUs, specify ``a100`` . - For instance types with NVIDIA H100 GPUs, specify ``h100`` . - For instance types with AWS Inferentia chips, specify ``inferentia`` . - For instance types with NVIDIA GRID K520 GPUs, specify ``k520`` . - For instance types with NVIDIA K80 GPUs, specify ``k80`` . - For instance types with NVIDIA M60 GPUs, specify ``m60`` . - For instance types with AMD Radeon Pro V520 GPUs, specify ``radeon-pro-v520`` . - For instance types with NVIDIA T4 GPUs, specify ``t4`` . - For instance types with NVIDIA T4G GPUs, specify ``t4g`` . - For instance types with Xilinx VU9P FPGAs, specify ``vu9p`` . - For instance types with NVIDIA V100 GPUs, specify ``v100`` . Default: Any accelerator
45924
46200
  :param accelerator_total_memory_mib: The minimum and maximum amount of total accelerator memory, in MiB. Default: No minimum or maximum limits
45925
- :param accelerator_types: The accelerator types that must be on the instance type. - For instance types with FPGA accelerators, specify ``fpga`` . - For instance types with GPU accelerators, specify ``gpu`` . - For instance types with Inference accelerators, specify ``inference`` . Default: Any accelerator type
46201
+ :param accelerator_types: The accelerator types that must be on the instance type. - For instance types with FPGA accelerators, specify ``fpga`` . - For instance types with GPU accelerators, specify ``gpu`` . Default: Any accelerator type
45926
46202
  :param allowed_instance_types: The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk ( ``*`` ), to allow an instance type, size, or generation. The following are examples: ``m5.8xlarge`` , ``c5*.*`` , ``m5a.*`` , ``r*`` , ``*3*`` . For example, if you specify ``c5*`` ,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify ``m5a.*`` , Amazon EC2 will allow all the M5a instance types, but not the M5n instance types. .. epigraph:: If you specify ``AllowedInstanceTypes`` , you can't specify ``ExcludedInstanceTypes`` . Default: All instance types
45927
46203
  :param bare_metal: Indicates whether bare metal instance types must be included, excluded, or required. - To include bare metal instance types, specify ``included`` . - To require only bare metal instance types, specify ``required`` . - To exclude bare metal instance types, specify ``excluded`` . Default: ``excluded``
45928
46204
  :param baseline_ebs_bandwidth_mbps: The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see `Amazon EBS–optimized instances <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html>`_ in the *Amazon EC2 User Guide* . Default: No minimum or maximum limits
@@ -46170,7 +46446,6 @@ class CfnSpotFleet(
46170
46446
 
46171
46447
  - For instance types with FPGA accelerators, specify ``fpga`` .
46172
46448
  - For instance types with GPU accelerators, specify ``gpu`` .
46173
- - For instance types with Inference accelerators, specify ``inference`` .
46174
46449
 
46175
46450
  Default: Any accelerator type
46176
46451
 
@@ -59710,6 +59985,7 @@ class CfnVPCEndpointService(
59710
59985
  network_load_balancer_arns=["networkLoadBalancerArns"],
59711
59986
  payer_responsibility="payerResponsibility",
59712
59987
  supported_ip_address_types=["supportedIpAddressTypes"],
59988
+ supported_regions=["supportedRegions"],
59713
59989
  tags=[CfnTag(
59714
59990
  key="key",
59715
59991
  value="value"
@@ -59728,6 +60004,7 @@ class CfnVPCEndpointService(
59728
60004
  network_load_balancer_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
59729
60005
  payer_responsibility: typing.Optional[builtins.str] = None,
59730
60006
  supported_ip_address_types: typing.Optional[typing.Sequence[builtins.str]] = None,
60007
+ supported_regions: typing.Optional[typing.Sequence[builtins.str]] = None,
59731
60008
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
59732
60009
  ) -> None:
59733
60010
  '''
@@ -59738,7 +60015,8 @@ class CfnVPCEndpointService(
59738
60015
  :param gateway_load_balancer_arns: The Amazon Resource Names (ARNs) of the Gateway Load Balancers.
59739
60016
  :param network_load_balancer_arns: The Amazon Resource Names (ARNs) of the Network Load Balancers.
59740
60017
  :param payer_responsibility: The entity that is responsible for the endpoint costs. The default is the endpoint owner. If you set the payer responsibility to the service owner, you cannot set it back to the endpoint owner.
59741
- :param supported_ip_address_types: Specify which Ip Address types are supported for VPC endpoint service.
60018
+ :param supported_ip_address_types: The supported IP address types. The possible values are ``ipv4`` and ``ipv6`` .
60019
+ :param supported_regions: The Regions from which service consumers can access the service.
59742
60020
  :param tags: The tags to associate with the service.
59743
60021
  '''
59744
60022
  if __debug__:
@@ -59752,6 +60030,7 @@ class CfnVPCEndpointService(
59752
60030
  network_load_balancer_arns=network_load_balancer_arns,
59753
60031
  payer_responsibility=payer_responsibility,
59754
60032
  supported_ip_address_types=supported_ip_address_types,
60033
+ supported_regions=supported_regions,
59755
60034
  tags=tags,
59756
60035
  )
59757
60036
 
@@ -59891,7 +60170,7 @@ class CfnVPCEndpointService(
59891
60170
  @builtins.property
59892
60171
  @jsii.member(jsii_name="supportedIpAddressTypes")
59893
60172
  def supported_ip_address_types(self) -> typing.Optional[typing.List[builtins.str]]:
59894
- '''Specify which Ip Address types are supported for VPC endpoint service.'''
60173
+ '''The supported IP address types.'''
59895
60174
  return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "supportedIpAddressTypes"))
59896
60175
 
59897
60176
  @supported_ip_address_types.setter
@@ -59904,6 +60183,22 @@ class CfnVPCEndpointService(
59904
60183
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
59905
60184
  jsii.set(self, "supportedIpAddressTypes", value) # pyright: ignore[reportArgumentType]
59906
60185
 
60186
+ @builtins.property
60187
+ @jsii.member(jsii_name="supportedRegions")
60188
+ def supported_regions(self) -> typing.Optional[typing.List[builtins.str]]:
60189
+ '''The Regions from which service consumers can access the service.'''
60190
+ return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "supportedRegions"))
60191
+
60192
+ @supported_regions.setter
60193
+ def supported_regions(
60194
+ self,
60195
+ value: typing.Optional[typing.List[builtins.str]],
60196
+ ) -> None:
60197
+ if __debug__:
60198
+ type_hints = typing.get_type_hints(_typecheckingstub__5c4b6c5e3132a3db9ac1919f84f1acb15ff2a21f1f6ba6d102fb4c3ec4c36bc2)
60199
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
60200
+ jsii.set(self, "supportedRegions", value) # pyright: ignore[reportArgumentType]
60201
+
59907
60202
  @builtins.property
59908
60203
  @jsii.member(jsii_name="tags")
59909
60204
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
@@ -60124,6 +60419,7 @@ class CfnVPCEndpointServicePermissionsProps:
60124
60419
  "network_load_balancer_arns": "networkLoadBalancerArns",
60125
60420
  "payer_responsibility": "payerResponsibility",
60126
60421
  "supported_ip_address_types": "supportedIpAddressTypes",
60422
+ "supported_regions": "supportedRegions",
60127
60423
  "tags": "tags",
60128
60424
  },
60129
60425
  )
@@ -60137,6 +60433,7 @@ class CfnVPCEndpointServiceProps:
60137
60433
  network_load_balancer_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
60138
60434
  payer_responsibility: typing.Optional[builtins.str] = None,
60139
60435
  supported_ip_address_types: typing.Optional[typing.Sequence[builtins.str]] = None,
60436
+ supported_regions: typing.Optional[typing.Sequence[builtins.str]] = None,
60140
60437
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
60141
60438
  ) -> None:
60142
60439
  '''Properties for defining a ``CfnVPCEndpointService``.
@@ -60146,7 +60443,8 @@ class CfnVPCEndpointServiceProps:
60146
60443
  :param gateway_load_balancer_arns: The Amazon Resource Names (ARNs) of the Gateway Load Balancers.
60147
60444
  :param network_load_balancer_arns: The Amazon Resource Names (ARNs) of the Network Load Balancers.
60148
60445
  :param payer_responsibility: The entity that is responsible for the endpoint costs. The default is the endpoint owner. If you set the payer responsibility to the service owner, you cannot set it back to the endpoint owner.
60149
- :param supported_ip_address_types: Specify which Ip Address types are supported for VPC endpoint service.
60446
+ :param supported_ip_address_types: The supported IP address types. The possible values are ``ipv4`` and ``ipv6`` .
60447
+ :param supported_regions: The Regions from which service consumers can access the service.
60150
60448
  :param tags: The tags to associate with the service.
60151
60449
 
60152
60450
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html
@@ -60165,6 +60463,7 @@ class CfnVPCEndpointServiceProps:
60165
60463
  network_load_balancer_arns=["networkLoadBalancerArns"],
60166
60464
  payer_responsibility="payerResponsibility",
60167
60465
  supported_ip_address_types=["supportedIpAddressTypes"],
60466
+ supported_regions=["supportedRegions"],
60168
60467
  tags=[CfnTag(
60169
60468
  key="key",
60170
60469
  value="value"
@@ -60179,6 +60478,7 @@ class CfnVPCEndpointServiceProps:
60179
60478
  check_type(argname="argument network_load_balancer_arns", value=network_load_balancer_arns, expected_type=type_hints["network_load_balancer_arns"])
60180
60479
  check_type(argname="argument payer_responsibility", value=payer_responsibility, expected_type=type_hints["payer_responsibility"])
60181
60480
  check_type(argname="argument supported_ip_address_types", value=supported_ip_address_types, expected_type=type_hints["supported_ip_address_types"])
60481
+ check_type(argname="argument supported_regions", value=supported_regions, expected_type=type_hints["supported_regions"])
60182
60482
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
60183
60483
  self._values: typing.Dict[builtins.str, typing.Any] = {}
60184
60484
  if acceptance_required is not None:
@@ -60193,6 +60493,8 @@ class CfnVPCEndpointServiceProps:
60193
60493
  self._values["payer_responsibility"] = payer_responsibility
60194
60494
  if supported_ip_address_types is not None:
60195
60495
  self._values["supported_ip_address_types"] = supported_ip_address_types
60496
+ if supported_regions is not None:
60497
+ self._values["supported_regions"] = supported_regions
60196
60498
  if tags is not None:
60197
60499
  self._values["tags"] = tags
60198
60500
 
@@ -60249,13 +60551,24 @@ class CfnVPCEndpointServiceProps:
60249
60551
 
60250
60552
  @builtins.property
60251
60553
  def supported_ip_address_types(self) -> typing.Optional[typing.List[builtins.str]]:
60252
- '''Specify which Ip Address types are supported for VPC endpoint service.
60554
+ '''The supported IP address types.
60555
+
60556
+ The possible values are ``ipv4`` and ``ipv6`` .
60253
60557
 
60254
60558
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html#cfn-ec2-vpcendpointservice-supportedipaddresstypes
60255
60559
  '''
60256
60560
  result = self._values.get("supported_ip_address_types")
60257
60561
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
60258
60562
 
60563
+ @builtins.property
60564
+ def supported_regions(self) -> typing.Optional[typing.List[builtins.str]]:
60565
+ '''The Regions from which service consumers can access the service.
60566
+
60567
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpointservice.html#cfn-ec2-vpcendpointservice-supportedregions
60568
+ '''
60569
+ result = self._values.get("supported_regions")
60570
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
60571
+
60259
60572
  @builtins.property
60260
60573
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
60261
60574
  '''The tags to associate with the service.
@@ -70687,6 +71000,12 @@ class DefaultInstanceTenancy(enum.Enum):
70687
71000
  '''Instances can be launched with any tenancy.'''
70688
71001
  DEDICATED = "DEDICATED"
70689
71002
  '''Any instance launched into the VPC automatically has dedicated tenancy, unless you launch it with the default tenancy.'''
71003
+ HOST = "HOST"
71004
+ '''Instances must be launched on dedicated hosts.
71005
+
71006
+ This provides additional visibility
71007
+ and control over instance placement at the physical host level.
71008
+ '''
70690
71009
 
70691
71010
 
70692
71011
  @jsii.data_type(
@@ -81439,6 +81758,31 @@ class InterfaceVpcEndpointService(
81439
81758
  return typing.cast(typing.Optional[builtins.bool], jsii.get(self, "privateDnsDefault"))
81440
81759
 
81441
81760
 
81761
+ @jsii.enum(jsii_type="aws-cdk-lib.aws_ec2.IpAddressType")
81762
+ class IpAddressType(enum.Enum):
81763
+ '''IP address types supported for VPC endpoint service.
81764
+
81765
+ :exampleMetadata: infused
81766
+
81767
+ Example::
81768
+
81769
+ # network_load_balancer: elbv2.NetworkLoadBalancer
81770
+
81771
+
81772
+ ec2.VpcEndpointService(self, "EndpointService",
81773
+ vpc_endpoint_service_load_balancers=[network_load_balancer],
81774
+ # Support both IPv4 and IPv6 connections to the endpoint service
81775
+ supported_ip_address_types=[ec2.IpAddressType.IPV4, ec2.IpAddressType.IPV6
81776
+ ]
81777
+ )
81778
+ '''
81779
+
81780
+ IPV4 = "IPV4"
81781
+ '''ipv4 address type.'''
81782
+ IPV6 = "IPV6"
81783
+ '''ipv6 address type.'''
81784
+
81785
+
81442
81786
  class IpAddresses(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_ec2.IpAddresses"):
81443
81787
  '''An abstract Provider of IpAddresses.
81444
81788
 
@@ -85958,17 +86302,20 @@ class Peer(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_ec2.Peer"):
85958
86302
 
85959
86303
  Example::
85960
86304
 
85961
- # instance_type: ec2.InstanceType
85962
-
86305
+ # vpc: ec2.Vpc
85963
86306
 
85964
- provider = ec2.NatProvider.instance_v2(
85965
- instance_type=instance_type,
85966
- default_allowed_traffic=ec2.NatTrafficDirection.OUTBOUND_ONLY
85967
- )
85968
- ec2.Vpc(self, "TheVPC",
85969
- nat_gateway_provider=provider
86307
+ cluster = msk.Cluster(self, "Cluster",
86308
+ cluster_name="myCluster",
86309
+ kafka_version=msk.KafkaVersion.V3_8_X,
86310
+ vpc=vpc
85970
86311
  )
85971
- provider.connections.allow_from(ec2.Peer.ipv4("1.2.3.4/8"), ec2.Port.HTTP)
86312
+
86313
+ cluster.connections.allow_from(
86314
+ ec2.Peer.ipv4("1.2.3.4/8"),
86315
+ ec2.Port.tcp(2181))
86316
+ cluster.connections.allow_from(
86317
+ ec2.Peer.ipv4("1.2.3.4/8"),
86318
+ ec2.Port.tcp(9094))
85972
86319
  '''
85973
86320
 
85974
86321
  def __init__(self) -> None:
@@ -86752,8 +87099,8 @@ class PrefixList(
86752
87099
 
86753
87100
  Example::
86754
87101
 
86755
- ec2.PrefixList(self, "EmptyPrefixList",
86756
- max_entries=100
87102
+ ec2.PrefixList.from_lookup(self, "PrefixListFromName",
87103
+ prefix_list_name="com.amazonaws.global.cloudfront.origin-facing"
86757
87104
  )
86758
87105
  '''
86759
87106
 
@@ -86788,6 +87135,37 @@ class PrefixList(
86788
87135
 
86789
87136
  jsii.create(self.__class__, self, [scope, id, props])
86790
87137
 
87138
+ @jsii.member(jsii_name="fromLookup")
87139
+ @builtins.classmethod
87140
+ def from_lookup(
87141
+ cls,
87142
+ scope: _constructs_77d1e7e8.Construct,
87143
+ id: builtins.str,
87144
+ *,
87145
+ prefix_list_name: builtins.str,
87146
+ address_family: typing.Optional[AddressFamily] = None,
87147
+ owner_id: typing.Optional[builtins.str] = None,
87148
+ ) -> IPrefixList:
87149
+ '''Look up prefix list by name.
87150
+
87151
+ :param scope: -
87152
+ :param id: -
87153
+ :param prefix_list_name: The name of the managed prefix list.
87154
+ :param address_family: The address family of the managed prefix list. Default: - Don't filter on addressFamily
87155
+ :param owner_id: The ID of the AWS account that owns the managed prefix list. Default: - Don't filter on ownerId
87156
+ '''
87157
+ if __debug__:
87158
+ type_hints = typing.get_type_hints(_typecheckingstub__deb5818afac672a99613bc37d186a04e6a9cd2bae585fd43a7bbbe7b2c4de0e6)
87159
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
87160
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
87161
+ options = PrefixListLookupOptions(
87162
+ prefix_list_name=prefix_list_name,
87163
+ address_family=address_family,
87164
+ owner_id=owner_id,
87165
+ )
87166
+
87167
+ return typing.cast(IPrefixList, jsii.sinvoke(cls, "fromLookup", [scope, id, options]))
87168
+
86791
87169
  @jsii.member(jsii_name="fromPrefixListId")
86792
87170
  @builtins.classmethod
86793
87171
  def from_prefix_list_id(
@@ -86855,6 +87233,91 @@ class PrefixList(
86855
87233
  return typing.cast(jsii.Number, jsii.get(self, "version"))
86856
87234
 
86857
87235
 
87236
+ @jsii.data_type(
87237
+ jsii_type="aws-cdk-lib.aws_ec2.PrefixListLookupOptions",
87238
+ jsii_struct_bases=[],
87239
+ name_mapping={
87240
+ "prefix_list_name": "prefixListName",
87241
+ "address_family": "addressFamily",
87242
+ "owner_id": "ownerId",
87243
+ },
87244
+ )
87245
+ class PrefixListLookupOptions:
87246
+ def __init__(
87247
+ self,
87248
+ *,
87249
+ prefix_list_name: builtins.str,
87250
+ address_family: typing.Optional[AddressFamily] = None,
87251
+ owner_id: typing.Optional[builtins.str] = None,
87252
+ ) -> None:
87253
+ '''Properties for looking up an existing managed prefix list.
87254
+
87255
+ :param prefix_list_name: The name of the managed prefix list.
87256
+ :param address_family: The address family of the managed prefix list. Default: - Don't filter on addressFamily
87257
+ :param owner_id: The ID of the AWS account that owns the managed prefix list. Default: - Don't filter on ownerId
87258
+
87259
+ :exampleMetadata: infused
87260
+
87261
+ Example::
87262
+
87263
+ # alb: elbv2.ApplicationLoadBalancer
87264
+
87265
+
87266
+ cf_origin_facing = ec2.PrefixList.from_lookup(self, "CloudFrontOriginFacing",
87267
+ prefix_list_name="com.amazonaws.global.cloudfront.origin-facing"
87268
+ )
87269
+ alb.connections.allow_from(ec2.Peer.prefix_list(cf_origin_facing.prefix_list_id), ec2.Port.HTTP)
87270
+ '''
87271
+ if __debug__:
87272
+ type_hints = typing.get_type_hints(_typecheckingstub__4353f67b97f73eaeb1fbd94df299a14d0727dbc31a3319f8619e9b6d60f5c1bb)
87273
+ check_type(argname="argument prefix_list_name", value=prefix_list_name, expected_type=type_hints["prefix_list_name"])
87274
+ check_type(argname="argument address_family", value=address_family, expected_type=type_hints["address_family"])
87275
+ check_type(argname="argument owner_id", value=owner_id, expected_type=type_hints["owner_id"])
87276
+ self._values: typing.Dict[builtins.str, typing.Any] = {
87277
+ "prefix_list_name": prefix_list_name,
87278
+ }
87279
+ if address_family is not None:
87280
+ self._values["address_family"] = address_family
87281
+ if owner_id is not None:
87282
+ self._values["owner_id"] = owner_id
87283
+
87284
+ @builtins.property
87285
+ def prefix_list_name(self) -> builtins.str:
87286
+ '''The name of the managed prefix list.'''
87287
+ result = self._values.get("prefix_list_name")
87288
+ assert result is not None, "Required property 'prefix_list_name' is missing"
87289
+ return typing.cast(builtins.str, result)
87290
+
87291
+ @builtins.property
87292
+ def address_family(self) -> typing.Optional[AddressFamily]:
87293
+ '''The address family of the managed prefix list.
87294
+
87295
+ :default: - Don't filter on addressFamily
87296
+ '''
87297
+ result = self._values.get("address_family")
87298
+ return typing.cast(typing.Optional[AddressFamily], result)
87299
+
87300
+ @builtins.property
87301
+ def owner_id(self) -> typing.Optional[builtins.str]:
87302
+ '''The ID of the AWS account that owns the managed prefix list.
87303
+
87304
+ :default: - Don't filter on ownerId
87305
+ '''
87306
+ result = self._values.get("owner_id")
87307
+ return typing.cast(typing.Optional[builtins.str], result)
87308
+
87309
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
87310
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
87311
+
87312
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
87313
+ return not (rhs == self)
87314
+
87315
+ def __repr__(self) -> str:
87316
+ return "PrefixListLookupOptions(%s)" % ", ".join(
87317
+ k + "=" + repr(v) for k, v in self._values.items()
87318
+ )
87319
+
87320
+
86858
87321
  @jsii.data_type(
86859
87322
  jsii_type="aws-cdk-lib.aws_ec2.PrefixListOptions",
86860
87323
  jsii_struct_bases=[],
@@ -92260,6 +92723,7 @@ class VpcEndpointService(
92260
92723
  acceptance_required: typing.Optional[builtins.bool] = None,
92261
92724
  allowed_principals: typing.Optional[typing.Sequence[_ArnPrincipal_d31ca6bc]] = None,
92262
92725
  contributor_insights: typing.Optional[builtins.bool] = None,
92726
+ supported_ip_address_types: typing.Optional[typing.Sequence[IpAddressType]] = None,
92263
92727
  ) -> None:
92264
92728
  '''
92265
92729
  :param scope: -
@@ -92268,6 +92732,7 @@ class VpcEndpointService(
92268
92732
  :param acceptance_required: Whether requests from service consumers to connect to the service through an endpoint must be accepted. Default: true
92269
92733
  :param allowed_principals: IAM users, IAM roles, or AWS accounts to allow inbound connections from. These principals can connect to your service using VPC endpoints. Takes a list of one or more ArnPrincipal. Default: - no principals
92270
92734
  :param contributor_insights: Indicates whether to enable the built-in Contributor Insights rules provided by AWS PrivateLink. Default: false
92735
+ :param supported_ip_address_types: Specify which IP address types are supported for VPC endpoint service. Default: - No specific IP address types configured
92271
92736
  '''
92272
92737
  if __debug__:
92273
92738
  type_hints = typing.get_type_hints(_typecheckingstub__e9a177a308c941d9422cff7194d8a56d967004d3230efd826dc934ef5358129e)
@@ -92278,6 +92743,7 @@ class VpcEndpointService(
92278
92743
  acceptance_required=acceptance_required,
92279
92744
  allowed_principals=allowed_principals,
92280
92745
  contributor_insights=contributor_insights,
92746
+ supported_ip_address_types=supported_ip_address_types,
92281
92747
  )
92282
92748
 
92283
92749
  jsii.create(self.__class__, self, [scope, id, props])
@@ -92344,6 +92810,7 @@ class VpcEndpointService(
92344
92810
  "acceptance_required": "acceptanceRequired",
92345
92811
  "allowed_principals": "allowedPrincipals",
92346
92812
  "contributor_insights": "contributorInsights",
92813
+ "supported_ip_address_types": "supportedIpAddressTypes",
92347
92814
  },
92348
92815
  )
92349
92816
  class VpcEndpointServiceProps:
@@ -92354,6 +92821,7 @@ class VpcEndpointServiceProps:
92354
92821
  acceptance_required: typing.Optional[builtins.bool] = None,
92355
92822
  allowed_principals: typing.Optional[typing.Sequence[_ArnPrincipal_d31ca6bc]] = None,
92356
92823
  contributor_insights: typing.Optional[builtins.bool] = None,
92824
+ supported_ip_address_types: typing.Optional[typing.Sequence[IpAddressType]] = None,
92357
92825
  ) -> None:
92358
92826
  '''Construction properties for a VpcEndpointService.
92359
92827
 
@@ -92361,6 +92829,7 @@ class VpcEndpointServiceProps:
92361
92829
  :param acceptance_required: Whether requests from service consumers to connect to the service through an endpoint must be accepted. Default: true
92362
92830
  :param allowed_principals: IAM users, IAM roles, or AWS accounts to allow inbound connections from. These principals can connect to your service using VPC endpoints. Takes a list of one or more ArnPrincipal. Default: - no principals
92363
92831
  :param contributor_insights: Indicates whether to enable the built-in Contributor Insights rules provided by AWS PrivateLink. Default: false
92832
+ :param supported_ip_address_types: Specify which IP address types are supported for VPC endpoint service. Default: - No specific IP address types configured
92364
92833
 
92365
92834
  :exampleMetadata: infused
92366
92835
 
@@ -92383,6 +92852,7 @@ class VpcEndpointServiceProps:
92383
92852
  check_type(argname="argument acceptance_required", value=acceptance_required, expected_type=type_hints["acceptance_required"])
92384
92853
  check_type(argname="argument allowed_principals", value=allowed_principals, expected_type=type_hints["allowed_principals"])
92385
92854
  check_type(argname="argument contributor_insights", value=contributor_insights, expected_type=type_hints["contributor_insights"])
92855
+ check_type(argname="argument supported_ip_address_types", value=supported_ip_address_types, expected_type=type_hints["supported_ip_address_types"])
92386
92856
  self._values: typing.Dict[builtins.str, typing.Any] = {
92387
92857
  "vpc_endpoint_service_load_balancers": vpc_endpoint_service_load_balancers,
92388
92858
  }
@@ -92392,6 +92862,8 @@ class VpcEndpointServiceProps:
92392
92862
  self._values["allowed_principals"] = allowed_principals
92393
92863
  if contributor_insights is not None:
92394
92864
  self._values["contributor_insights"] = contributor_insights
92865
+ if supported_ip_address_types is not None:
92866
+ self._values["supported_ip_address_types"] = supported_ip_address_types
92395
92867
 
92396
92868
  @builtins.property
92397
92869
  def vpc_endpoint_service_load_balancers(
@@ -92434,6 +92906,15 @@ class VpcEndpointServiceProps:
92434
92906
  result = self._values.get("contributor_insights")
92435
92907
  return typing.cast(typing.Optional[builtins.bool], result)
92436
92908
 
92909
+ @builtins.property
92910
+ def supported_ip_address_types(self) -> typing.Optional[typing.List[IpAddressType]]:
92911
+ '''Specify which IP address types are supported for VPC endpoint service.
92912
+
92913
+ :default: - No specific IP address types configured
92914
+ '''
92915
+ result = self._values.get("supported_ip_address_types")
92916
+ return typing.cast(typing.Optional[typing.List[IpAddressType]], result)
92917
+
92437
92918
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
92438
92919
  return isinstance(rhs, self.__class__) and rhs._values == self._values
92439
92920
 
@@ -92463,6 +92944,12 @@ class VpcEndpointType(enum.Enum):
92463
92944
  A gateway endpoint is a gateway that is a target for a specified route in
92464
92945
  your route table, used for traffic destined to a supported AWS service.
92465
92946
  '''
92947
+ GATEWAYLOADBALANCER = "GATEWAYLOADBALANCER"
92948
+ '''A Gateway Load Balancer (GWLB) endpoint is an entry/exit point in your VPC that allows traffic to flow between your VPC and Gateway Load Balancer appliances (like firewalls, intrusion detection systems, or other security appliances) deployed in a separate VPC.'''
92949
+ SERVICENETWORK = "SERVICENETWORK"
92950
+ '''A ServiceNetwork VPC endpoint is a feature to connect your VPC to an AWS Cloud WAN (Wide Area Network) or Amazon VPC Lattice service.'''
92951
+ RESOURCE = "RESOURCE"
92952
+ '''A Resource VPC endpoint in AWS is specifically designed to connect to AWS Resource Access Manager (RAM) service privately within your VPC, without requiring access through the public internet.'''
92466
92953
 
92467
92954
 
92468
92955
  @jsii.data_type(
@@ -100211,6 +100698,7 @@ __all__ = [
100211
100698
  "InterfaceVpcEndpointOptions",
100212
100699
  "InterfaceVpcEndpointProps",
100213
100700
  "InterfaceVpcEndpointService",
100701
+ "IpAddressType",
100214
100702
  "IpAddresses",
100215
100703
  "IpProtocol",
100216
100704
  "Ipv6Addresses",
@@ -100260,6 +100748,7 @@ __all__ = [
100260
100748
  "Port",
100261
100749
  "PortProps",
100262
100750
  "PrefixList",
100751
+ "PrefixListLookupOptions",
100263
100752
  "PrefixListOptions",
100264
100753
  "PrefixListProps",
100265
100754
  "PrivateSubnet",
@@ -100728,6 +101217,22 @@ def _typecheckingstub__2a09cfe18a64a35ca3513da8b832d14a3961e5101708c3d59880377b4
100728
101217
  """Type checking stubs"""
100729
101218
  pass
100730
101219
 
101220
+ def _typecheckingstub__bb73541f409f83260eb045bf4e0e3879b1c1c509522736f018397f8ac1cf955c(
101221
+ *,
101222
+ allocation_type: typing.Optional[builtins.str] = None,
101223
+ count: typing.Optional[jsii.Number] = None,
101224
+ ) -> None:
101225
+ """Type checking stubs"""
101226
+ pass
101227
+
101228
+ def _typecheckingstub__3c56a4c8d14f2a52b13c3cf61a95ca1ca01e35305d2313a0778cf6fad31ac4ef(
101229
+ *,
101230
+ commitment_end_date: typing.Optional[builtins.str] = None,
101231
+ committed_instance_count: typing.Optional[jsii.Number] = None,
101232
+ ) -> None:
101233
+ """Type checking stubs"""
101234
+ pass
101235
+
100731
101236
  def _typecheckingstub__578daf872c6424406c4ac67bfb16e1a373fb40f41078950b64a62c991d0be846(
100732
101237
  *,
100733
101238
  resource_type: typing.Optional[builtins.str] = None,
@@ -108470,6 +108975,7 @@ def _typecheckingstub__bd65bb2d0beb1d62ef8b72a33a352ac48e00600bc2b025bdec06b82cf
108470
108975
  network_load_balancer_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
108471
108976
  payer_responsibility: typing.Optional[builtins.str] = None,
108472
108977
  supported_ip_address_types: typing.Optional[typing.Sequence[builtins.str]] = None,
108978
+ supported_regions: typing.Optional[typing.Sequence[builtins.str]] = None,
108473
108979
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
108474
108980
  ) -> None:
108475
108981
  """Type checking stubs"""
@@ -108523,6 +109029,12 @@ def _typecheckingstub__4f3f2000badada7fa5b32f7a5144ba0ad0a0da831f8211c47464b99d0
108523
109029
  """Type checking stubs"""
108524
109030
  pass
108525
109031
 
109032
+ def _typecheckingstub__5c4b6c5e3132a3db9ac1919f84f1acb15ff2a21f1f6ba6d102fb4c3ec4c36bc2(
109033
+ value: typing.Optional[typing.List[builtins.str]],
109034
+ ) -> None:
109035
+ """Type checking stubs"""
109036
+ pass
109037
+
108526
109038
  def _typecheckingstub__fb88e38ee31fea753761176490a0c4f49435705e0e51b6d055979684ea151b42(
108527
109039
  value: typing.Optional[typing.List[_CfnTag_f6864754]],
108528
109040
  ) -> None:
@@ -108579,6 +109091,7 @@ def _typecheckingstub__0924bdc7dd965ab8320d62e573fa88bcec434cb586b2ba9e4f2916169
108579
109091
  network_load_balancer_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
108580
109092
  payer_responsibility: typing.Optional[builtins.str] = None,
108581
109093
  supported_ip_address_types: typing.Optional[typing.Sequence[builtins.str]] = None,
109094
+ supported_regions: typing.Optional[typing.Sequence[builtins.str]] = None,
108582
109095
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
108583
109096
  ) -> None:
108584
109097
  """Type checking stubs"""
@@ -111569,6 +112082,17 @@ def _typecheckingstub__a8acc7e3b44d925ae96c4cd41872cf18233bdd11aba643610749ed9a4
111569
112082
  """Type checking stubs"""
111570
112083
  pass
111571
112084
 
112085
+ def _typecheckingstub__deb5818afac672a99613bc37d186a04e6a9cd2bae585fd43a7bbbe7b2c4de0e6(
112086
+ scope: _constructs_77d1e7e8.Construct,
112087
+ id: builtins.str,
112088
+ *,
112089
+ prefix_list_name: builtins.str,
112090
+ address_family: typing.Optional[AddressFamily] = None,
112091
+ owner_id: typing.Optional[builtins.str] = None,
112092
+ ) -> None:
112093
+ """Type checking stubs"""
112094
+ pass
112095
+
111572
112096
  def _typecheckingstub__11d084123507c2ab32a82e79ad64d9ff7d0962d3562cc06f04b8e900b3c6622b(
111573
112097
  scope: _constructs_77d1e7e8.Construct,
111574
112098
  id: builtins.str,
@@ -111577,6 +112101,15 @@ def _typecheckingstub__11d084123507c2ab32a82e79ad64d9ff7d0962d3562cc06f04b8e900b
111577
112101
  """Type checking stubs"""
111578
112102
  pass
111579
112103
 
112104
+ def _typecheckingstub__4353f67b97f73eaeb1fbd94df299a14d0727dbc31a3319f8619e9b6d60f5c1bb(
112105
+ *,
112106
+ prefix_list_name: builtins.str,
112107
+ address_family: typing.Optional[AddressFamily] = None,
112108
+ owner_id: typing.Optional[builtins.str] = None,
112109
+ ) -> None:
112110
+ """Type checking stubs"""
112111
+ pass
112112
+
111580
112113
  def _typecheckingstub__7cc34528909d71054422fc4b6e3439757c430d31f6f33a0af82b4c5b61e57e19(
111581
112114
  *,
111582
112115
  max_entries: typing.Optional[jsii.Number] = None,
@@ -112309,6 +112842,7 @@ def _typecheckingstub__e9a177a308c941d9422cff7194d8a56d967004d3230efd826dc934ef5
112309
112842
  acceptance_required: typing.Optional[builtins.bool] = None,
112310
112843
  allowed_principals: typing.Optional[typing.Sequence[_ArnPrincipal_d31ca6bc]] = None,
112311
112844
  contributor_insights: typing.Optional[builtins.bool] = None,
112845
+ supported_ip_address_types: typing.Optional[typing.Sequence[IpAddressType]] = None,
112312
112846
  ) -> None:
112313
112847
  """Type checking stubs"""
112314
112848
  pass
@@ -112319,6 +112853,7 @@ def _typecheckingstub__c8d3e17059165270b27192911c5b63d78564836ce9d6a1d2e41f5d272
112319
112853
  acceptance_required: typing.Optional[builtins.bool] = None,
112320
112854
  allowed_principals: typing.Optional[typing.Sequence[_ArnPrincipal_d31ca6bc]] = None,
112321
112855
  contributor_insights: typing.Optional[builtins.bool] = None,
112856
+ supported_ip_address_types: typing.Optional[typing.Sequence[IpAddressType]] = None,
112322
112857
  ) -> None:
112323
112858
  """Type checking stubs"""
112324
112859
  pass