aws-cdk-lib 2.162.1__py3-none-any.whl → 2.163.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 (59) hide show
  1. aws_cdk/__init__.py +5 -7
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.162.1.jsii.tgz → aws-cdk-lib@2.163.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_apigatewayv2/__init__.py +7 -7
  5. aws_cdk/aws_appflow/__init__.py +30 -16
  6. aws_cdk/aws_appsync/__init__.py +11 -21
  7. aws_cdk/aws_autoscaling/__init__.py +123 -0
  8. aws_cdk/aws_b2bi/__init__.py +83 -57
  9. aws_cdk/aws_cloudformation/__init__.py +5 -7
  10. aws_cdk/aws_codebuild/__init__.py +19 -40
  11. aws_cdk/aws_codepipeline/__init__.py +88 -7
  12. aws_cdk/aws_cognito/__init__.py +282 -168
  13. aws_cdk/aws_dms/__init__.py +1076 -117
  14. aws_cdk/aws_docdb/__init__.py +19 -13
  15. aws_cdk/aws_dynamodb/__init__.py +43 -22
  16. aws_cdk/aws_ec2/__init__.py +1213 -38
  17. aws_cdk/aws_ecs/__init__.py +187 -18
  18. aws_cdk/aws_ecs_patterns/__init__.py +189 -27
  19. aws_cdk/aws_efs/__init__.py +56 -37
  20. aws_cdk/aws_eks/__init__.py +6 -2
  21. aws_cdk/aws_elasticache/__init__.py +118 -118
  22. aws_cdk/aws_elasticloadbalancingv2/__init__.py +21 -1
  23. aws_cdk/aws_emr/__init__.py +124 -57
  24. aws_cdk/aws_events/__init__.py +40 -0
  25. aws_cdk/aws_fms/__init__.py +757 -8
  26. aws_cdk/aws_fsx/__init__.py +245 -10
  27. aws_cdk/aws_gamelift/__init__.py +121 -0
  28. aws_cdk/aws_glue/__init__.py +344 -61
  29. aws_cdk/aws_iam/__init__.py +44 -0
  30. aws_cdk/aws_identitystore/__init__.py +4 -2
  31. aws_cdk/aws_iot/__init__.py +40 -12
  32. aws_cdk/aws_kinesis/__init__.py +239 -0
  33. aws_cdk/aws_kms/__init__.py +92 -3
  34. aws_cdk/aws_lambda/__init__.py +2 -2
  35. aws_cdk/aws_mediapackagev2/__init__.py +26 -10
  36. aws_cdk/aws_memorydb/__init__.py +7 -7
  37. aws_cdk/aws_networkfirewall/__init__.py +89 -0
  38. aws_cdk/aws_qbusiness/__init__.py +51 -7
  39. aws_cdk/aws_quicksight/__init__.py +221 -87
  40. aws_cdk/aws_rds/__init__.py +376 -75
  41. aws_cdk/aws_redshift/__init__.py +493 -13
  42. aws_cdk/aws_route53profiles/__init__.py +4 -2
  43. aws_cdk/aws_route53resolver/__init__.py +26 -60
  44. aws_cdk/aws_s3/__init__.py +104 -4
  45. aws_cdk/aws_s3express/__init__.py +73 -13
  46. aws_cdk/aws_s3outposts/__init__.py +21 -12
  47. aws_cdk/aws_sagemaker/__init__.py +4 -44
  48. aws_cdk/aws_ssmquicksetup/__init__.py +2 -2
  49. aws_cdk/aws_stepfunctions/__init__.py +529 -156
  50. aws_cdk/aws_transfer/__init__.py +15 -4
  51. aws_cdk/aws_waf/__init__.py +11 -11
  52. aws_cdk/aws_wafregional/__init__.py +12 -12
  53. aws_cdk/aws_wisdom/__init__.py +710 -5
  54. {aws_cdk_lib-2.162.1.dist-info → aws_cdk_lib-2.163.0.dist-info}/METADATA +1 -1
  55. {aws_cdk_lib-2.162.1.dist-info → aws_cdk_lib-2.163.0.dist-info}/RECORD +59 -59
  56. {aws_cdk_lib-2.162.1.dist-info → aws_cdk_lib-2.163.0.dist-info}/LICENSE +0 -0
  57. {aws_cdk_lib-2.162.1.dist-info → aws_cdk_lib-2.163.0.dist-info}/NOTICE +0 -0
  58. {aws_cdk_lib-2.162.1.dist-info → aws_cdk_lib-2.163.0.dist-info}/WHEEL +0 -0
  59. {aws_cdk_lib-2.162.1.dist-info → aws_cdk_lib-2.163.0.dist-info}/top_level.txt +0 -0
