aws-cdk-lib 2.73.0__py3-none-any.whl → 2.76.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 (111) hide show
  1. aws_cdk/__init__.py +245 -259
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.73.0.jsii.tgz → aws-cdk-lib@2.76.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amplifyuibuilder/__init__.py +182 -214
  5. aws_cdk/aws_apigateway/__init__.py +95 -148
  6. aws_cdk/aws_appconfig/__init__.py +8 -4
  7. aws_cdk/aws_appflow/__init__.py +27 -52
  8. aws_cdk/aws_appmesh/__init__.py +91 -200
  9. aws_cdk/aws_apprunner/__init__.py +4 -16
  10. aws_cdk/aws_appstream/__init__.py +18 -82
  11. aws_cdk/aws_athena/__init__.py +18 -32
  12. aws_cdk/aws_backup/__init__.py +48 -86
  13. aws_cdk/aws_batch/__init__.py +9 -2
  14. aws_cdk/aws_billingconductor/__init__.py +12 -7
  15. aws_cdk/aws_budgets/__init__.py +8 -17
  16. aws_cdk/aws_certificatemanager/__init__.py +7 -4
  17. aws_cdk/aws_cloudfront/__init__.py +14 -11
  18. aws_cdk/aws_cloudfront_origins/__init__.py +18 -8
  19. aws_cdk/aws_cloudtrail/__init__.py +7 -14
  20. aws_cdk/aws_cloudwatch/__init__.py +63 -35
  21. aws_cdk/aws_codebuild/__init__.py +10 -13
  22. aws_cdk/aws_codecommit/__init__.py +0 -1
  23. aws_cdk/aws_codedeploy/__init__.py +165 -162
  24. aws_cdk/aws_codegurureviewer/__init__.py +4 -4
  25. aws_cdk/aws_codepipeline/__init__.py +0 -4
  26. aws_cdk/aws_codepipeline_actions/__init__.py +16 -164
  27. aws_cdk/aws_cognito/__init__.py +195 -100
  28. aws_cdk/aws_config/__init__.py +28 -51
  29. aws_cdk/aws_connectcampaigns/__init__.py +5 -6
  30. aws_cdk/aws_databrew/__init__.py +5 -6
  31. aws_cdk/aws_dlm/__init__.py +33 -71
  32. aws_cdk/aws_docdb/__init__.py +20 -76
  33. aws_cdk/aws_dynamodb/__init__.py +29 -22
  34. aws_cdk/aws_ec2/__init__.py +2414 -603
  35. aws_cdk/aws_ecr/__init__.py +1 -2
  36. aws_cdk/aws_ecr_assets/__init__.py +27 -14
  37. aws_cdk/aws_ecs/__init__.py +458 -163
  38. aws_cdk/aws_ecs_patterns/__init__.py +13 -11
  39. aws_cdk/aws_eks/__init__.py +13 -8
  40. aws_cdk/aws_elasticloadbalancing/__init__.py +16 -9
  41. aws_cdk/aws_elasticloadbalancingv2/__init__.py +142 -82
  42. aws_cdk/aws_elasticloadbalancingv2_actions/__init__.py +126 -61
  43. aws_cdk/aws_elasticsearch/__init__.py +0 -7
  44. aws_cdk/aws_emr/__init__.py +7 -16
  45. aws_cdk/aws_emrserverless/__init__.py +14 -18
  46. aws_cdk/aws_events/__init__.py +33 -29
  47. aws_cdk/aws_events_targets/__init__.py +248 -89
  48. aws_cdk/aws_frauddetector/__init__.py +3 -4
  49. aws_cdk/aws_fsx/__init__.py +13 -7
  50. aws_cdk/aws_gamelift/__init__.py +11 -20
  51. aws_cdk/aws_grafana/__init__.py +4 -4
  52. aws_cdk/aws_iam/__init__.py +21 -25
  53. aws_cdk/aws_imagebuilder/__init__.py +58 -80
  54. aws_cdk/aws_internetmonitor/__init__.py +18 -10
  55. aws_cdk/aws_iot/__init__.py +16 -10
  56. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +16 -26
  57. aws_cdk/aws_iotevents/__init__.py +6 -4
  58. aws_cdk/aws_iotfleetwise/__init__.py +27 -40
  59. aws_cdk/aws_iotsitewise/__init__.py +8 -5
  60. aws_cdk/aws_iotwireless/__init__.py +14 -9
  61. aws_cdk/aws_kinesisfirehose/__init__.py +21 -38
  62. aws_cdk/aws_lambda/__init__.py +76 -53
  63. aws_cdk/aws_lambda_event_sources/__init__.py +6 -21
  64. aws_cdk/aws_logs/__init__.py +5 -7
  65. aws_cdk/aws_macie/__init__.py +28 -23
  66. aws_cdk/aws_mediaconnect/__init__.py +5 -8
  67. aws_cdk/aws_mediaconvert/__init__.py +2 -2
  68. aws_cdk/aws_medialive/__init__.py +2 -4
  69. aws_cdk/aws_mediapackage/__init__.py +9 -18
  70. aws_cdk/aws_memorydb/__init__.py +5 -10
  71. aws_cdk/aws_mwaa/__init__.py +8 -4
  72. aws_cdk/aws_neptune/__init__.py +4 -4
  73. aws_cdk/aws_networkfirewall/__init__.py +8 -4
  74. aws_cdk/aws_networkmanager/__init__.py +4 -4
  75. aws_cdk/aws_nimblestudio/__init__.py +25 -45
  76. aws_cdk/aws_opensearchservice/__init__.py +0 -1
  77. aws_cdk/aws_panorama/__init__.py +11 -12
  78. aws_cdk/aws_personalize/__init__.py +46 -72
  79. aws_cdk/aws_pinpoint/__init__.py +36 -65
  80. aws_cdk/aws_quicksight/__init__.py +9972 -13374
  81. aws_cdk/aws_rds/__init__.py +53 -22
  82. aws_cdk/aws_route53/__init__.py +8 -16
  83. aws_cdk/aws_route53_targets/__init__.py +2 -4
  84. aws_cdk/aws_s3/__init__.py +41 -90
  85. aws_cdk/aws_s3_notifications/__init__.py +0 -3
  86. aws_cdk/aws_sagemaker/__init__.py +16 -10
  87. aws_cdk/aws_secretsmanager/__init__.py +17 -14
  88. aws_cdk/aws_servicecatalog/__init__.py +60 -83
  89. aws_cdk/aws_servicediscovery/__init__.py +4 -6
  90. aws_cdk/aws_ses/__init__.py +734 -28
  91. aws_cdk/aws_sns/__init__.py +4 -8
  92. aws_cdk/aws_ssm/__init__.py +19 -23
  93. aws_cdk/aws_ssmcontacts/__init__.py +10 -6
  94. aws_cdk/aws_ssmincidents/__init__.py +2 -1
  95. aws_cdk/aws_sso/__init__.py +4 -4
  96. aws_cdk/aws_stepfunctions/__init__.py +6 -15
  97. aws_cdk/aws_stepfunctions_tasks/__init__.py +51 -24
  98. aws_cdk/aws_timestream/__init__.py +22 -28
  99. aws_cdk/aws_transfer/__init__.py +188 -86
  100. aws_cdk/aws_wafv2/__init__.py +54 -38
  101. aws_cdk/aws_xray/__init__.py +15 -22
  102. aws_cdk/cloud_assembly_schema/__init__.py +14 -6
  103. aws_cdk/custom_resources/__init__.py +2 -3
  104. aws_cdk/pipelines/__init__.py +104 -134
  105. aws_cdk/triggers/__init__.py +46 -61
  106. {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/METADATA +47 -92
  107. {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/RECORD +111 -111
  108. {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/LICENSE +0 -0
  109. {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/NOTICE +0 -0
  110. {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/WHEEL +0 -0
  111. {aws_cdk_lib-2.73.0.dist-info → aws_cdk_lib-2.76.0.dist-info}/top_level.txt +0 -0
@@ -114,8 +114,7 @@ my_topic.add_subscription(subscriptions.LambdaSubscription(fn,
114
114
  ### Example of Firehose Subscription
115
115
 
116
116
  ```python
117
- # Example automatically generated from non-compiling source. May contain errors.
118
- from aws_cdk_lib.aws_kinesisfirehose import DeliveryStream
117
+ from aws_cdk.aws_kinesisfirehose_alpha import DeliveryStream
119
118
  # stream: DeliveryStream
120
119
 
121
120
 
@@ -3070,8 +3069,7 @@ class Subscription(
3070
3069
 
3071
3070
  Example::
3072
3071
 
3073
- # Example automatically generated from non-compiling source. May contain errors.
3074
- from aws_cdk_lib.aws_kinesisfirehose import DeliveryStream
3072
+ from aws_cdk.aws_kinesisfirehose_alpha import DeliveryStream
3075
3073
  # stream: DeliveryStream
3076
3074
 
3077
3075
 
@@ -3497,8 +3495,7 @@ class SubscriptionProps(SubscriptionOptions):
3497
3495
 
3498
3496
  Example::
3499
3497
 
3500
- # Example automatically generated from non-compiling source. May contain errors.
3501
- from aws_cdk_lib.aws_kinesisfirehose import DeliveryStream
3498
+ from aws_cdk.aws_kinesisfirehose_alpha import DeliveryStream
3502
3499
  # stream: DeliveryStream
3503
3500
 
3504
3501
 
@@ -3654,8 +3651,7 @@ class SubscriptionProtocol(enum.Enum):
3654
3651
 
3655
3652
  Example::
3656
3653
 
3657
- # Example automatically generated from non-compiling source. May contain errors.
3658
- from aws_cdk_lib.aws_kinesisfirehose import DeliveryStream
3654
+ from aws_cdk.aws_kinesisfirehose_alpha import DeliveryStream
3659
3655
  # stream: DeliveryStream
3660
3656
 
3661
3657
 
@@ -9,7 +9,8 @@ You can reference existing SSM Parameter Store values that you want to use in
9
9
  your CDK app by using `ssm.StringParameter.fromStringParameterAttributes`:
10
10
 
11
11
  ```python
12
- # Example automatically generated from non-compiling source. May contain errors.
12
+ parameter_version = Token.as_number({"Ref": "MyParameter"})
13
+
13
14
  # Retrieve the latest value of the non-secret parameter
14
15
  # with name "/My/String/Parameter".
15
16
  string_value = ssm.StringParameter.from_string_parameter_attributes(self, "MyValue",
@@ -38,15 +39,13 @@ You can also reference an existing SSM Parameter Store value that matches an
38
39
  [AWS specific parameter type](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html#aws-specific-parameter-types):
39
40
 
40
41
  ```python
41
- # Example automatically generated from non-compiling source. May contain errors.
42
- ssm.StringParameter.value_for_typed_string_parameter_v2(stack, "/My/Public/Parameter", ssm.ParameterValueType.AWS_EC2_IMAGE_ID)
42
+ ssm.StringParameter.value_for_typed_string_parameter_v2(self, "/My/Public/Parameter", ssm.ParameterValueType.AWS_EC2_IMAGE_ID)
43
43
  ```
44
44
 
45
45
  To do the same for a SSM Parameter Store value that is stored as a list:
46
46
 
47
47
  ```python
48
- # Example automatically generated from non-compiling source. May contain errors.
49
- ssm.StringListParameter.value_for_typed_list_parameter(stack, "/My/Public/Parameter", ssm.ParameterValueType.AWS_EC2_IMAGE_ID)
48
+ ssm.StringListParameter.value_for_typed_list_parameter(self, "/My/Public/Parameter", ssm.ParameterValueType.AWS_EC2_IMAGE_ID)
50
49
  ```
51
50
 
52
51
  ### Lookup existing parameters
@@ -55,8 +54,7 @@ You can also use an existing parameter by looking up the parameter from the AWS
55
54
  This method uses AWS API calls to lookup the value from SSM during synthesis.
56
55
 
57
56
  ```python
58
- # Example automatically generated from non-compiling source. May contain errors.
59
- string_value = ssm.StringParameter.value_from_lookup(stack, "/My/Public/Parameter")
57
+ string_value = ssm.StringParameter.value_from_lookup(self, "/My/Public/Parameter")
60
58
  ```
61
59
 
62
60
  When using `valueFromLookup` an initial value of 'dummy-value-for-${parameterName}'
@@ -117,19 +115,18 @@ ssm.StringParameter(self, "Parameter",
117
115
  ```
118
116
 
119
117
  ```python
120
- # Example automatically generated from non-compiling source. May contain errors.
118
+ # Grant read access to some Role
119
+ # role: iam.IRole
121
120
  # Create a new SSM Parameter holding a String
122
- param = ssm.StringParameter(stack, "StringParameter",
121
+ param = ssm.StringParameter(self, "StringParameter",
123
122
  # description: 'Some user-friendly description',
124
123
  # name: 'ParameterName',
125
124
  string_value="Initial parameter value"
126
125
  )
127
-
128
- # Grant read access to some Role
129
126
  param.grant_read(role)
130
127
 
131
128
  # Create a new SSM Parameter holding a StringList
132
- list_parameter = ssm.StringListParameter(stack, "StringListParameter",
129
+ list_parameter = ssm.StringListParameter(self, "StringListParameter",
133
130
  # description: 'Some user-friendly description',
134
131
  # name: 'ParameterName',
135
132
  string_list_value=["Initial parameter value A", "Initial parameter value B"]
@@ -8226,8 +8223,7 @@ class ParameterValueType(enum.Enum):
8226
8223
 
8227
8224
  Example::
8228
8225
 
8229
- # Example automatically generated from non-compiling source. May contain errors.
8230
- ssm.StringParameter.value_for_typed_string_parameter_v2(stack, "/My/Public/Parameter", ssm.ParameterValueType.AWS_EC2_IMAGE_ID)
8226
+ ssm.StringParameter.value_for_typed_string_parameter_v2(self, "/My/Public/Parameter", ssm.ParameterValueType.AWS_EC2_IMAGE_ID)
8231
8227
  '''
8232
8228
 
8233
8229
  STRING = "STRING"
@@ -8284,7 +8280,8 @@ class SecureStringParameterAttributes(CommonStringParameterAttributes):
8284
8280
 
8285
8281
  Example::
8286
8282
 
8287
- # Example automatically generated from non-compiling source. May contain errors.
8283
+ parameter_version = Token.as_number({"Ref": "MyParameter"})
8284
+
8288
8285
  # Retrieve the latest value of the non-secret parameter
8289
8286
  # with name "/My/String/Parameter".
8290
8287
  string_value = ssm.StringParameter.from_string_parameter_attributes(self, "MyValue",
@@ -8395,8 +8392,7 @@ class StringListParameter(
8395
8392
 
8396
8393
  Example::
8397
8394
 
8398
- # Example automatically generated from non-compiling source. May contain errors.
8399
- ssm.StringListParameter.value_for_typed_list_parameter(stack, "/My/Public/Parameter", ssm.ParameterValueType.AWS_EC2_IMAGE_ID)
8395
+ ssm.StringListParameter.value_for_typed_list_parameter(self, "/My/Public/Parameter", ssm.ParameterValueType.AWS_EC2_IMAGE_ID)
8400
8396
  '''
8401
8397
 
8402
8398
  def __init__(
@@ -8613,19 +8609,18 @@ class StringListParameterProps(ParameterOptions):
8613
8609
 
8614
8610
  Example::
8615
8611
 
8616
- # Example automatically generated from non-compiling source. May contain errors.
8612
+ # Grant read access to some Role
8613
+ # role: iam.IRole
8617
8614
  # Create a new SSM Parameter holding a String
8618
- param = ssm.StringParameter(stack, "StringParameter",
8615
+ param = ssm.StringParameter(self, "StringParameter",
8619
8616
  # description: 'Some user-friendly description',
8620
8617
  # name: 'ParameterName',
8621
8618
  string_value="Initial parameter value"
8622
8619
  )
8623
-
8624
- # Grant read access to some Role
8625
8620
  param.grant_read(role)
8626
8621
 
8627
8622
  # Create a new SSM Parameter holding a StringList
8628
- list_parameter = ssm.StringListParameter(stack, "StringListParameter",
8623
+ list_parameter = ssm.StringListParameter(self, "StringListParameter",
8629
8624
  # description: 'Some user-friendly description',
8630
8625
  # name: 'ParameterName',
8631
8626
  string_list_value=["Initial parameter value A", "Initial parameter value B"]
@@ -9096,7 +9091,8 @@ class StringParameterAttributes(CommonStringParameterAttributes):
9096
9091
 
9097
9092
  Example::
9098
9093
 
9099
- # Example automatically generated from non-compiling source. May contain errors.
9094
+ parameter_version = Token.as_number({"Ref": "MyParameter"})
9095
+
9100
9096
  # Retrieve the latest value of the non-secret parameter
9101
9097
  # with name "/My/String/Parameter".
9102
9098
  string_value = ssm.StringParameter.from_string_parameter_attributes(self, "MyValue",
@@ -108,7 +108,7 @@ class CfnContact(
108
108
  :param id: - scoped id of the resource.
109
109
  :param alias: The unique and identifiable alias of the contact or escalation plan.
110
110
  :param display_name: The full name of the contact or escalation plan.
111
- :param type: Refers to the type of contact. A single contact is type ``PERSONAL`` and an escalation plan is type ``ESCALATION`` .
111
+ :param type: Refers to the type of contact:. - ``PERSONAL`` : A single, individual contact. - ``ESCALATION`` : An escalation plan. - ``ONCALL_SCHEDULE`` : An on-call schedule.
112
112
  :param plan: A list of stages. A contact has an engagement plan with stages that contact specified contact channels. An escalation plan uses stages that contact specified contacts.
113
113
  '''
114
114
  if __debug__:
@@ -200,9 +200,11 @@ class CfnContact(
200
200
  @builtins.property
201
201
  @jsii.member(jsii_name="type")
202
202
  def type(self) -> builtins.str:
203
- '''Refers to the type of contact.
203
+ '''Refers to the type of contact:.
204
204
 
205
- A single contact is type ``PERSONAL`` and an escalation plan is type ``ESCALATION`` .
205
+ - ``PERSONAL`` : A single, individual contact.
206
+ - ``ESCALATION`` : An escalation plan.
207
+ - ``ONCALL_SCHEDULE`` : An on-call schedule.
206
208
 
207
209
  :link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contact.html#cfn-ssmcontacts-contact-type
208
210
  '''
@@ -914,7 +916,7 @@ class CfnContactProps:
914
916
 
915
917
  :param alias: The unique and identifiable alias of the contact or escalation plan.
916
918
  :param display_name: The full name of the contact or escalation plan.
917
- :param type: Refers to the type of contact. A single contact is type ``PERSONAL`` and an escalation plan is type ``ESCALATION`` .
919
+ :param type: Refers to the type of contact:. - ``PERSONAL`` : A single, individual contact. - ``ESCALATION`` : An escalation plan. - ``ONCALL_SCHEDULE`` : An on-call schedule.
918
920
  :param plan: A list of stages. A contact has an engagement plan with stages that contact specified contact channels. An escalation plan uses stages that contact specified contacts.
919
921
 
920
922
  :link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contact.html
@@ -985,9 +987,11 @@ class CfnContactProps:
985
987
 
986
988
  @builtins.property
987
989
  def type(self) -> builtins.str:
988
- '''Refers to the type of contact.
990
+ '''Refers to the type of contact:.
989
991
 
990
- A single contact is type ``PERSONAL`` and an escalation plan is type ``ESCALATION`` .
992
+ - ``PERSONAL`` : A single, individual contact.
993
+ - ``ESCALATION`` : An escalation plan.
994
+ - ``ONCALL_SCHEDULE`` : An on-call schedule.
991
995
 
992
996
  :link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssmcontacts-contact.html#cfn-ssmcontacts-contact-type
993
997
  '''
@@ -1412,7 +1412,8 @@ class CfnResponsePlan(
1412
1412
  )
1413
1413
  class PagerDutyIncidentConfigurationProperty:
1414
1414
  def __init__(self, *, service_id: builtins.str) -> None:
1415
- '''
1415
+ '''Details about the PagerDuty service where the response plan creates an incident.
1416
+
1416
1417
  :param service_id: The ID of the PagerDuty service that the response plan associates with an incident when it launches.
1417
1418
 
1418
1419
  :link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssmincidents-responseplan-pagerdutyincidentconfiguration.html
@@ -103,7 +103,7 @@ class CfnAssignment(
103
103
  :param permission_set_arn: The ARN of the permission set.
104
104
  :param principal_id: An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the `IAM Identity Center Identity Store API Reference <https://docs.aws.amazon.com//singlesignon/latest/IdentityStoreAPIReference/welcome.html>`_ .
105
105
  :param principal_type: The entity type for which the assignment will be created.
106
- :param target_id: TargetID is an AWS account identifier, typically a 10-12 digit string (For example, 123456789012).
106
+ :param target_id: TargetID is an AWS account identifier, (For example, 123456789012).
107
107
  :param target_type: The entity type for which the assignment will be created.
108
108
  '''
109
109
  if __debug__:
@@ -227,7 +227,7 @@ class CfnAssignment(
227
227
  @builtins.property
228
228
  @jsii.member(jsii_name="targetId")
229
229
  def target_id(self) -> builtins.str:
230
- '''TargetID is an AWS account identifier, typically a 10-12 digit string (For example, 123456789012).
230
+ '''TargetID is an AWS account identifier, (For example, 123456789012).
231
231
 
232
232
  :link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html#cfn-sso-assignment-targetid
233
233
  '''
@@ -286,7 +286,7 @@ class CfnAssignmentProps:
286
286
  :param permission_set_arn: The ARN of the permission set.
287
287
  :param principal_id: An identifier for an object in IAM Identity Center, such as a user or group. PrincipalIds are GUIDs (For example, f81d4fae-7dec-11d0-a765-00a0c91e6bf6). For more information about PrincipalIds in IAM Identity Center, see the `IAM Identity Center Identity Store API Reference <https://docs.aws.amazon.com//singlesignon/latest/IdentityStoreAPIReference/welcome.html>`_ .
288
288
  :param principal_type: The entity type for which the assignment will be created.
289
- :param target_id: TargetID is an AWS account identifier, typically a 10-12 digit string (For example, 123456789012).
289
+ :param target_id: TargetID is an AWS account identifier, (For example, 123456789012).
290
290
  :param target_type: The entity type for which the assignment will be created.
291
291
 
292
292
  :link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html
@@ -370,7 +370,7 @@ class CfnAssignmentProps:
370
370
 
371
371
  @builtins.property
372
372
  def target_id(self) -> builtins.str:
373
- '''TargetID is an AWS account identifier, typically a 10-12 digit string (For example, 123456789012).
373
+ '''TargetID is an AWS account identifier, (For example, 123456789012).
374
374
 
375
375
  :link: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sso-assignment.html#cfn-sso-assignment-targetid
376
376
  '''
@@ -554,8 +554,6 @@ Tasks are executed using the State Machine's execution role. In some cases, e.g.
554
554
  This can be achieved by providing the optional `credentials` property which allows using a fixed role or a json expression to resolve the role at runtime from the task's inputs.
555
555
 
556
556
  ```python
557
- # Example automatically generated from non-compiling source. May contain errors.
558
- import aws_cdk.aws_iam as iam
559
557
  import aws_cdk.aws_lambda as lambda_
560
558
 
561
559
  # submit_lambda: lambda.Function
@@ -879,9 +877,9 @@ In addition, the StateMachine can be imported via the `StateMachine.fromStateMac
879
877
  ```python
880
878
  app = App()
881
879
  stack = Stack(app, "MyStack")
882
- sfn.StateMachine.from_state_machine_arn(stack, "ViaArnImportedStateMachine", "arn:aws:states:us-east-1:123456789012:stateMachine:StateMachine2E01A3A5-N5TJppzoevKQ")
880
+ sfn.StateMachine.from_state_machine_arn(self, "ViaArnImportedStateMachine", "arn:aws:states:us-east-1:123456789012:stateMachine:StateMachine2E01A3A5-N5TJppzoevKQ")
883
881
 
884
- sfn.StateMachine.from_state_machine_name(stack, "ViaResourceNameImportedStateMachine", "StateMachine2E01A3A5-N5TJppzoevKQ")
882
+ sfn.StateMachine.from_state_machine_name(self, "ViaResourceNameImportedStateMachine", "StateMachine2E01A3A5-N5TJppzoevKQ")
885
883
  ```
886
884
  '''
887
885
  import abc
@@ -3472,8 +3470,6 @@ class Credentials:
3472
3470
 
3473
3471
  Example::
3474
3472
 
3475
- # Example automatically generated from non-compiling source. May contain errors.
3476
- import aws_cdk.aws_iam as iam
3477
3473
  import aws_cdk.aws_lambda as lambda_
3478
3474
 
3479
3475
  # submit_lambda: lambda.Function
@@ -6813,7 +6809,6 @@ class StateMachine(
6813
6809
 
6814
6810
  Example::
6815
6811
 
6816
- # Example automatically generated from non-compiling source. May contain errors.
6817
6812
  import aws_cdk.aws_stepfunctions as stepfunctions
6818
6813
 
6819
6814
 
@@ -7566,7 +7561,6 @@ class StateMachineProps:
7566
7561
 
7567
7562
  Example::
7568
7563
 
7569
- # Example automatically generated from non-compiling source. May contain errors.
7570
7564
  import aws_cdk.aws_stepfunctions as stepfunctions
7571
7565
 
7572
7566
 
@@ -8455,8 +8449,6 @@ class TaskRole(
8455
8449
 
8456
8450
  Example::
8457
8451
 
8458
- # Example automatically generated from non-compiling source. May contain errors.
8459
- import aws_cdk.aws_iam as iam
8460
8452
  import aws_cdk.aws_lambda as lambda_
8461
8453
 
8462
8454
  # submit_lambda: lambda.Function
@@ -8500,8 +8492,7 @@ class TaskRole(
8500
8492
 
8501
8493
  Example::
8502
8494
 
8503
- # Example automatically generated from non-compiling source. May contain errors.
8504
- TaskRole.from_role_arn_json_path("$.RoleArn")
8495
+ sfn.TaskRole.from_role_arn_json_path("$.RoleArn")
8505
8496
  '''
8506
8497
  if __debug__:
8507
8498
  type_hints = typing.get_type_hints(_typecheckingstub__8f0576900770ad89340628b613309cb0873d7789836eb9f1f1a5eb5eea3129f9)
@@ -9497,7 +9488,7 @@ class Wait(
9497
9488
  create_message = tasks.EvaluateExpression(self, "Create message",
9498
9489
  # Note: this is a string inside a string.
9499
9490
  expression="`Now waiting ${$.waitSeconds} seconds...`",
9500
- runtime=lambda_.Runtime.NODEJS_14_X,
9491
+ runtime=lambda_.Runtime.NODEJS_16_X,
9501
9492
  result_path="$.message"
9502
9493
  )
9503
9494
 
@@ -9590,7 +9581,7 @@ class WaitProps:
9590
9581
  create_message = tasks.EvaluateExpression(self, "Create message",
9591
9582
  # Note: this is a string inside a string.
9592
9583
  expression="`Now waiting ${$.waitSeconds} seconds...`",
9593
- runtime=lambda_.Runtime.NODEJS_14_X,
9584
+ runtime=lambda_.Runtime.NODEJS_16_X,
9594
9585
  result_path="$.message"
9595
9586
  )
9596
9587
 
@@ -9665,7 +9656,7 @@ class WaitTime(
9665
9656
  create_message = tasks.EvaluateExpression(self, "Create message",
9666
9657
  # Note: this is a string inside a string.
9667
9658
  expression="`Now waiting ${$.waitSeconds} seconds...`",
9668
- runtime=lambda_.Runtime.NODEJS_14_X,
9659
+ runtime=lambda_.Runtime.NODEJS_16_X,
9669
9660
  result_path="$.message"
9670
9661
  )
9671
9662
 
@@ -108,7 +108,7 @@ convert_to_seconds = tasks.EvaluateExpression(self, "Convert to seconds",
108
108
  create_message = tasks.EvaluateExpression(self, "Create message",
109
109
  # Note: this is a string inside a string.
110
110
  expression="`Now waiting ${$.waitSeconds} seconds...`",
111
- runtime=lambda_.Runtime.NODEJS_14_X,
111
+ runtime=lambda_.Runtime.NODEJS_16_X,
112
112
  result_path="$.message"
113
113
  )
114
114
 
@@ -180,8 +180,7 @@ tasks.CallApiGatewayRestApiEndpoint(self, "Endpoint",
180
180
  The `CallApiGatewayHttpApiEndpoint` calls the HTTP API endpoint.
181
181
 
182
182
  ```python
183
- # Example automatically generated from non-compiling source. May contain errors.
184
- import aws_cdk.aws_apigatewayv2 as apigatewayv2
183
+ import aws_cdk.aws_apigatewayv2_alpha as apigatewayv2
185
184
 
186
185
  http_api = apigatewayv2.HttpApi(self, "MyHttpApi")
187
186
 
@@ -315,7 +314,7 @@ The [SubmitJob](https://docs.aws.amazon.com/batch/latest/APIReference/API_Submit
315
314
 
316
315
  ```python
317
316
  # Example automatically generated from non-compiling source. May contain errors.
318
- import aws_cdk.aws_batch as batch
317
+ import aws_cdk.aws_batch_alpha as batch
319
318
  # batch_job_definition: batch.JobDefinition
320
319
  # batch_queue: batch.JobQueue
321
320
 
@@ -490,7 +489,8 @@ run_task = tasks.EcsRunTask(self, "Run",
490
489
  placement_constraints=[
491
490
  ecs.PlacementConstraint.member_of("blieptuut")
492
491
  ]
493
- )
492
+ ),
493
+ propagated_tag_source=ecs.PropagatedTagSource.TASK_DEFINITION
494
494
  )
495
495
  ```
496
496
 
@@ -537,7 +537,8 @@ run_task = tasks.EcsRunTask(self, "RunFargate",
537
537
  container_definition=container_definition,
538
538
  environment=[tasks.TaskEnvironmentVariable(name="SOME_KEY", value=sfn.JsonPath.string_at("$.SomeKey"))]
539
539
  )],
540
- launch_target=tasks.EcsFargateLaunchTarget()
540
+ launch_target=tasks.EcsFargateLaunchTarget(),
541
+ propagated_tag_source=ecs.PropagatedTagSource.TASK_DEFINITION
541
542
  )
542
543
  ```
543
544
 
@@ -1386,6 +1387,7 @@ from ..aws_ecs import (
1386
1387
  ITaskDefinition as _ITaskDefinition_889ba4d8,
1387
1388
  PlacementConstraint as _PlacementConstraint_11d82a52,
1388
1389
  PlacementStrategy as _PlacementStrategy_2bb6c232,
1390
+ PropagatedTagSource as _PropagatedTagSource_ad4e874a,
1389
1391
  TaskDefinition as _TaskDefinition_a541a103,
1390
1392
  )
1391
1393
  from ..aws_eks import ICluster as _ICluster_6b2b80df
@@ -3591,7 +3593,7 @@ class BatchSubmitJob(
3591
3593
  Example::
3592
3594
 
3593
3595
  # Example automatically generated from non-compiling source. May contain errors.
3594
- import aws_cdk.aws_batch as batch
3596
+ import aws_cdk.aws_batch_alpha as batch
3595
3597
  # batch_job_definition: batch.JobDefinition
3596
3598
  # batch_queue: batch.JobQueue
3597
3599
 
@@ -3766,7 +3768,7 @@ class BatchSubmitJobProps(_TaskStateBaseProps_3a62b6d0):
3766
3768
  Example::
3767
3769
 
3768
3770
  # Example automatically generated from non-compiling source. May contain errors.
3769
- import aws_cdk.aws_batch as batch
3771
+ import aws_cdk.aws_batch_alpha as batch
3770
3772
  # batch_job_definition: batch.JobDefinition
3771
3773
  # batch_queue: batch.JobQueue
3772
3774
 
@@ -4462,8 +4464,7 @@ class CallApiGatewayHttpApiEndpoint(
4462
4464
 
4463
4465
  Example::
4464
4466
 
4465
- # Example automatically generated from non-compiling source. May contain errors.
4466
- import aws_cdk.aws_apigatewayv2 as apigatewayv2
4467
+ import aws_cdk.aws_apigatewayv2_alpha as apigatewayv2
4467
4468
 
4468
4469
  http_api = apigatewayv2.HttpApi(self, "MyHttpApi")
4469
4470
 
@@ -4661,8 +4662,7 @@ class CallApiGatewayHttpApiEndpointProps(CallApiGatewayEndpointBaseProps):
4661
4662
 
4662
4663
  Example::
4663
4664
 
4664
- # Example automatically generated from non-compiling source. May contain errors.
4665
- import aws_cdk.aws_apigatewayv2 as apigatewayv2
4665
+ import aws_cdk.aws_apigatewayv2_alpha as apigatewayv2
4666
4666
 
4667
4667
  http_api = apigatewayv2.HttpApi(self, "MyHttpApi")
4668
4668
 
@@ -4978,7 +4978,6 @@ class CallApiGatewayRestApiEndpoint(
4978
4978
  in the headers field ``WAIT_FOR_TASK_TOKEN`` integration, use
4979
4979
  ``JsonPath.array()`` to wrap the token in an array::
4980
4980
 
4981
- # Example automatically generated from non-compiling source. May contain errors.
4982
4981
  import aws_cdk.aws_apigateway as apigateway
4983
4982
  # api: apigateway.RestApi
4984
4983
 
@@ -10019,7 +10018,8 @@ class EcsEc2LaunchTargetOptions:
10019
10018
  placement_constraints=[
10020
10019
  ecs.PlacementConstraint.member_of("blieptuut")
10021
10020
  ]
10022
- )
10021
+ ),
10022
+ propagated_tag_source=ecs.PropagatedTagSource.TASK_DEFINITION
10023
10023
  )
10024
10024
  '''
10025
10025
  if __debug__:
@@ -10224,7 +10224,8 @@ class EcsRunTask(
10224
10224
  placement_constraints=[
10225
10225
  ecs.PlacementConstraint.member_of("blieptuut")
10226
10226
  ]
10227
- )
10227
+ ),
10228
+ propagated_tag_source=ecs.PropagatedTagSource.TASK_DEFINITION
10228
10229
  )
10229
10230
  '''
10230
10231
 
@@ -10238,6 +10239,7 @@ class EcsRunTask(
10238
10239
  task_definition: _TaskDefinition_a541a103,
10239
10240
  assign_public_ip: typing.Optional[builtins.bool] = None,
10240
10241
  container_overrides: typing.Optional[typing.Sequence[typing.Union[ContainerOverride, typing.Dict[builtins.str, typing.Any]]]] = None,
10242
+ propagated_tag_source: typing.Optional[_PropagatedTagSource_ad4e874a] = None,
10241
10243
  revision_number: typing.Optional[jsii.Number] = None,
10242
10244
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
10243
10245
  subnets: typing.Optional[typing.Union[_SubnetSelection_e57d76df, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -10261,6 +10263,7 @@ class EcsRunTask(
10261
10263
  :param task_definition: [disable-awslint:ref-via-interface] Task Definition used for running tasks in the service. Note: this must be TaskDefinition, and not ITaskDefinition, as it requires properties that are not known for imported task definitions If you want to run a RunTask with an imported task definition, consider using CustomState
10262
10264
  :param assign_public_ip: Assign public IP addresses to each task. Default: false
10263
10265
  :param container_overrides: Container setting overrides. Specify the container to use and the overrides to apply. Default: - No overrides
10266
+ :param propagated_tag_source: Specifies whether to propagate the tags from the task definition to the task. An error will be received if you specify the SERVICE option when running a task. Default: - No tags are propagated.
10264
10267
  :param revision_number: The revision number of ECS task definiton family. Default: - '$latest'
10265
10268
  :param security_groups: Existing security groups to use for the tasks. Default: - A new security group is created
10266
10269
  :param subnets: Subnets to place the task's ENIs. Default: - Public subnets if assignPublicIp is set. Private subnets otherwise.
@@ -10286,6 +10289,7 @@ class EcsRunTask(
10286
10289
  task_definition=task_definition,
10287
10290
  assign_public_ip=assign_public_ip,
10288
10291
  container_overrides=container_overrides,
10292
+ propagated_tag_source=propagated_tag_source,
10289
10293
  revision_number=revision_number,
10290
10294
  security_groups=security_groups,
10291
10295
  subnets=subnets,
@@ -10341,6 +10345,7 @@ class EcsRunTask(
10341
10345
  "task_definition": "taskDefinition",
10342
10346
  "assign_public_ip": "assignPublicIp",
10343
10347
  "container_overrides": "containerOverrides",
10348
+ "propagated_tag_source": "propagatedTagSource",
10344
10349
  "revision_number": "revisionNumber",
10345
10350
  "security_groups": "securityGroups",
10346
10351
  "subnets": "subnets",
@@ -10366,6 +10371,7 @@ class EcsRunTaskProps(_TaskStateBaseProps_3a62b6d0):
10366
10371
  task_definition: _TaskDefinition_a541a103,
10367
10372
  assign_public_ip: typing.Optional[builtins.bool] = None,
10368
10373
  container_overrides: typing.Optional[typing.Sequence[typing.Union[ContainerOverride, typing.Dict[builtins.str, typing.Any]]]] = None,
10374
+ propagated_tag_source: typing.Optional[_PropagatedTagSource_ad4e874a] = None,
10369
10375
  revision_number: typing.Optional[jsii.Number] = None,
10370
10376
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
10371
10377
  subnets: typing.Optional[typing.Union[_SubnetSelection_e57d76df, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -10388,6 +10394,7 @@ class EcsRunTaskProps(_TaskStateBaseProps_3a62b6d0):
10388
10394
  :param task_definition: [disable-awslint:ref-via-interface] Task Definition used for running tasks in the service. Note: this must be TaskDefinition, and not ITaskDefinition, as it requires properties that are not known for imported task definitions If you want to run a RunTask with an imported task definition, consider using CustomState
10389
10395
  :param assign_public_ip: Assign public IP addresses to each task. Default: false
10390
10396
  :param container_overrides: Container setting overrides. Specify the container to use and the overrides to apply. Default: - No overrides
10397
+ :param propagated_tag_source: Specifies whether to propagate the tags from the task definition to the task. An error will be received if you specify the SERVICE option when running a task. Default: - No tags are propagated.
10391
10398
  :param revision_number: The revision number of ECS task definiton family. Default: - '$latest'
10392
10399
  :param security_groups: Existing security groups to use for the tasks. Default: - A new security group is created
10393
10400
  :param subnets: Subnets to place the task's ENIs. Default: - Public subnets if assignPublicIp is set. Private subnets otherwise.
@@ -10428,7 +10435,8 @@ class EcsRunTaskProps(_TaskStateBaseProps_3a62b6d0):
10428
10435
  placement_constraints=[
10429
10436
  ecs.PlacementConstraint.member_of("blieptuut")
10430
10437
  ]
10431
- )
10438
+ ),
10439
+ propagated_tag_source=ecs.PropagatedTagSource.TASK_DEFINITION
10432
10440
  )
10433
10441
  '''
10434
10442
  if isinstance(credentials, dict):
@@ -10453,6 +10461,7 @@ class EcsRunTaskProps(_TaskStateBaseProps_3a62b6d0):
10453
10461
  check_type(argname="argument task_definition", value=task_definition, expected_type=type_hints["task_definition"])
10454
10462
  check_type(argname="argument assign_public_ip", value=assign_public_ip, expected_type=type_hints["assign_public_ip"])
10455
10463
  check_type(argname="argument container_overrides", value=container_overrides, expected_type=type_hints["container_overrides"])
10464
+ check_type(argname="argument propagated_tag_source", value=propagated_tag_source, expected_type=type_hints["propagated_tag_source"])
10456
10465
  check_type(argname="argument revision_number", value=revision_number, expected_type=type_hints["revision_number"])
10457
10466
  check_type(argname="argument security_groups", value=security_groups, expected_type=type_hints["security_groups"])
10458
10467
  check_type(argname="argument subnets", value=subnets, expected_type=type_hints["subnets"])
@@ -10487,6 +10496,8 @@ class EcsRunTaskProps(_TaskStateBaseProps_3a62b6d0):
10487
10496
  self._values["assign_public_ip"] = assign_public_ip
10488
10497
  if container_overrides is not None:
10489
10498
  self._values["container_overrides"] = container_overrides
10499
+ if propagated_tag_source is not None:
10500
+ self._values["propagated_tag_source"] = propagated_tag_source
10490
10501
  if revision_number is not None:
10491
10502
  self._values["revision_number"] = revision_number
10492
10503
  if security_groups is not None:
@@ -10688,6 +10699,19 @@ class EcsRunTaskProps(_TaskStateBaseProps_3a62b6d0):
10688
10699
  result = self._values.get("container_overrides")
10689
10700
  return typing.cast(typing.Optional[typing.List[ContainerOverride]], result)
10690
10701
 
10702
+ @builtins.property
10703
+ def propagated_tag_source(self) -> typing.Optional[_PropagatedTagSource_ad4e874a]:
10704
+ '''Specifies whether to propagate the tags from the task definition to the task.
10705
+
10706
+ An error will be received if you specify the SERVICE option when running a task.
10707
+
10708
+ :default: - No tags are propagated.
10709
+
10710
+ :see: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html#ECS-RunTask-request-propagateTags
10711
+ '''
10712
+ result = self._values.get("propagated_tag_source")
10713
+ return typing.cast(typing.Optional[_PropagatedTagSource_ad4e874a], result)
10714
+
10691
10715
  @builtins.property
10692
10716
  def revision_number(self) -> typing.Optional[jsii.Number]:
10693
10717
  '''The revision number of ECS task definiton family.
@@ -19035,7 +19059,7 @@ class EvaluateExpression(
19035
19059
  create_message = tasks.EvaluateExpression(self, "Create message",
19036
19060
  # Note: this is a string inside a string.
19037
19061
  expression="`Now waiting ${$.waitSeconds} seconds...`",
19038
- runtime=lambda_.Runtime.NODEJS_14_X,
19062
+ runtime=lambda_.Runtime.NODEJS_16_X,
19039
19063
  result_path="$.message"
19040
19064
  )
19041
19065
 
@@ -19188,7 +19212,7 @@ class EvaluateExpressionProps(_TaskStateBaseProps_3a62b6d0):
19188
19212
  create_message = tasks.EvaluateExpression(self, "Create message",
19189
19213
  # Note: this is a string inside a string.
19190
19214
  expression="`Now waiting ${$.waitSeconds} seconds...`",
19191
- runtime=lambda_.Runtime.NODEJS_14_X,
19215
+ runtime=lambda_.Runtime.NODEJS_16_X,
19192
19216
  result_path="$.message"
19193
19217
  )
19194
19218
 
@@ -20703,8 +20727,7 @@ class HttpMethod(enum.Enum):
20703
20727
 
20704
20728
  Example::
20705
20729
 
20706
- # Example automatically generated from non-compiling source. May contain errors.
20707
- import aws_cdk.aws_apigatewayv2 as apigatewayv2
20730
+ import aws_cdk.aws_apigatewayv2_alpha as apigatewayv2
20708
20731
 
20709
20732
  http_api = apigatewayv2.HttpApi(self, "MyHttpApi")
20710
20733
 
@@ -26125,7 +26148,7 @@ class SnsPublish(
26125
26148
  create_message = tasks.EvaluateExpression(self, "Create message",
26126
26149
  # Note: this is a string inside a string.
26127
26150
  expression="`Now waiting ${$.waitSeconds} seconds...`",
26128
- runtime=lambda_.Runtime.NODEJS_14_X,
26151
+ runtime=lambda_.Runtime.NODEJS_16_X,
26129
26152
  result_path="$.message"
26130
26153
  )
26131
26154
 
@@ -26296,7 +26319,7 @@ class SnsPublishProps(_TaskStateBaseProps_3a62b6d0):
26296
26319
  create_message = tasks.EvaluateExpression(self, "Create message",
26297
26320
  # Note: this is a string inside a string.
26298
26321
  expression="`Now waiting ${$.waitSeconds} seconds...`",
26299
- runtime=lambda_.Runtime.NODEJS_14_X,
26322
+ runtime=lambda_.Runtime.NODEJS_16_X,
26300
26323
  result_path="$.message"
26301
26324
  )
26302
26325
 
@@ -28860,7 +28883,8 @@ class EcsEc2LaunchTarget(
28860
28883
  placement_constraints=[
28861
28884
  ecs.PlacementConstraint.member_of("blieptuut")
28862
28885
  ]
28863
- )
28886
+ ),
28887
+ propagated_tag_source=ecs.PropagatedTagSource.TASK_DEFINITION
28864
28888
  )
28865
28889
  '''
28866
28890
 
@@ -28943,7 +28967,8 @@ class EcsFargateLaunchTarget(
28943
28967
  container_definition=container_definition,
28944
28968
  environment=[tasks.TaskEnvironmentVariable(name="SOME_KEY", value=sfn.JsonPath.string_at("$.SomeKey"))]
28945
28969
  )],
28946
- launch_target=tasks.EcsFargateLaunchTarget()
28970
+ launch_target=tasks.EcsFargateLaunchTarget(),
28971
+ propagated_tag_source=ecs.PropagatedTagSource.TASK_DEFINITION
28947
28972
  )
28948
28973
  '''
28949
28974
 
@@ -30107,6 +30132,7 @@ def _typecheckingstub__1b9fa1de6876853cd0aa59517079cbcfc7017daf643f17b13556a7a5f
30107
30132
  task_definition: _TaskDefinition_a541a103,
30108
30133
  assign_public_ip: typing.Optional[builtins.bool] = None,
30109
30134
  container_overrides: typing.Optional[typing.Sequence[typing.Union[ContainerOverride, typing.Dict[builtins.str, typing.Any]]]] = None,
30135
+ propagated_tag_source: typing.Optional[_PropagatedTagSource_ad4e874a] = None,
30110
30136
  revision_number: typing.Optional[jsii.Number] = None,
30111
30137
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
30112
30138
  subnets: typing.Optional[typing.Union[_SubnetSelection_e57d76df, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -30143,6 +30169,7 @@ def _typecheckingstub__4f880997570006602fac387ce93510039132ec3f42612722766b67ec6
30143
30169
  task_definition: _TaskDefinition_a541a103,
30144
30170
  assign_public_ip: typing.Optional[builtins.bool] = None,
30145
30171
  container_overrides: typing.Optional[typing.Sequence[typing.Union[ContainerOverride, typing.Dict[builtins.str, typing.Any]]]] = None,
30172
+ propagated_tag_source: typing.Optional[_PropagatedTagSource_ad4e874a] = None,
30146
30173
  revision_number: typing.Optional[jsii.Number] = None,
30147
30174
  security_groups: typing.Optional[typing.Sequence[_ISecurityGroup_acf8a799]] = None,
30148
30175
  subnets: typing.Optional[typing.Union[_SubnetSelection_e57d76df, typing.Dict[builtins.str, typing.Any]]] = None,