aws-cdk-lib 2.189.0__py3-none-any.whl → 2.190.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 (53) hide show
  1. aws_cdk/__init__.py +16 -2
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.189.0.jsii.tgz → aws-cdk-lib@2.190.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +6 -6
  5. aws_cdk/aws_apigatewayv2/__init__.py +374 -6
  6. aws_cdk/aws_applicationautoscaling/__init__.py +16 -10
  7. aws_cdk/aws_applicationsignals/__init__.py +204 -31
  8. aws_cdk/aws_backup/__init__.py +0 -41
  9. aws_cdk/aws_batch/__init__.py +215 -0
  10. aws_cdk/aws_bedrock/__init__.py +287 -0
  11. aws_cdk/aws_cleanrooms/__init__.py +1392 -78
  12. aws_cdk/aws_cloudfront/__init__.py +1 -0
  13. aws_cdk/aws_cloudtrail/__init__.py +24 -26
  14. aws_cdk/aws_codebuild/__init__.py +59 -7
  15. aws_cdk/aws_dms/__init__.py +43 -0
  16. aws_cdk/aws_ec2/__init__.py +364 -30
  17. aws_cdk/aws_ecs/__init__.py +36 -5
  18. aws_cdk/aws_eks/__init__.py +2 -100
  19. aws_cdk/aws_elasticache/__init__.py +6 -11
  20. aws_cdk/aws_elasticloadbalancingv2/__init__.py +341 -0
  21. aws_cdk/aws_events/__init__.py +67 -13
  22. aws_cdk/aws_fsx/__init__.py +9 -21
  23. aws_cdk/aws_iam/__init__.py +1 -1
  24. aws_cdk/aws_iot/__init__.py +6 -6
  25. aws_cdk/aws_kafkaconnect/__init__.py +2 -2
  26. aws_cdk/aws_kinesis/__init__.py +44 -0
  27. aws_cdk/aws_lex/__init__.py +615 -39
  28. aws_cdk/aws_location/__init__.py +4 -4
  29. aws_cdk/aws_macie/__init__.py +14 -3
  30. aws_cdk/aws_memorydb/__init__.py +87 -0
  31. aws_cdk/aws_msk/__init__.py +226 -127
  32. aws_cdk/aws_neptune/__init__.py +0 -8
  33. aws_cdk/aws_opensearchservice/__init__.py +64 -56
  34. aws_cdk/aws_paymentcryptography/__init__.py +41 -0
  35. aws_cdk/aws_qbusiness/__init__.py +175 -3
  36. aws_cdk/aws_quicksight/__init__.py +393 -0
  37. aws_cdk/aws_rds/__init__.py +113 -120
  38. aws_cdk/aws_redshiftserverless/__init__.py +4 -14
  39. aws_cdk/aws_route53resolver/__init__.py +60 -9
  40. aws_cdk/aws_s3/__init__.py +34 -1
  41. aws_cdk/aws_s3_deployment/__init__.py +202 -5
  42. aws_cdk/aws_sagemaker/__init__.py +40 -40
  43. aws_cdk/aws_ssmquicksetup/__init__.py +3 -3
  44. aws_cdk/aws_stepfunctions/__init__.py +720 -45
  45. aws_cdk/aws_transfer/__init__.py +55 -2
  46. aws_cdk/custom_resources/__init__.py +5 -5
  47. aws_cdk/pipelines/__init__.py +1 -2
  48. {aws_cdk_lib-2.189.0.dist-info → aws_cdk_lib-2.190.0.dist-info}/METADATA +1 -1
  49. {aws_cdk_lib-2.189.0.dist-info → aws_cdk_lib-2.190.0.dist-info}/RECORD +53 -53
  50. {aws_cdk_lib-2.189.0.dist-info → aws_cdk_lib-2.190.0.dist-info}/LICENSE +0 -0
  51. {aws_cdk_lib-2.189.0.dist-info → aws_cdk_lib-2.190.0.dist-info}/NOTICE +0 -0
  52. {aws_cdk_lib-2.189.0.dist-info → aws_cdk_lib-2.190.0.dist-info}/WHEEL +0 -0
  53. {aws_cdk_lib-2.189.0.dist-info → aws_cdk_lib-2.190.0.dist-info}/top_level.txt +0 -0