@@ -5923,8 +5923,6 @@ class CfnCapacityProvider(
5923
5923
  ),
5924
5924
  managed_termination_protection="managedTerminationProtection"
5925
5925
  ),
5926
-
5927
- # the properties below are optional
5928
5926
  name="name",
5929
5927
  tags=[CfnTag(
5930
5928
  key="key",
@@ -5938,7 +5936,7 @@ class CfnCapacityProvider(
5938
5936
  scope: _constructs_77d1e7e8.Construct,
5939
5937
  id: builtins.str,
5940
5938
  *,
5941
- auto_scaling_group_provider: typing.Union[_IResolvable_da3f097b, typing.Union["CfnCapacityProvider.AutoScalingGroupProviderProperty", typing.Dict[builtins.str, typing.Any]]],
5939
+ auto_scaling_group_provider: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCapacityProvider.AutoScalingGroupProviderProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5942
5940
  name: typing.Optional[builtins.str] = None,
5943
5941
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
5944
5942
  ) -> None:
@@ -6006,14 +6004,14 @@ class CfnCapacityProvider(
6006
6004
  @jsii.member(jsii_name="autoScalingGroupProvider")
6007
6005
  def auto_scaling_group_provider(
6008
6006
  self,
6009
- ) -> typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.AutoScalingGroupProviderProperty"]:
6007
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.AutoScalingGroupProviderProperty"]]:
6010
6008
  '''The Auto Scaling group settings for the capacity provider.'''
6011
- return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.AutoScalingGroupProviderProperty"], jsii.get(self, "autoScalingGroupProvider"))
6009
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.AutoScalingGroupProviderProperty"]], jsii.get(self, "autoScalingGroupProvider"))
6012
6010
 
6013
6011
  @auto_scaling_group_provider.setter
6014
6012
  def auto_scaling_group_provider(
6015
6013
  self,
6016
- value: typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.AutoScalingGroupProviderProperty"],
6014
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.AutoScalingGroupProviderProperty"]],
6017
6015
  ) -> None:
6018
6016
  if __debug__:
6019
6017
  type_hints = typing.get_type_hints(_typecheckingstub__5888da07adc4050987d977b4699983a6760a2abcd538f800018e65953cb2746e)
@@ -6324,7 +6322,7 @@ class CfnCapacityProviderProps:
6324
6322
  def __init__(
6325
6323
  self,
6326
6324
  *,
6327
- auto_scaling_group_provider: typing.Union[_IResolvable_da3f097b, typing.Union[CfnCapacityProvider.AutoScalingGroupProviderProperty, typing.Dict[builtins.str, typing.Any]]],
6325
+ auto_scaling_group_provider: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCapacityProvider.AutoScalingGroupProviderProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6328
6326
  name: typing.Optional[builtins.str] = None,
6329
6327
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
6330
6328
  ) -> None:
@@ -6358,8 +6356,6 @@ class CfnCapacityProviderProps:
6358
6356
  ),
6359
6357
  managed_termination_protection="managedTerminationProtection"
6360
6358
  ),
6361
-
6362
- # the properties below are optional
6363
6359
  name="name",
6364
6360
  tags=[CfnTag(
6365
6361
  key="key",
@@ -6372,9 +6368,9 @@ class CfnCapacityProviderProps:
6372
6368
  check_type(argname="argument auto_scaling_group_provider", value=auto_scaling_group_provider, expected_type=type_hints["auto_scaling_group_provider"])
6373
6369
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
6374
6370
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
6375
- self._values: typing.Dict[builtins.str, typing.Any] = {
6376
- "auto_scaling_group_provider": auto_scaling_group_provider,
6377
- }
6371
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
6372
+ if auto_scaling_group_provider is not None:
6373
+ self._values["auto_scaling_group_provider"] = auto_scaling_group_provider
6378
6374
  if name is not None:
6379
6375
  self._values["name"] = name
6380
6376
  if tags is not None:
@@ -6383,14 +6379,13 @@ class CfnCapacityProviderProps:
6383
6379
  @builtins.property
6384
6380
  def auto_scaling_group_provider(
6385
6381
  self,
6386
- ) -> typing.Union[_IResolvable_da3f097b, CfnCapacityProvider.AutoScalingGroupProviderProperty]:
6382
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnCapacityProvider.AutoScalingGroupProviderProperty]]:
6387
6383
  '''The Auto Scaling group settings for the capacity provider.
6388
6384
 
6389
6385
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html#cfn-ecs-capacityprovider-autoscalinggroupprovider
6390
6386
  '''
6391
6387
  result = self._values.get("auto_scaling_group_provider")
6392
- assert result is not None, "Required property 'auto_scaling_group_provider' is missing"
6393
- return typing.cast(typing.Union[_IResolvable_da3f097b, CfnCapacityProvider.AutoScalingGroupProviderProperty], result)
6388
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnCapacityProvider.AutoScalingGroupProviderProperty]], result)
6394
6389
 
6395
6390
  @builtins.property
6396
6391
  def name(self) -> typing.Optional[builtins.str]:
@@ -17659,6 +17654,11 @@ class CfnTaskSet(
17659
17654
  task_definition="taskDefinition",
17660
17655
 
17661
17656
  # the properties below are optional
17657
+ capacity_provider_strategy=[ecs.CfnTaskSet.CapacityProviderStrategyItemProperty(
17658
+ base=123,
17659
+ capacity_provider="capacityProvider",
17660
+ weight=123
17661
+ )],
17662
17662
  external_id="externalId",
17663
17663
  launch_type="launchType",
17664
17664
  load_balancers=[ecs.CfnTaskSet.LoadBalancerProperty(
@@ -17701,6 +17701,7 @@ class CfnTaskSet(
17701
17701
  cluster: builtins.str,
17702
17702
  service: builtins.str,
17703
17703
  task_definition: builtins.str,
17704
+ capacity_provider_strategy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTaskSet.CapacityProviderStrategyItemProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
17704
17705
  external_id: typing.Optional[builtins.str] = None,
17705
17706
  launch_type: typing.Optional[builtins.str] = None,
17706
17707
  load_balancers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTaskSet.LoadBalancerProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -17716,6 +17717,7 @@ class CfnTaskSet(
17716
17717
  :param cluster: The short name or full Amazon Resource Name (ARN) of the cluster that hosts the service to create the task set in.
17717
17718
  :param service: The short name or full Amazon Resource Name (ARN) of the service to create the task set in.
17718
17719
  :param task_definition: The task definition for the tasks in the task set to use. If a revision isn't specified, the latest ``ACTIVE`` revision is used.
17720
+ :param capacity_provider_strategy: The capacity provider strategy that are associated with the task set.
17719
17721
  :param external_id: An optional non-unique tag that identifies this task set in external systems. If the task set is associated with a service discovery registry, the tasks in this task set will have the ``ECS_TASK_SET_EXTERNAL_ID`` AWS Cloud Map attribute set to the provided value.
17720
17722
  :param launch_type: The launch type that new tasks in the task set uses. For more information, see `Amazon ECS launch types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* . If a ``launchType`` is specified, the ``capacityProviderStrategy`` parameter must be omitted.
17721
17723
  :param load_balancers: A load balancer object representing the load balancer to use with the task set. The supported load balancer types are either an Application Load Balancer or a Network Load Balancer.
@@ -17733,6 +17735,7 @@ class CfnTaskSet(
17733
17735
  cluster=cluster,
17734
17736
  service=service,
17735
17737
  task_definition=task_definition,
17738
+ capacity_provider_strategy=capacity_provider_strategy,
17736
17739
  external_id=external_id,
17737
17740
  launch_type=launch_type,
17738
17741
  load_balancers=load_balancers,
@@ -17834,6 +17837,24 @@ class CfnTaskSet(
17834
17837
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
17835
17838
  jsii.set(self, "taskDefinition", value) # pyright: ignore[reportArgumentType]
17836
17839
 
17840
+ @builtins.property
17841
+ @jsii.member(jsii_name="capacityProviderStrategy")
17842
+ def capacity_provider_strategy(
17843
+ self,
17844
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTaskSet.CapacityProviderStrategyItemProperty"]]]]:
17845
+ '''The capacity provider strategy that are associated with the task set.'''
17846
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTaskSet.CapacityProviderStrategyItemProperty"]]]], jsii.get(self, "capacityProviderStrategy"))
17847
+
17848
+ @capacity_provider_strategy.setter
17849
+ def capacity_provider_strategy(
17850
+ self,
17851
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTaskSet.CapacityProviderStrategyItemProperty"]]]],
17852
+ ) -> None:
17853
+ if __debug__:
17854
+ type_hints = typing.get_type_hints(_typecheckingstub__61be4a6875e31c55069618271d6dcb0c8c85ffc354777e795c6e004847e90a03)
17855
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
17856
+ jsii.set(self, "capacityProviderStrategy", value) # pyright: ignore[reportArgumentType]
17857
+
17837
17858
  @builtins.property
17838
17859
  @jsii.member(jsii_name="externalId")
17839
17860
  def external_id(self) -> typing.Optional[builtins.str]:
@@ -18064,6 +18085,115 @@ class CfnTaskSet(
18064
18085
  k + "=" + repr(v) for k, v in self._values.items()
18065
18086
  )
18066
18087
 
18088
+ @jsii.data_type(
18089
+ jsii_type="aws-cdk-lib.aws_ecs.CfnTaskSet.CapacityProviderStrategyItemProperty",
18090
+ jsii_struct_bases=[],
18091
+ name_mapping={
18092
+ "base": "base",
18093
+ "capacity_provider": "capacityProvider",
18094
+ "weight": "weight",
18095
+ },
18096
+ )
18097
+ class CapacityProviderStrategyItemProperty:
18098
+ def __init__(
18099
+ self,
18100
+ *,
18101
+ base: typing.Optional[jsii.Number] = None,
18102
+ capacity_provider: typing.Optional[builtins.str] = None,
18103
+ weight: typing.Optional[jsii.Number] = None,
18104
+ ) -> None:
18105
+ '''The details of a capacity provider strategy.
18106
+
18107
+ A capacity provider strategy can be set when using the `RunTask <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html>`_ or `CreateCluster <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateCluster.html>`_ APIs or as the default capacity provider strategy for a cluster with the ``CreateCluster`` API.
18108
+
18109
+ Only capacity providers that are already associated with a cluster and have an ``ACTIVE`` or ``UPDATING`` status can be used in a capacity provider strategy. The `PutClusterCapacityProviders <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PutClusterCapacityProviders.html>`_ API is used to associate a capacity provider with a cluster.
18110
+
18111
+ If specifying a capacity provider that uses an Auto Scaling group, the capacity provider must already be created. New Auto Scaling group capacity providers can be created with the `CreateClusterCapacityProvider <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_CreateClusterCapacityProvider.html>`_ API operation.
18112
+
18113
+ To use a AWS Fargate capacity provider, specify either the ``FARGATE`` or ``FARGATE_SPOT`` capacity providers. The AWS Fargate capacity providers are available to all accounts and only need to be associated with a cluster to be used in a capacity provider strategy.
18114
+
18115
+ With ``FARGATE_SPOT`` , you can run interruption tolerant tasks at a rate that's discounted compared to the ``FARGATE`` price. ``FARGATE_SPOT`` runs tasks on spare compute capacity. When AWS needs the capacity back, your tasks are interrupted with a two-minute warning. ``FARGATE_SPOT`` supports Linux tasks with the X86_64 architecture on platform version 1.3.0 or later. ``FARGATE_SPOT`` supports Linux tasks with the ARM64 architecture on platform version 1.4.0 or later.
18116
+
18117
+ A capacity provider strategy may contain a maximum of 6 capacity providers.
18118
+
18119
+ :param base: The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider. Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used.
18120
+ :param capacity_provider: The short name of the capacity provider.
18121
+ :param weight: The *weight* value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The ``weight`` value is taken into consideration after the ``base`` value, if defined, is satisfied. If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail. An example scenario for using weights is defining a strategy that contains two capacity providers and both have a weight of ``1`` , then when the ``base`` is satisfied, the tasks will be split evenly across the two capacity providers. Using that same logic, if you specify a weight of ``1`` for *capacityProviderA* and a weight of ``4`` for *capacityProviderB* , then for every one task that's run using *capacityProviderA* , four tasks would use *capacityProviderB* .
18122
+
18123
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-capacityproviderstrategyitem.html
18124
+ :exampleMetadata: fixture=_generated
18125
+
18126
+ Example::
18127
+
18128
+ # The code below shows an example of how to instantiate this type.
18129
+ # The values are placeholders you should change.
18130
+ from aws_cdk import aws_ecs as ecs
18131
+
18132
+ capacity_provider_strategy_item_property = ecs.CfnTaskSet.CapacityProviderStrategyItemProperty(
18133
+ base=123,
18134
+ capacity_provider="capacityProvider",
18135
+ weight=123
18136
+ )
18137
+ '''
18138
+ if __debug__:
18139
+ type_hints = typing.get_type_hints(_typecheckingstub__1a909a809a339cf5ffe7d2c578b4337c88733f5acf5415a619f79752e216324d)
18140
+ check_type(argname="argument base", value=base, expected_type=type_hints["base"])
18141
+ check_type(argname="argument capacity_provider", value=capacity_provider, expected_type=type_hints["capacity_provider"])
18142
+ check_type(argname="argument weight", value=weight, expected_type=type_hints["weight"])
18143
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
18144
+ if base is not None:
18145
+ self._values["base"] = base
18146
+ if capacity_provider is not None:
18147
+ self._values["capacity_provider"] = capacity_provider
18148
+ if weight is not None:
18149
+ self._values["weight"] = weight
18150
+
18151
+ @builtins.property
18152
+ def base(self) -> typing.Optional[jsii.Number]:
18153
+ '''The *base* value designates how many tasks, at a minimum, to run on the specified capacity provider.
18154
+
18155
+ Only one capacity provider in a capacity provider strategy can have a *base* defined. If no value is specified, the default value of ``0`` is used.
18156
+
18157
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-capacityproviderstrategyitem.html#cfn-ecs-taskset-capacityproviderstrategyitem-base
18158
+ '''
18159
+ result = self._values.get("base")
18160
+ return typing.cast(typing.Optional[jsii.Number], result)
18161
+
18162
+ @builtins.property
18163
+ def capacity_provider(self) -> typing.Optional[builtins.str]:
18164
+ '''The short name of the capacity provider.
18165
+
18166
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-capacityproviderstrategyitem.html#cfn-ecs-taskset-capacityproviderstrategyitem-capacityprovider
18167
+ '''
18168
+ result = self._values.get("capacity_provider")
18169
+ return typing.cast(typing.Optional[builtins.str], result)
18170
+
18171
+ @builtins.property
18172
+ def weight(self) -> typing.Optional[jsii.Number]:
18173
+ '''The *weight* value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider.
18174
+
18175
+ The ``weight`` value is taken into consideration after the ``base`` value, if defined, is satisfied.
18176
+
18177
+ If no ``weight`` value is specified, the default value of ``0`` is used. When multiple capacity providers are specified within a capacity provider strategy, at least one of the capacity providers must have a weight value greater than zero and any capacity providers with a weight of ``0`` can't be used to place tasks. If you specify multiple capacity providers in a strategy that all have a weight of ``0`` , any ``RunTask`` or ``CreateService`` actions using the capacity provider strategy will fail.
18178
+
18179
+ An example scenario for using weights is defining a strategy that contains two capacity providers and both have a weight of ``1`` , then when the ``base`` is satisfied, the tasks will be split evenly across the two capacity providers. Using that same logic, if you specify a weight of ``1`` for *capacityProviderA* and a weight of ``4`` for *capacityProviderB* , then for every one task that's run using *capacityProviderA* , four tasks would use *capacityProviderB* .
18180
+
18181
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-capacityproviderstrategyitem.html#cfn-ecs-taskset-capacityproviderstrategyitem-weight
18182
+ '''
18183
+ result = self._values.get("weight")
18184
+ return typing.cast(typing.Optional[jsii.Number], result)
18185
+
18186
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
18187
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
18188
+
18189
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
18190
+ return not (rhs == self)
18191
+
18192
+ def __repr__(self) -> str:
18193
+ return "CapacityProviderStrategyItemProperty(%s)" % ", ".join(
18194
+ k + "=" + repr(v) for k, v in self._values.items()
18195
+ )
18196
+
18067
18197
  @jsii.data_type(
18068
18198
  jsii_type="aws-cdk-lib.aws_ecs.CfnTaskSet.LoadBalancerProperty",
18069
18199
  jsii_struct_bases=[],
@@ -18436,6 +18566,7 @@ class CfnTaskSet(
18436
18566
  "cluster": "cluster",
18437
18567
  "service": "service",
18438
18568
  "task_definition": "taskDefinition",
18569
+ "capacity_provider_strategy": "capacityProviderStrategy",
18439
18570
  "external_id": "externalId",
18440
18571
  "launch_type": "launchType",
18441
18572
  "load_balancers": "loadBalancers",
@@ -18453,6 +18584,7 @@ class CfnTaskSetProps:
18453
18584
  cluster: builtins.str,
18454
18585
  service: builtins.str,
18455
18586
  task_definition: builtins.str,
18587
+ capacity_provider_strategy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTaskSet.CapacityProviderStrategyItemProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
18456
18588
  external_id: typing.Optional[builtins.str] = None,
18457
18589
  launch_type: typing.Optional[builtins.str] = None,
18458
18590
  load_balancers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTaskSet.LoadBalancerProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -18467,6 +18599,7 @@ class CfnTaskSetProps:
18467
18599
  :param cluster: The short name or full Amazon Resource Name (ARN) of the cluster that hosts the service to create the task set in.
18468
18600
  :param service: The short name or full Amazon Resource Name (ARN) of the service to create the task set in.
18469
18601
  :param task_definition: The task definition for the tasks in the task set to use. If a revision isn't specified, the latest ``ACTIVE`` revision is used.
18602
+ :param capacity_provider_strategy: The capacity provider strategy that are associated with the task set.
18470
18603
  :param external_id: An optional non-unique tag that identifies this task set in external systems. If the task set is associated with a service discovery registry, the tasks in this task set will have the ``ECS_TASK_SET_EXTERNAL_ID`` AWS Cloud Map attribute set to the provided value.
18471
18604
  :param launch_type: The launch type that new tasks in the task set uses. For more information, see `Amazon ECS launch types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* . If a ``launchType`` is specified, the ``capacityProviderStrategy`` parameter must be omitted.
18472
18605
  :param load_balancers: A load balancer object representing the load balancer to use with the task set. The supported load balancer types are either an Application Load Balancer or a Network Load Balancer.
@@ -18491,6 +18624,11 @@ class CfnTaskSetProps:
18491
18624
  task_definition="taskDefinition",
18492
18625
 
18493
18626
  # the properties below are optional
18627
+ capacity_provider_strategy=[ecs.CfnTaskSet.CapacityProviderStrategyItemProperty(
18628
+ base=123,
18629
+ capacity_provider="capacityProvider",
18630
+ weight=123
18631
+ )],
18494
18632
  external_id="externalId",
18495
18633
  launch_type="launchType",
18496
18634
  load_balancers=[ecs.CfnTaskSet.LoadBalancerProperty(
@@ -18529,6 +18667,7 @@ class CfnTaskSetProps:
18529
18667
  check_type(argname="argument cluster", value=cluster, expected_type=type_hints["cluster"])
18530
18668
  check_type(argname="argument service", value=service, expected_type=type_hints["service"])
18531
18669
  check_type(argname="argument task_definition", value=task_definition, expected_type=type_hints["task_definition"])
18670
+ check_type(argname="argument capacity_provider_strategy", value=capacity_provider_strategy, expected_type=type_hints["capacity_provider_strategy"])
18532
18671
  check_type(argname="argument external_id", value=external_id, expected_type=type_hints["external_id"])
18533
18672
  check_type(argname="argument launch_type", value=launch_type, expected_type=type_hints["launch_type"])
18534
18673
  check_type(argname="argument load_balancers", value=load_balancers, expected_type=type_hints["load_balancers"])
@@ -18542,6 +18681,8 @@ class CfnTaskSetProps:
18542
18681
  "service": service,
18543
18682
  "task_definition": task_definition,
18544
18683
  }
18684
+ if capacity_provider_strategy is not None:
18685
+ self._values["capacity_provider_strategy"] = capacity_provider_strategy
18545
18686
  if external_id is not None:
18546
18687
  self._values["external_id"] = external_id
18547
18688
  if launch_type is not None:
@@ -18591,6 +18732,17 @@ class CfnTaskSetProps:
18591
18732
  assert result is not None, "Required property 'task_definition' is missing"
18592
18733
  return typing.cast(builtins.str, result)
18593
18734
 
18735
+ @builtins.property
18736
+ def capacity_provider_strategy(
18737
+ self,
18738
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnTaskSet.CapacityProviderStrategyItemProperty]]]]:
18739
+ '''The capacity provider strategy that are associated with the task set.
18740
+
18741
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskset.html#cfn-ecs-taskset-capacityproviderstrategy
18742
+ '''
18743
+ result = self._values.get("capacity_provider_strategy")
18744
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnTaskSet.CapacityProviderStrategyItemProperty]]]], result)
18745
+
18594
18746
  @builtins.property