@@ -1892,7 +1892,7 @@ class CfnResolverConfig(
1892
1892
  :param scope: Scope in which this resource is defined.
1893
1893
  :param id: Construct identifier for this resource (unique in its scope).
1894
1894
  :param autodefined_reverse_flag: Represents the desired status of ``AutodefinedReverse`` . The only supported value on creation is ``DISABLE`` . Deletion of this resource will return ``AutodefinedReverse`` to its default value of ``ENABLED`` .
1895
- :param resource_id: The ID of the Amazon Virtual Private Cloud VPC that you're configuring Resolver for.
1895
+ :param resource_id: The ID of the Amazon Virtual Private Cloud VPC or a Route 53 Profile that you're configuring Resolver for.
1896
1896
  '''
1897
1897
  if __debug__:
1898
1898
  type_hints = typing.get_type_hints(_typecheckingstub__35122d782a5f80846e3948e7eb0337b124eee2f562394f9f0ac3811b76027fa7)
@@ -1984,7 +1984,7 @@ class CfnResolverConfig(
1984
1984
  @builtins.property
1985
1985
  @jsii.member(jsii_name="resourceId")
1986
1986
  def resource_id(self) -> builtins.str:
1987
- '''The ID of the Amazon Virtual Private Cloud VPC that you're configuring Resolver for.'''
1987
+ '''The ID of the Amazon Virtual Private Cloud VPC or a Route 53 Profile that you're configuring Resolver for.'''
1988
1988
  return typing.cast(builtins.str, jsii.get(self, "resourceId"))
1989
1989
 
1990
1990
  @resource_id.setter
@@ -2013,7 +2013,7 @@ class CfnResolverConfigProps:
2013
2013
  '''Properties for defining a ``CfnResolverConfig``.
2014
2014
 
2015
2015
  :param autodefined_reverse_flag: Represents the desired status of ``AutodefinedReverse`` . The only supported value on creation is ``DISABLE`` . Deletion of this resource will return ``AutodefinedReverse`` to its default value of ``ENABLED`` .
2016
- :param resource_id: The ID of the Amazon Virtual Private Cloud VPC that you're configuring Resolver for.
2016
+ :param resource_id: The ID of the Amazon Virtual Private Cloud VPC or a Route 53 Profile that you're configuring Resolver for.
2017
2017
 
2018
2018
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverconfig.html
2019
2019
  :exampleMetadata: fixture=_generated
@@ -2052,7 +2052,7 @@ class CfnResolverConfigProps:
2052
2052
 
2053
2053
  @builtins.property
2054
2054
  def resource_id(self) -> builtins.str:
2055
- '''The ID of the Amazon Virtual Private Cloud VPC that you're configuring Resolver for.
2055
+ '''The ID of the Amazon Virtual Private Cloud VPC or a Route 53 Profile that you're configuring Resolver for.
2056
2056
 
2057
2057
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverconfig.html#cfn-route53resolver-resolverconfig-resourceid
2058
2058
  '''
@@ -2904,7 +2904,7 @@ class CfnResolverEndpointProps:
2904
2904
  )
2905
2905
 
2906
2906
 
2907
- @jsii.implements(_IInspectable_c2943556)
2907
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
2908
2908
  class CfnResolverQueryLoggingConfig(
2909
2909
  _CfnResource_9df397a6,
2910
2910
  metaclass=jsii.JSIIMeta,
@@ -2924,7 +2924,11 @@ class CfnResolverQueryLoggingConfig(
2924
2924
 
2925
2925
  cfn_resolver_query_logging_config = route53resolver.CfnResolverQueryLoggingConfig(self, "MyCfnResolverQueryLoggingConfig",
2926
2926
  destination_arn="destinationArn",
2927
- name="name"
2927
+ name="name",
2928
+ tags=[CfnTag(
2929
+ key="key",
2930
+ value="value"
2931
+ )]
2928
2932
  )
2929
2933
  '''
2930
2934
 
@@ -2935,19 +2939,21 @@ class CfnResolverQueryLoggingConfig(
2935
2939
  *,
2936
2940
  destination_arn: typing.Optional[builtins.str] = None,
2937
2941
  name: typing.Optional[builtins.str] = None,
2942
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2938
2943
  ) -> None:
2939
2944
  '''
2940
2945
  :param scope: Scope in which this resource is defined.
2941
2946
  :param id: Construct identifier for this resource (unique in its scope).
2942
2947
  :param destination_arn: The ARN of the resource that you want Resolver to send query logs: an Amazon S3 bucket, a CloudWatch Logs log group, or a Kinesis Data Firehose delivery stream.
2943
2948
  :param name: The name of the query logging configuration.
2949
+ :param tags: An array of key-value pairs to apply to this resource.
2944
2950
  '''
2945
2951
  if __debug__:
2946
2952
  type_hints = typing.get_type_hints(_typecheckingstub__24f7f7cd30eb329e550fcb22ab4dcca0511ccbc9db92caea497cb901e8cab5a8)
2947
2953
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
2948
2954
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
2949
2955
  props = CfnResolverQueryLoggingConfigProps(
2950
- destination_arn=destination_arn, name=name
2956
+ destination_arn=destination_arn, name=name, tags=tags
2951
2957
  )
2952
2958
 
2953
2959
  jsii.create(self.__class__, self, [scope, id, props])
@@ -3065,6 +3071,12 @@ class CfnResolverQueryLoggingConfig(
3065
3071
  '''
3066
3072
  return typing.cast(builtins.str, jsii.get(self, "attrStatus"))
3067
3073
 
3074
+ @builtins.property
3075
+ @jsii.member(jsii_name="cdkTagManager")
3076
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
3077
+ '''Tag Manager which manages the tags for this resource.'''
3078
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
3079
+
3068
3080
  @builtins.property
3069
3081
  @jsii.member(jsii_name="cfnProperties")
3070
3082
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
@@ -3096,6 +3108,19 @@ class CfnResolverQueryLoggingConfig(
3096
3108
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3097
3109
  jsii.set(self, "name", value) # pyright: ignore[reportArgumentType]
3098
3110
 
3111
+ @builtins.property
3112
+ @jsii.member(jsii_name="tags")
3113
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3114
+ '''An array of key-value pairs to apply to this resource.'''
3115
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
3116
+
3117
+ @tags.setter
3118
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
3119
+ if __debug__:
3120
+ type_hints = typing.get_type_hints(_typecheckingstub__4d67bb3c387656de81dd27d6b307d1056ce141c477c73c957337cdcf07b4990d)
3121
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3122
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
3123
+
3099
3124
 
3100
3125
  @jsii.implements(_IInspectable_c2943556)
3101
3126
  class CfnResolverQueryLoggingConfigAssociation(
@@ -3347,7 +3372,7 @@ class CfnResolverQueryLoggingConfigAssociationProps:
3347
3372
  @jsii.data_type(
3348
3373
  jsii_type="aws-cdk-lib.aws_route53resolver.CfnResolverQueryLoggingConfigProps",
3349
3374
  jsii_struct_bases=[],
3350
- name_mapping={"destination_arn": "destinationArn", "name": "name"},
3375
+ name_mapping={"destination_arn": "destinationArn", "name": "name", "tags": "tags"},
3351
3376
  )
3352
3377
  class CfnResolverQueryLoggingConfigProps:
3353
3378
  def __init__(
@@ -3355,11 +3380,13 @@ class CfnResolverQueryLoggingConfigProps:
3355
3380
  *,
3356
3381
  destination_arn: typing.Optional[builtins.str] = None,
3357
3382
  name: typing.Optional[builtins.str] = None,
3383
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3358
3384
  ) -> None:
3359
3385
  '''Properties for defining a ``CfnResolverQueryLoggingConfig``.
3360
3386
 
3361
3387
  :param destination_arn: The ARN of the resource that you want Resolver to send query logs: an Amazon S3 bucket, a CloudWatch Logs log group, or a Kinesis Data Firehose delivery stream.
3362
3388
  :param name: The name of the query logging configuration.
3389
+ :param tags: An array of key-value pairs to apply to this resource.
3363
3390
 
3364
3391
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfig.html
3365
3392
  :exampleMetadata: fixture=_generated
@@ -3372,18 +3399,25 @@ class CfnResolverQueryLoggingConfigProps:
3372
3399
 
3373
3400
  cfn_resolver_query_logging_config_props = route53resolver.CfnResolverQueryLoggingConfigProps(
3374
3401
  destination_arn="destinationArn",
3375
- name="name"
3402
+ name="name",
3403
+ tags=[CfnTag(
3404
+ key="key",
3405
+ value="value"
3406
+ )]
3376
3407
  )
3377
3408
  '''
3378
3409
  if __debug__:
3379
3410
  type_hints = typing.get_type_hints(_typecheckingstub__ee1cbce67551eb150646abe50220d9cf7ebeceb023635a7a5fafd4c05efa335a)
3380
3411
  check_type(argname="argument destination_arn", value=destination_arn, expected_type=type_hints["destination_arn"])
3381
3412
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
3413
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
3382
3414
  self._values: typing.Dict[builtins.str, typing.Any] = {}
3383
3415
  if destination_arn is not None:
3384
3416
  self._values["destination_arn"] = destination_arn
3385
3417
  if name is not None:
3386
3418
  self._values["name"] = name
3419
+ if tags is not None:
3420
+ self._values["tags"] = tags
3387
3421
 
3388
3422
  @builtins.property
3389
3423
  def destination_arn(self) -> typing.Optional[builtins.str]:
@@ -3403,6 +3437,15 @@ class CfnResolverQueryLoggingConfigProps:
3403
3437
  result = self._values.get("name")
3404
3438
  return typing.cast(typing.Optional[builtins.str], result)
3405
3439
 
3440
+ @builtins.property
3441
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3442
+ '''An array of key-value pairs to apply to this resource.
3443
+
3444
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-resolverqueryloggingconfig.html#cfn-route53resolver-resolverqueryloggingconfig-tags
3445
+ '''
3446
+ result = self._values.get("tags")
3447
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
3448
+
3406
3449
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
3407
3450
  return isinstance(rhs, self.__class__) and rhs._values == self._values
3408
3451
 
@@ -4704,6 +4747,7 @@ def _typecheckingstub__24f7f7cd30eb329e550fcb22ab4dcca0511ccbc9db92caea497cb901e
4704
4747
  *,
4705
4748
  destination_arn: typing.Optional[builtins.str] = None,
4706
4749
  name: typing.Optional[builtins.str] = None,
4750
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4707
4751
  ) -> None:
4708
4752
  """Type checking stubs"""
4709
4753
  pass
@@ -4732,6 +4776,12 @@ def _typecheckingstub__619bc974053932510090c83ab6e45a2a1bce6285058cdfad4eadcaf81
4732
4776
  """Type checking stubs"""
4733
4777
  pass
4734
4778
 
4779
+ def _typecheckingstub__4d67bb3c387656de81dd27d6b307d1056ce141c477c73c957337cdcf07b4990d(
4780
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
4781
+ ) -> None:
4782
+ """Type checking stubs"""
4783
+ pass
4784
+
4735
4785
  def _typecheckingstub__6bab4a8e285b8f5bd00ec7784b85dfa36801874e1e16d9ee8e779b0fea8fba0e(
4736
4786
  scope: _constructs_77d1e7e8.Construct,
4737
4787
  id: builtins.str,
@@ -4778,6 +4828,7 @@ def _typecheckingstub__ee1cbce67551eb150646abe50220d9cf7ebeceb023635a7a5fafd4c05
4778
4828
  *,
4779
4829
  destination_arn: typing.Optional[builtins.str] = None,
4780
4830
  name: typing.Optional[builtins.str] = None,
4831
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4781
4832
  ) -> None:
4782
4833
  """Type checking stubs"""
4783
4834
  pass
@@ -903,12 +903,15 @@ To replicate objects to a destination bucket, you can specify the `replicationRu
903
903
  ```python
904
904
  # destination_bucket1: s3.IBucket
905
905
  # destination_bucket2: s3.IBucket
906
+ # replication_role: iam.IRole
906
907
  # kms_key: kms.IKey
907
908
 
908
909
 
909
910
  source_bucket = s3.Bucket(self, "SourceBucket",
910
911
  # Versioning must be enabled on both the source and destination bucket
911
912
  versioned=True,
913
+ # Optional. If not specified, a new role will be created.
914
+ replication_role=replication_role,
912
915
  replication_rules=[s3.ReplicationRule(
913
916
  # The destination bucket for the replication rule.
914
917
  destination=destination_bucket1,
@@ -976,10 +979,12 @@ so you will need to [configure the necessary bucket policy](https://docs.aws.ama
976
979
  ```python
977
980
  # The destination bucket in a different account.
978
981
  # destination_bucket: s3.IBucket
979
-
982
+ # replication_role: iam.IRole
980
983
 
981
984
  source_bucket = s3.Bucket(self, "SourceBucket",
982
985
  versioned=True,
986
+ # Optional. If not specified, a new role will be created.
987
+ replication_role=replication_role,
983
988
  replication_rules=[s3.ReplicationRule(
984
989
  destination=destination_bucket,
985
990
  priority=1,
@@ -2029,6 +2034,7 @@ class BucketPolicyProps:
2029
2034
  "object_ownership": "objectOwnership",
2030
2035
  "public_read_access": "publicReadAccess",
2031
2036
  "removal_policy": "removalPolicy",
2037
+ "replication_role": "replicationRole",
2032
2038
  "replication_rules": "replicationRules",
2033
2039
  "server_access_logs_bucket": "serverAccessLogsBucket",
2034
2040
  "server_access_logs_prefix": "serverAccessLogsPrefix",
@@ -2068,6 +2074,7 @@ class BucketProps:
2068
2074
  object_ownership: typing.Optional["ObjectOwnership"] = None,
2069
2075
  public_read_access: typing.Optional[builtins.bool] = None,
2070
2076
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
2077
+ replication_role: typing.Optional[_IRole_235f5d8e] = None,
2071
2078
  replication_rules: typing.Optional[typing.Sequence[typing.Union["ReplicationRule", typing.Dict[builtins.str, typing.Any]]]] = None,
2072
2079
  server_access_logs_bucket: typing.Optional["IBucket"] = None,
2073
2080
  server_access_logs_prefix: typing.Optional[builtins.str] = None,
@@ -2103,6 +2110,7 @@ class BucketProps:
2103
2110
  :param object_ownership: The objectOwnership of the bucket. Default: - No ObjectOwnership configuration. By default, Amazon S3 sets Object Ownership to ``Bucket owner enforced``. This means ACLs are disabled and the bucket owner will own every object.
2104
2111
  :param public_read_access: Grants public read access to all objects in the bucket. Similar to calling ``bucket.grantPublicAccess()`` Default: false
2105
2112
  :param removal_policy: Policy to apply when the bucket is removed from this stack. Default: - The bucket will be orphaned.
2113
+ :param replication_role: The role to be used by the replication. When setting this property, you must also set ``replicationRules``. Default: - a new role will be created.
2106
2114
  :param replication_rules: A container for one or more replication rules. Default: - No replication
2107
2115
  :param server_access_logs_bucket: Destination bucket for the server access logs. Default: - If "serverAccessLogsPrefix" undefined - access logs disabled, otherwise - log to current bucket.
2108
2116
  :param server_access_logs_prefix: Optional log file prefix to use for the bucket's access logs. If defined without "serverAccessLogsBucket", enables access logs to current bucket with this prefix. Default: - No log file prefix
@@ -2161,6 +2169,7 @@ class BucketProps:
2161
2169
  check_type(argname="argument object_ownership", value=object_ownership, expected_type=type_hints["object_ownership"])
2162
2170
  check_type(argname="argument public_read_access", value=public_read_access, expected_type=type_hints["public_read_access"])
2163
2171
  check_type(argname="argument removal_policy", value=removal_policy, expected_type=type_hints["removal_policy"])
2172
+ check_type(argname="argument replication_role", value=replication_role, expected_type=type_hints["replication_role"])
2164
2173
  check_type(argname="argument replication_rules", value=replication_rules, expected_type=type_hints["replication_rules"])
2165
2174
  check_type(argname="argument server_access_logs_bucket", value=server_access_logs_bucket, expected_type=type_hints["server_access_logs_bucket"])
2166
2175
  check_type(argname="argument server_access_logs_prefix", value=server_access_logs_prefix, expected_type=type_hints["server_access_logs_prefix"])
@@ -2217,6 +2226,8 @@ class BucketProps:
2217
2226
  self._values["public_read_access"] = public_read_access
2218
2227
  if removal_policy is not None:
2219
2228
  self._values["removal_policy"] = removal_policy
2229
+ if replication_role is not None:
2230
+ self._values["replication_role"] = replication_role
2220
2231
  if replication_rules is not None:
2221
2232
  self._values["replication_rules"] = replication_rules
2222
2233
  if server_access_logs_bucket is not None:
@@ -2506,6 +2517,17 @@ class BucketProps:
2506
2517
  result = self._values.get("removal_policy")
2507
2518
  return typing.cast(typing.Optional[_RemovalPolicy_9f93c814], result)
2508
2519
 
2520
+ @builtins.property
2521
+ def replication_role(self) -> typing.Optional[_IRole_235f5d8e]:
2522
+ '''The role to be used by the replication.
2523
+
2524
+ When setting this property, you must also set ``replicationRules``.
2525
+
2526
+ :default: - a new role will be created.
2527
+ '''
2528
+ result = self._values.get("replication_role")
2529
+ return typing.cast(typing.Optional[_IRole_235f5d8e], result)
2530
+
2509
2531
  @builtins.property
2510
2532
  def replication_rules(self) -> typing.Optional[typing.List["ReplicationRule"]]:
2511
2533
  '''A container for one or more replication rules.
@@ -15769,12 +15791,15 @@ class Filter:
15769
15791
 
15770
15792
  # destination_bucket1: s3.IBucket
15771
15793
  # destination_bucket2: s3.IBucket
15794
+ # replication_role: iam.IRole
15772
15795
  # kms_key: kms.IKey
15773
15796
 
15774
15797
 
15775
15798
  source_bucket = s3.Bucket(self, "SourceBucket",
15776
15799
  # Versioning must be enabled on both the source and destination bucket
15777
15800
  versioned=True,
15801
+ # Optional. If not specified, a new role will be created.
15802
+ replication_role=replication_role,
15778
15803
  replication_rules=[s3.ReplicationRule(
15779
15804
  # The destination bucket for the replication rule.
15780
15805
  destination=destination_bucket1,
@@ -18957,12 +18982,15 @@ class ReplicationTimeValue(
18957
18982
 
18958
18983
  # destination_bucket1: s3.IBucket
18959
18984
  # destination_bucket2: s3.IBucket
18985
+ # replication_role: iam.IRole
18960
18986
  # kms_key: kms.IKey
18961
18987
 
18962
18988
 
18963
18989
  source_bucket = s3.Bucket(self, "SourceBucket",
18964
18990
  # Versioning must be enabled on both the source and destination bucket
18965
18991
  versioned=True,
18992
+ # Optional. If not specified, a new role will be created.
18993
+ replication_role=replication_role,
18966
18994
  replication_rules=[s3.ReplicationRule(
18967
18995
  # The destination bucket for the replication rule.
18968
18996
  destination=destination_bucket1,
@@ -20646,6 +20674,7 @@ class Bucket(
20646
20674
  object_ownership: typing.Optional[ObjectOwnership] = None,
20647
20675
  public_read_access: typing.Optional[builtins.bool] = None,
20648
20676
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
20677
+ replication_role: typing.Optional[_IRole_235f5d8e] = None,
20649
20678
  replication_rules: typing.Optional[typing.Sequence[typing.Union[ReplicationRule, typing.Dict[builtins.str, typing.Any]]]] = None,
20650
20679
  server_access_logs_bucket: typing.Optional[IBucket] = None,
20651
20680
  server_access_logs_prefix: typing.Optional[builtins.str] = None,
@@ -20683,6 +20712,7 @@ class Bucket(
20683
20712
  :param object_ownership: The objectOwnership of the bucket. Default: - No ObjectOwnership configuration. By default, Amazon S3 sets Object Ownership to ``Bucket owner enforced``. This means ACLs are disabled and the bucket owner will own every object.
20684
20713
  :param public_read_access: Grants public read access to all objects in the bucket. Similar to calling ``bucket.grantPublicAccess()`` Default: false
20685
20714
  :param removal_policy: Policy to apply when the bucket is removed from this stack. Default: - The bucket will be orphaned.
20715
+ :param replication_role: The role to be used by the replication. When setting this property, you must also set ``replicationRules``. Default: - a new role will be created.
20686
20716
  :param replication_rules: A container for one or more replication rules. Default: - No replication
20687
20717
  :param server_access_logs_bucket: Destination bucket for the server access logs. Default: - If "serverAccessLogsPrefix" undefined - access logs disabled, otherwise - log to current bucket.
20688
20718
  :param server_access_logs_prefix: Optional log file prefix to use for the bucket's access logs. If defined without "serverAccessLogsBucket", enables access logs to current bucket with this prefix. Default: - No log file prefix
@@ -20722,6 +20752,7 @@ class Bucket(
20722
20752
  object_ownership=object_ownership,
20723
20753
  public_read_access=public_read_access,
20724
20754
  removal_policy=removal_policy,
20755
+ replication_role=replication_role,
20725
20756
  replication_rules=replication_rules,
20726
20757
  server_access_logs_bucket=server_access_logs_bucket,
20727
20758
  server_access_logs_prefix=server_access_logs_prefix,
@@ -21314,6 +21345,7 @@ def _typecheckingstub__f2ff878f2dca3dd037442155369c2fcc7bd194425c0967a7fd7bfa576
21314
21345
  object_ownership: typing.Optional[ObjectOwnership] = None,
21315
21346
  public_read_access: typing.Optional[builtins.bool] = None,
21316
21347
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
21348
+ replication_role: typing.Optional[_IRole_235f5d8e] = None,
21317
21349
  replication_rules: typing.Optional[typing.Sequence[typing.Union[ReplicationRule, typing.Dict[builtins.str, typing.Any]]]] = None,
21318
21350
  server_access_logs_bucket: typing.Optional[IBucket] = None,
21319
21351
  server_access_logs_prefix: typing.Optional[builtins.str] = None,
@@ -23429,6 +23461,7 @@ def _typecheckingstub__25f24cbf29544d9c579e765350a7b51ec4ec81bc2cc07a21660738a1e
23429
23461
  object_ownership: typing.Optional[ObjectOwnership] = None,
23430
23462
  public_read_access: typing.Optional[builtins.bool] = None,
23431
23463
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
23464
+ replication_role: typing.Optional[_IRole_235f5d8e] = None,
23432
23465
  replication_rules: typing.Optional[typing.Sequence[typing.Union[ReplicationRule, typing.Dict[builtins.str, typing.Any]]]] = None,
23433
23466
  server_access_logs_bucket: typing.Optional[IBucket] = None,
23434
23467
  server_access_logs_prefix: typing.Optional[builtins.str] = None,