18595
18747
  def external_id(self) -> typing.Optional[builtins.str]:
18596
18748
  '''An optional non-unique tag that identifies this task set in external systems.
@@ -41995,7 +42147,7 @@ def _typecheckingstub__59a913caee739f6d41600bf8ae89985db638913fbcb77a8abd5451cda
41995
42147
  scope: _constructs_77d1e7e8.Construct,
41996
42148
  id: builtins.str,
41997
42149
  *,
41998
- auto_scaling_group_provider: typing.Union[_IResolvable_da3f097b, typing.Union[CfnCapacityProvider.AutoScalingGroupProviderProperty, typing.Dict[builtins.str, typing.Any]]],
42150
+ auto_scaling_group_provider: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCapacityProvider.AutoScalingGroupProviderProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
41999
42151
  name: typing.Optional[builtins.str] = None,
42000
42152
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
42001
42153
  ) -> None:
@@ -42015,7 +42167,7 @@ def _typecheckingstub__8ee137a83ca18edf089a21cbcaba0156daf4f4612dbd8c0aeac582bcf
42015
42167
  pass
42016
42168
 
42017
42169
  def _typecheckingstub__5888da07adc4050987d977b4699983a6760a2abcd538f800018e65953cb2746e(
42018
- value: typing.Union[_IResolvable_da3f097b, CfnCapacityProvider.AutoScalingGroupProviderProperty],
42170
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnCapacityProvider.AutoScalingGroupProviderProperty]],
42019
42171
  ) -> None:
42020
42172
  """Type checking stubs"""
42021
42173
  pass
@@ -42055,7 +42207,7 @@ def _typecheckingstub__b6ba7d15ac2121ea6e10f20fe3e2441ae17d00f30897db384f8f72e7d
42055
42207
 
42056
42208
  def _typecheckingstub__48080bdf05dc1c4ca9ab46c833774163f6afcd0d1551b378b8d59e67bc180c3f(
42057
42209
  *,
42058
- auto_scaling_group_provider: typing.Union[_IResolvable_da3f097b, typing.Union[CfnCapacityProvider.AutoScalingGroupProviderProperty, typing.Dict[builtins.str, typing.Any]]],
42210
+ auto_scaling_group_provider: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCapacityProvider.AutoScalingGroupProviderProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
42059
42211
  name: typing.Optional[builtins.str] = None,
42060
42212
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
42061
42213
  ) -> None:
@@ -43221,6 +43373,7 @@ def _typecheckingstub__f13a8ecfab3b2d02036a947cd1b4f09594da6ce34103f4abe4f947de6
43221
43373
  cluster: builtins.str,
43222
43374
  service: builtins.str,
43223
43375
  task_definition: builtins.str,
43376
+ capacity_provider_strategy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTaskSet.CapacityProviderStrategyItemProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
43224
43377
  external_id: typing.Optional[builtins.str] = None,
43225
43378
  launch_type: typing.Optional[builtins.str] = None,
43226
43379
  load_balancers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTaskSet.LoadBalancerProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -43263,6 +43416,12 @@ def _typecheckingstub__94ea8763f334bdea4e67a959b5526084ad4481945c9fb5d1826bab452
43263
43416
  """Type checking stubs"""
43264
43417
  pass
43265
43418
 
43419
+ def _typecheckingstub__61be4a6875e31c55069618271d6dcb0c8c85ffc354777e795c6e004847e90a03(
43420
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnTaskSet.CapacityProviderStrategyItemProperty]]]],
43421
+ ) -> None:
43422
+ """Type checking stubs"""
43423
+ pass
43424
+
43266
43425
  def _typecheckingstub__52f079cf2c2fadbe38461a7e81ef23344c2aa8dbd5c4c1ce147513deec1f10f7(
43267
43426
  value: typing.Optional[builtins.str],
43268
43427
  ) -> None:
@@ -43320,6 +43479,15 @@ def _typecheckingstub__23e9c54f36446bdd091ba5f810830e55216485324451c353fdf9f5f97
43320
43479
  """Type checking stubs"""
43321
43480
  pass
43322
43481
 
43482
+ def _typecheckingstub__1a909a809a339cf5ffe7d2c578b4337c88733f5acf5415a619f79752e216324d(
43483
+ *,
43484
+ base: typing.Optional[jsii.Number] = None,
43485
+ capacity_provider: typing.Optional[builtins.str] = None,
43486
+ weight: typing.Optional[jsii.Number] = None,
43487
+ ) -> None:
43488
+ """Type checking stubs"""
43489
+ pass
43490
+
43323
43491
  def _typecheckingstub__0f830dadc8709f058eb9f85bc90e372f1fe6c9eb7e45fdb293a2baf917f771ae(
43324
43492
  *,
43325
43493
  container_name: typing.Optional[builtins.str] = None,
@@ -43359,6 +43527,7 @@ def _typecheckingstub__a26a1ad2b86b6633517c82faa438939dc6de131055ef873e022a9725a
43359
43527
  cluster: builtins.str,
43360
43528
  service: builtins.str,
43361
43529
  task_definition: builtins.str,
43530
+ capacity_provider_strategy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTaskSet.CapacityProviderStrategyItemProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
43362
43531
  external_id: typing.Optional[builtins.str] = None,
43363
43532
  launch_type: typing.Optional[builtins.str] = None,
43364
43533
  load_balancers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTaskSet.LoadBalancerProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,