aws-cdk-lib 2.128.0__py3-none-any.whl → 2.129.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 (98) hide show
  1. aws_cdk/__init__.py +2 -10
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.128.0.jsii.tgz → aws-cdk-lib@2.129.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +6 -24
  5. aws_cdk/aws_amplify/__init__.py +1 -2
  6. aws_cdk/aws_appconfig/__init__.py +0 -16
  7. aws_cdk/aws_applicationautoscaling/__init__.py +55 -22
  8. aws_cdk/aws_appstream/__init__.py +14 -14
  9. aws_cdk/aws_appsync/__init__.py +334 -3
  10. aws_cdk/aws_autoscaling/__init__.py +11 -7
  11. aws_cdk/aws_batch/__init__.py +137 -16
  12. aws_cdk/aws_cleanrooms/__init__.py +1 -2
  13. aws_cdk/aws_cloudformation/__init__.py +2 -10
  14. aws_cdk/aws_cloudfront/__init__.py +15 -8
  15. aws_cdk/aws_cloudfront/experimental/__init__.py +22 -0
  16. aws_cdk/aws_cloudfront_origins/__init__.py +332 -0
  17. aws_cdk/aws_cloudtrail/__init__.py +12 -2
  18. aws_cdk/aws_cloudwatch/__init__.py +4 -0
  19. aws_cdk/aws_codepipeline/__init__.py +463 -11
  20. aws_cdk/aws_cognito/__init__.py +0 -9
  21. aws_cdk/aws_config/__init__.py +2 -2
  22. aws_cdk/aws_connect/__init__.py +6 -1
  23. aws_cdk/aws_controltower/__init__.py +527 -7
  24. aws_cdk/aws_datasync/__init__.py +2 -2
  25. aws_cdk/aws_directoryservice/__init__.py +2 -3
  26. aws_cdk/aws_dynamodb/__init__.py +7 -0
  27. aws_cdk/aws_ec2/__init__.py +117 -210
  28. aws_cdk/aws_ecs/__init__.py +537 -3
  29. aws_cdk/aws_eks/__init__.py +1 -1
  30. aws_cdk/aws_elasticache/__init__.py +27 -20
  31. aws_cdk/aws_elasticloadbalancingv2/__init__.py +3 -4
  32. aws_cdk/aws_emr/__init__.py +23 -3
  33. aws_cdk/aws_events_targets/__init__.py +64 -20
  34. aws_cdk/aws_fis/__init__.py +4 -4
  35. aws_cdk/aws_frauddetector/__init__.py +3 -3
  36. aws_cdk/aws_globalaccelerator/__init__.py +2 -6
  37. aws_cdk/aws_glue/__init__.py +84 -55
  38. aws_cdk/aws_groundstation/__init__.py +8 -12
  39. aws_cdk/aws_guardduty/__init__.py +74 -70
  40. aws_cdk/aws_iam/__init__.py +16 -23
  41. aws_cdk/aws_imagebuilder/__init__.py +178 -156
  42. aws_cdk/aws_internetmonitor/__init__.py +12 -10
  43. aws_cdk/aws_iot/__init__.py +17 -10
  44. aws_cdk/aws_iotevents/__init__.py +4 -4
  45. aws_cdk/aws_iotfleetwise/__init__.py +10 -5
  46. aws_cdk/aws_iottwinmaker/__init__.py +3 -5
  47. aws_cdk/aws_iotwireless/__init__.py +35 -23
  48. aws_cdk/aws_kendra/__init__.py +36 -15
  49. aws_cdk/aws_kinesisfirehose/__init__.py +155 -114
  50. aws_cdk/aws_lambda/__init__.py +157 -12
  51. aws_cdk/aws_lambda_nodejs/__init__.py +22 -0
  52. aws_cdk/aws_lightsail/__init__.py +14 -18
  53. aws_cdk/aws_logs/__init__.py +15 -15
  54. aws_cdk/aws_mediaconnect/__init__.py +5 -3
  55. aws_cdk/aws_medialive/__init__.py +3 -12
  56. aws_cdk/aws_mediapackagev2/__init__.py +287 -286
  57. aws_cdk/aws_mediatailor/__init__.py +2 -2
  58. aws_cdk/aws_memorydb/__init__.py +2 -2
  59. aws_cdk/aws_msk/__init__.py +6 -3
  60. aws_cdk/aws_mwaa/__init__.py +10 -5
  61. aws_cdk/aws_neptunegraph/__init__.py +84 -66
  62. aws_cdk/aws_networkfirewall/__init__.py +5 -8
  63. aws_cdk/aws_networkmanager/__init__.py +3 -3
  64. aws_cdk/aws_nimblestudio/__init__.py +2 -4
  65. aws_cdk/aws_opensearchservice/__init__.py +6 -7
  66. aws_cdk/aws_osis/__init__.py +1 -3
  67. aws_cdk/aws_pinpoint/__init__.py +5 -5
  68. aws_cdk/aws_pipes/__init__.py +5 -5
  69. aws_cdk/aws_quicksight/__init__.py +5 -10
  70. aws_cdk/aws_rds/__init__.py +38 -21
  71. aws_cdk/aws_redshift/__init__.py +9 -5
  72. aws_cdk/aws_redshiftserverless/__init__.py +62 -38
  73. aws_cdk/aws_rolesanywhere/__init__.py +41 -53
  74. aws_cdk/aws_route53/__init__.py +532 -6
  75. aws_cdk/aws_route53recoverycontrol/__init__.py +1 -3
  76. aws_cdk/aws_route53recoveryreadiness/__init__.py +2 -2
  77. aws_cdk/aws_route53resolver/__init__.py +1 -4
  78. aws_cdk/aws_s3/__init__.py +3 -1
  79. aws_cdk/aws_s3objectlambda/__init__.py +7 -4
  80. aws_cdk/aws_s3outposts/__init__.py +1 -1
  81. aws_cdk/aws_sagemaker/__init__.py +111 -11
  82. aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -3
  83. aws_cdk/aws_sns/__init__.py +185 -38
  84. aws_cdk/aws_ssm/__init__.py +16 -16
  85. aws_cdk/aws_ssmincidents/__init__.py +1 -1
  86. aws_cdk/aws_synthetics/__init__.py +94 -21
  87. aws_cdk/aws_verifiedpermissions/__init__.py +1 -2
  88. aws_cdk/aws_vpclattice/__init__.py +8 -4
  89. aws_cdk/aws_wafv2/__init__.py +14 -59
  90. aws_cdk/aws_workspaces/__init__.py +5 -4
  91. aws_cdk/aws_workspacesweb/__init__.py +6 -12
  92. aws_cdk/triggers/__init__.py +22 -0
  93. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/METADATA +1 -1
  94. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/RECORD +98 -98
  95. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/LICENSE +0 -0
  96. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/NOTICE +0 -0
  97. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/WHEEL +0 -0
  98. {aws_cdk_lib-2.128.0.dist-info → aws_cdk_lib-2.129.0.dist-info}/top_level.txt +0 -0
@@ -2292,7 +2292,9 @@ class CfnAutoScalingGroup(
2292
2292
  For more information about Amazon EC2 Auto Scaling, see the `Amazon EC2 Auto Scaling User Guide <https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html>`_ .
2293
2293
  .. epigraph::
2294
2294
 
2295
- Amazon EC2 Auto Scaling configures instances launched as part of an Auto Scaling group using either a `launch template <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html>`_ or a launch configuration. We strongly recommend that you do not use launch configurations. They do not provide full functionality for Amazon EC2 Auto Scaling or Amazon EC2. For more information, see `Launch configurations <https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html>`_ and `Migrate AWS CloudFormation stacks from launch configurations to launch templates <https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html>`_ in the *Amazon EC2 Auto Scaling User Guide* .
2295
+ Amazon EC2 Auto Scaling configures instances launched as part of an Auto Scaling group using either a `launch template <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html>`_ or a launch configuration. We strongly recommend that you do not use launch configurations. For more information, see `Launch configurations <https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html>`_ in the *Amazon EC2 Auto Scaling User Guide* .
2296
+
2297
+ For help migrating from launch configurations to launch templates, see `Migrate AWS CloudFormation stacks from launch configurations to launch templates <https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html>`_ in the *Amazon EC2 Auto Scaling User Guide* .
2296
2298
 
2297
2299
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html
2298
2300
  :cloudformationResource: AWS::AutoScaling::AutoScalingGroup
@@ -3443,7 +3445,7 @@ class CfnAutoScalingGroup(
3443
3445
 
3444
3446
  You must specify ``VCpuCount`` and ``MemoryMiB`` . All other attributes are optional. Any unspecified optional attribute is set to its default.
3445
3447
 
3446
- For an example template, see `Auto scaling template snippets <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html>`_ .
3448
+ For an example template, see `Configure Amazon EC2 Auto Scaling resources <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-auto-scaling.html>`_ .
3447
3449
 
3448
3450
  For more information, see `Creating an Auto Scaling group using attribute-based instance type selection <https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html>`_ in the *Amazon EC2 Auto Scaling User Guide* . For help determining which instance types match your attributes before you apply them to your Auto Scaling group, see `Preview instance types with specified attributes <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-get-instance-types-from-instance-requirements>`_ in the *Amazon EC2 User Guide for Linux Instances* .
3449
3451
 
@@ -4521,7 +4523,7 @@ class CfnAutoScalingGroup(
4521
4523
 
4522
4524
  For information about creating a launch template, see `AWS::EC2::LaunchTemplate <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html>`_ and `Create a launch template for an Auto Scaling group <https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html>`_ in the *Amazon EC2 Auto Scaling User Guide* .
4523
4525
 
4524
- For examples of launch templates, see `Auto scaling template snippets <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html>`_ and the `Examples <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html#aws-resource-ec2-launchtemplate--examples>`_ section in the ``AWS::EC2::LaunchTemplate`` resource.
4526
+ For examples of launch templates, see `Create launch templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-launch-templates.html>`_ .
4525
4527
 
4526
4528
  :param version: The version number of the launch template. Specifying ``$Latest`` or ``$Default`` for the template version number is not supported. However, you can specify ``LatestVersionNumber`` or ``DefaultVersionNumber`` using the ``Fn::GetAtt`` intrinsic function. For more information, see `Fn::GetAtt <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-getatt.html>`_ . .. epigraph:: For an example of using the ``Fn::GetAtt`` function, see the `Examples <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html#aws-resource-autoscaling-autoscalinggroup--examples>`_ section of the ``AWS::AutoScaling::AutoScalingGroup`` resource.
4527
4529
  :param launch_template_id: The ID of the launch template. You must specify the ``LaunchTemplateID`` or the ``LaunchTemplateName`` , but not both.
@@ -5359,7 +5361,7 @@ class CfnAutoScalingGroup(
5359
5361
  ) -> None:
5360
5362
  '''A structure that specifies an Amazon SNS notification configuration for the ``NotificationConfigurations`` property of the `AWS::AutoScaling::AutoScalingGroup <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-autoscalinggroup.html>`_ resource.
5361
5363
 
5362
- For an example template snippet, see `Auto scaling template snippets <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html>`_ .
5364
+ For an example template snippet, see `Configure Amazon EC2 Auto Scaling resources <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-auto-scaling.html>`_ .
5363
5365
 
5364
5366
  For more information, see `Get Amazon SNS notifications when your Auto Scaling group scales <https://docs.aws.amazon.com/autoscaling/ec2/userguide/ASGettingNotifications.html>`_ in the *Amazon EC2 Auto Scaling User Guide* .
5365
5367
 
@@ -6444,10 +6446,12 @@ class CfnLaunchConfiguration(
6444
6446
  ):
6445
6447
  '''The ``AWS::AutoScaling::LaunchConfiguration`` resource specifies the launch configuration that can be used by an Auto Scaling group to configure Amazon EC2 instances.
6446
6448
 
6447
- When you update the launch configuration for an Auto Scaling group, CloudFormation deletes that resource and creates a new launch configuration with the updated properties and a new name. Existing instances are not affected. To update existing instances when you update the ``AWS::AutoScaling::LaunchConfiguration`` resource, you can specify an `UpdatePolicy attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html>`_ for the group. You can find sample update policies for rolling updates in `Auto scaling template snippets <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html>`_ .
6449
+ When you update the launch configuration for an Auto Scaling group, CloudFormation deletes that resource and creates a new launch configuration with the updated properties and a new name. Existing instances are not affected. To update existing instances when you update the ``AWS::AutoScaling::LaunchConfiguration`` resource, you can specify an `UpdatePolicy attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html>`_ for the group. You can find sample update policies for rolling updates in `Configure Amazon EC2 Auto Scaling resources <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-auto-scaling.html>`_ .
6448
6450
  .. epigraph::
6449
6451
 
6450
- Amazon EC2 Auto Scaling configures instances launched as part of an Auto Scaling group using either a `launch template <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html>`_ or a launch configuration. We strongly recommend that you do not use launch configurations. They do not provide full functionality for Amazon EC2 Auto Scaling or Amazon EC2. For more information, see `Launch configurations <https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html>`_ and `Migrate AWS CloudFormation stacks from launch configurations to launch templates <https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html>`_ in the *Amazon EC2 Auto Scaling User Guide* .
6452
+ Amazon EC2 Auto Scaling configures instances launched as part of an Auto Scaling group using either a `launch template <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html>`_ or a launch configuration. We strongly recommend that you do not use launch configurations. For more information, see `Launch configurations <https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-configurations.html>`_ in the *Amazon EC2 Auto Scaling User Guide* .
6453
+
6454
+ For help migrating from launch configurations to launch templates, see `Migrate AWS CloudFormation stacks from launch configurations to launch templates <https://docs.aws.amazon.com/autoscaling/ec2/userguide/migrate-launch-configurations-with-cloudformation.html>`_ in the *Amazon EC2 Auto Scaling User Guide* .
6451
6455
 
6452
6456
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-launchconfiguration.html
6453
6457
  :cloudformationResource: AWS::AutoScaling::LaunchConfiguration
@@ -11052,7 +11056,7 @@ class CfnScheduledAction(
11052
11056
  ):
11053
11057
  '''The ``AWS::AutoScaling::ScheduledAction`` resource specifies an Amazon EC2 Auto Scaling scheduled action so that the Auto Scaling group can change the number of instances available for your application in response to predictable load changes.
11054
11058
 
11055
- When you update a stack with an Auto Scaling group and scheduled action, CloudFormation always sets the min size, max size, and desired capacity properties of your group to the values that are defined in the ``AWS::AutoScaling::AutoScalingGroup`` section of your template. However, you might not want CloudFormation to do that when you have a scheduled action in effect. You can use an `UpdatePolicy attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html>`_ to prevent CloudFormation from changing the min size, max size, or desired capacity property values during a stack update unless you modified the individual values in your template. If you have rolling updates enabled, before you can update the Auto Scaling group, you must suspend scheduled actions by specifying an `UpdatePolicy attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html>`_ for the Auto Scaling group. You can find a sample update policy for rolling updates in `Auto scaling template snippets <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-autoscaling.html>`_ .
11059
+ When you update a stack with an Auto Scaling group and scheduled action, CloudFormation always sets the min size, max size, and desired capacity properties of your group to the values that are defined in the ``AWS::AutoScaling::AutoScalingGroup`` section of your template. However, you might not want CloudFormation to do that when you have a scheduled action in effect. You can use an `UpdatePolicy attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html>`_ to prevent CloudFormation from changing the min size, max size, or desired capacity property values during a stack update unless you modified the individual values in your template. If you have rolling updates enabled, before you can update the Auto Scaling group, you must suspend scheduled actions by specifying an `UpdatePolicy attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html>`_ for the Auto Scaling group. You can find a sample update policy for rolling updates in `Configure Amazon EC2 Auto Scaling resources <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-ec2-auto-scaling.html>`_ .
11056
11060
 
11057
11061
  For more information, see `Scheduled scaling <https://docs.aws.amazon.com/autoscaling/ec2/userguide/schedule_time.html>`_ and `Suspending and resuming scaling processes <https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-suspend-resume-processes.html>`_ in the *Amazon EC2 Auto Scaling User Guide* .
11058
11062
 
@@ -2447,6 +2447,9 @@ class CfnJobDefinition(
2447
2447
  ),
2448
2448
  privileged=False,
2449
2449
  readonly_root_filesystem=False,
2450
+ repository_credentials=batch.CfnJobDefinition.RepositoryCredentialsProperty(
2451
+ credentials_parameter="credentialsParameter"
2452
+ ),
2450
2453
  resource_requirements=[batch.CfnJobDefinition.ResourceRequirementProperty(
2451
2454
  type="type",
2452
2455
  value="value"
@@ -2608,6 +2611,9 @@ class CfnJobDefinition(
2608
2611
  ),
2609
2612
  privileged=False,
2610
2613
  readonly_root_filesystem=False,
2614
+ repository_credentials=batch.CfnJobDefinition.RepositoryCredentialsProperty(
2615
+ credentials_parameter="credentialsParameter"
2616
+ ),
2611
2617
  resource_requirements=[batch.CfnJobDefinition.ResourceRequirementProperty(
2612
2618
  type="type",
2613
2619
  value="value"
@@ -3057,6 +3063,7 @@ class CfnJobDefinition(
3057
3063
  "network_configuration": "networkConfiguration",
3058
3064
  "privileged": "privileged",
3059
3065
  "readonly_root_filesystem": "readonlyRootFilesystem",
3066
+ "repository_credentials": "repositoryCredentials",
3060
3067
  "resource_requirements": "resourceRequirements",
3061
3068
  "runtime_platform": "runtimePlatform",
3062
3069
  "secrets": "secrets",
@@ -3085,6 +3092,7 @@ class CfnJobDefinition(
3085
3092
  network_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.NetworkConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3086
3093
  privileged: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3087
3094
  readonly_root_filesystem: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3095
+ repository_credentials: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.RepositoryCredentialsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3088
3096
  resource_requirements: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.ResourceRequirementProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
3089
3097
  runtime_platform: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.RuntimePlatformProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3090
3098
  secrets: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.SecretProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -3112,6 +3120,7 @@ class CfnJobDefinition(
3112
3120
  :param network_configuration: The network configuration for jobs that are running on Fargate resources. Jobs that are running on EC2 resources must not specify this parameter.
3113
3121
  :param privileged: When this parameter is true, the container is given elevated permissions on the host container instance (similar to the ``root`` user). This parameter maps to ``Privileged`` in the `Create a container <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container>`_ section of the `Docker Remote API <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/>`_ and the ``--privileged`` option to `docker run <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/>`_ . The default value is false. .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided, or specified as false.
3114
3122
  :param readonly_root_filesystem: When this parameter is true, the container is given read-only access to its root file system. This parameter maps to ``ReadonlyRootfs`` in the `Create a container <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/#create-a-container>`_ section of the `Docker Remote API <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.23/>`_ and the ``--read-only`` option to ``docker run`` .
3123
+ :param repository_credentials: The private repository authentication credentials to use.
3115
3124
  :param resource_requirements: The type and amount of resources to assign to a container. The supported resources include ``GPU`` , ``MEMORY`` , and ``VCPU`` .
3116
3125
  :param runtime_platform: An object that represents the compute environment architecture for AWS Batch jobs on Fargate.
3117
3126
  :param secrets: The secrets for the container. For more information, see `Specifying sensitive data <https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html>`_ in the *AWS Batch User Guide* .
@@ -3188,6 +3197,9 @@ class CfnJobDefinition(
3188
3197
  ),
3189
3198
  privileged=False,
3190
3199
  readonly_root_filesystem=False,
3200
+ repository_credentials=batch.CfnJobDefinition.RepositoryCredentialsProperty(
3201
+ credentials_parameter="credentialsParameter"
3202
+ ),
3191
3203
  resource_requirements=[batch.CfnJobDefinition.ResourceRequirementProperty(
3192
3204
  type="type",
3193
3205
  value="value"
@@ -3244,6 +3256,7 @@ class CfnJobDefinition(
3244
3256
  check_type(argname="argument network_configuration", value=network_configuration, expected_type=type_hints["network_configuration"])
3245
3257
  check_type(argname="argument privileged", value=privileged, expected_type=type_hints["privileged"])
3246
3258
  check_type(argname="argument readonly_root_filesystem", value=readonly_root_filesystem, expected_type=type_hints["readonly_root_filesystem"])
3259
+ check_type(argname="argument repository_credentials", value=repository_credentials, expected_type=type_hints["repository_credentials"])
3247
3260
  check_type(argname="argument resource_requirements", value=resource_requirements, expected_type=type_hints["resource_requirements"])
3248
3261
  check_type(argname="argument runtime_platform", value=runtime_platform, expected_type=type_hints["runtime_platform"])
3249
3262
  check_type(argname="argument secrets", value=secrets, expected_type=type_hints["secrets"])
@@ -3282,6 +3295,8 @@ class CfnJobDefinition(
3282
3295
  self._values["privileged"] = privileged
3283
3296
  if readonly_root_filesystem is not None:
3284
3297
  self._values["readonly_root_filesystem"] = readonly_root_filesystem
3298
+ if repository_credentials is not None:
3299
+ self._values["repository_credentials"] = repository_credentials
3285
3300
  if resource_requirements is not None:
3286
3301
  self._values["resource_requirements"] = resource_requirements
3287
3302
  if runtime_platform is not None:
@@ -3505,6 +3520,17 @@ class CfnJobDefinition(
3505
3520
  result = self._values.get("readonly_root_filesystem")
3506
3521
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
3507
3522
 
3523
+ @builtins.property
3524
+ def repository_credentials(
3525
+ self,
3526
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.RepositoryCredentialsProperty"]]:
3527
+ '''The private repository authentication credentials to use.
3528
+
3529
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-repositorycredentials
3530
+ '''
3531
+ result = self._values.get("repository_credentials")
3532
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.RepositoryCredentialsProperty"]], result)
3533
+
3508
3534
  @builtins.property
3509
3535
  def resource_requirements(
3510
3536
  self,
@@ -5326,8 +5352,11 @@ class CfnJobDefinition(
5326
5352
  )
5327
5353
  class MetadataProperty:
5328
5354
  def __init__(self, *, labels: typing.Any = None) -> None:
5329
- '''
5330
- :param labels:
5355
+ '''Metadata about the Kubernetes pod.
5356
+
5357
+ For more information, see `Understanding Kubernetes Objects <https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/>`_ in the *Kubernetes documentation* .
5358
+
5359
+ :param labels: Key-value pairs used to identify, sort, and organize cube resources. Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object.
5331
5360
 
5332
5361
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-metadata.html
5333
5362
  :exampleMetadata: fixture=_generated
@@ -5353,7 +5382,10 @@ class CfnJobDefinition(
5353
5382
 
5354
5383
  @builtins.property
5355
5384
  def labels(self) -> typing.Any:
5356
- '''
5385
+ '''Key-value pairs used to identify, sort, and organize cube resources.
5386
+
5387
+ Can contain up to 63 uppercase letters, lowercase letters, numbers, hyphens (-), and underscores (_). Labels can be added or modified at any time. Each resource can have multiple labels, but each key must be unique for a given object.
5388
+
5357
5389
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-metadata.html#cfn-batch-jobdefinition-metadata-labels
5358
5390
  '''
5359
5391
  result = self._values.get("labels")
@@ -5625,6 +5657,9 @@ class CfnJobDefinition(
5625
5657
  ),
5626
5658
  privileged=False,
5627
5659
  readonly_root_filesystem=False,
5660
+ repository_credentials=batch.CfnJobDefinition.RepositoryCredentialsProperty(
5661
+ credentials_parameter="credentialsParameter"
5662
+ ),
5628
5663
  resource_requirements=[batch.CfnJobDefinition.ResourceRequirementProperty(
5629
5664
  type="type",
5630
5665
  value="value"
@@ -5812,6 +5847,9 @@ class CfnJobDefinition(
5812
5847
  ),
5813
5848
  privileged=False,
5814
5849
  readonly_root_filesystem=False,
5850
+ repository_credentials=batch.CfnJobDefinition.RepositoryCredentialsProperty(
5851
+ credentials_parameter="credentialsParameter"
5852
+ ),
5815
5853
  resource_requirements=[batch.CfnJobDefinition.ResourceRequirementProperty(
5816
5854
  type="type",
5817
5855
  value="value"
@@ -5919,13 +5957,14 @@ class CfnJobDefinition(
5919
5957
  service_account_name: typing.Optional[builtins.str] = None,
5920
5958
  volumes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.EksVolumeProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
5921
5959
  ) -> None:
5922
- '''
5923
- :param containers:
5924
- :param dns_policy:
5925
- :param host_network:
5926
- :param metadata:
5927
- :param service_account_name:
5928
- :param volumes:
5960
+ '''The properties for the pod.
5961
+
5962
+ :param containers: The properties of the container that's used on the Amazon EKS pod.
5963
+ :param dns_policy: The DNS policy for the pod. The default value is ``ClusterFirst`` . If the ``hostNetwork`` parameter is not specified, the default is ``ClusterFirstWithHostNet`` . ``ClusterFirst`` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see `Pod's DNS policy <https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy>`_ in the *Kubernetes documentation* . Valid values: ``Default`` | ``ClusterFirst`` | ``ClusterFirstWithHostNet``
5964
+ :param host_network: Indicates if the pod uses the hosts' network IP address. The default value is ``true`` . Setting this to ``false`` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see `Host namespaces <https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces>`_ and `Pod networking <https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking>`_ in the *Kubernetes documentation* .
5965
+ :param metadata: Metadata about the Kubernetes pod. For more information, see `Understanding Kubernetes Objects <https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/>`_ in the *Kubernetes documentation* .
5966
+ :param service_account_name: The name of the service account that's used to run the pod. For more information, see `Kubernetes service accounts <https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html>`_ and `Configure a Kubernetes service account to assume an IAM role <https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html>`_ in the *Amazon EKS User Guide* and `Configure service accounts for pods <https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/>`_ in the *Kubernetes documentation* .
5967
+ :param volumes: Specifies the volumes for a job definition that uses Amazon EKS resources.
5929
5968
 
5930
5969
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html
5931
5970
  :exampleMetadata: fixture=_generated
@@ -6024,7 +6063,8 @@ class CfnJobDefinition(
6024
6063
  def containers(
6025
6064
  self,
6026
6065
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.EksContainerProperty"]]]]:
6027
- '''
6066
+ '''The properties of the container that's used on the Amazon EKS pod.
6067
+
6028
6068
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-containers
6029
6069
  '''
6030
6070
  result = self._values.get("containers")
@@ -6032,7 +6072,12 @@ class CfnJobDefinition(
6032
6072
 
6033
6073
  @builtins.property
6034
6074
  def dns_policy(self) -> typing.Optional[builtins.str]:
6035
- '''
6075
+ '''The DNS policy for the pod.
6076
+
6077
+ The default value is ``ClusterFirst`` . If the ``hostNetwork`` parameter is not specified, the default is ``ClusterFirstWithHostNet`` . ``ClusterFirst`` indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see `Pod's DNS policy <https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy>`_ in the *Kubernetes documentation* .
6078
+
6079
+ Valid values: ``Default`` | ``ClusterFirst`` | ``ClusterFirstWithHostNet``
6080
+
6036
6081
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-dnspolicy
6037
6082
  '''
6038
6083
  result = self._values.get("dns_policy")
@@ -6042,7 +6087,10 @@ class CfnJobDefinition(
6042
6087
  def host_network(
6043
6088
  self,
6044
6089
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
6045
- '''
6090
+ '''Indicates if the pod uses the hosts' network IP address.
6091
+
6092
+ The default value is ``true`` . Setting this to ``false`` enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see `Host namespaces <https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/security/pod-security-policy/#host-namespaces>`_ and `Pod networking <https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/workloads/pods/#pod-networking>`_ in the *Kubernetes documentation* .
6093
+
6046
6094
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-hostnetwork
6047
6095
  '''
6048
6096
  result = self._values.get("host_network")
@@ -6052,7 +6100,10 @@ class CfnJobDefinition(
6052
6100
  def metadata(
6053
6101
  self,
6054
6102
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.MetadataProperty"]]:
6055
- '''
6103
+ '''Metadata about the Kubernetes pod.
6104
+
6105
+ For more information, see `Understanding Kubernetes Objects <https://docs.aws.amazon.com/https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/>`_ in the *Kubernetes documentation* .
6106
+
6056
6107
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-metadata
6057
6108
  '''
6058
6109
  result = self._values.get("metadata")
@@ -6060,7 +6111,10 @@ class CfnJobDefinition(
6060
6111
 
6061
6112
  @builtins.property
6062
6113
  def service_account_name(self) -> typing.Optional[builtins.str]:
6063
- '''
6114
+ '''The name of the service account that's used to run the pod.
6115
+
6116
+ For more information, see `Kubernetes service accounts <https://docs.aws.amazon.com/eks/latest/userguide/service-accounts.html>`_ and `Configure a Kubernetes service account to assume an IAM role <https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html>`_ in the *Amazon EKS User Guide* and `Configure service accounts for pods <https://docs.aws.amazon.com/https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/>`_ in the *Kubernetes documentation* .
6117
+
6064
6118
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-serviceaccountname
6065
6119
  '''
6066
6120
  result = self._values.get("service_account_name")
@@ -6070,7 +6124,8 @@ class CfnJobDefinition(
6070
6124
  def volumes(
6071
6125
  self,
6072
6126
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.EksVolumeProperty"]]]]:
6073
- '''
6127
+ '''Specifies the volumes for a job definition that uses Amazon EKS resources.
6128
+
6074
6129
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-podproperties.html#cfn-batch-jobdefinition-podproperties-volumes
6075
6130
  '''
6076
6131
  result = self._values.get("volumes")
@@ -6087,6 +6142,58 @@ class CfnJobDefinition(
6087
6142
  k + "=" + repr(v) for k, v in self._values.items()
6088
6143
  )
6089
6144
 
6145
+ @jsii.data_type(
6146
+ jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.RepositoryCredentialsProperty",
6147
+ jsii_struct_bases=[],
6148
+ name_mapping={"credentials_parameter": "credentialsParameter"},
6149
+ )
6150
+ class RepositoryCredentialsProperty:
6151
+ def __init__(self, *, credentials_parameter: builtins.str) -> None:
6152
+ '''The repository credentials for private registry authentication.
6153
+
6154
+ :param credentials_parameter: The Amazon Resource Name (ARN) of the secret containing the private repository credentials.
6155
+
6156
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-repositorycredentials.html
6157
+ :exampleMetadata: fixture=_generated
6158
+
6159
+ Example::
6160
+
6161
+ # The code below shows an example of how to instantiate this type.
6162
+ # The values are placeholders you should change.
6163
+ from aws_cdk import aws_batch as batch
6164
+
6165
+ repository_credentials_property = batch.CfnJobDefinition.RepositoryCredentialsProperty(
6166
+ credentials_parameter="credentialsParameter"
6167
+ )
6168
+ '''
6169
+ if __debug__:
6170
+ type_hints = typing.get_type_hints(_typecheckingstub__efadf8b71047617519478ed3105db0ddee37f23729febb81c4d534eed7eba9dd)
6171
+ check_type(argname="argument credentials_parameter", value=credentials_parameter, expected_type=type_hints["credentials_parameter"])
6172
+ self._values: typing.Dict[builtins.str, typing.Any] = {
6173
+ "credentials_parameter": credentials_parameter,
6174
+ }
6175
+
6176
+ @builtins.property
6177
+ def credentials_parameter(self) -> builtins.str:
6178
+ '''The Amazon Resource Name (ARN) of the secret containing the private repository credentials.
6179
+
6180
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-repositorycredentials.html#cfn-batch-jobdefinition-repositorycredentials-credentialsparameter
6181
+ '''
6182
+ result = self._values.get("credentials_parameter")
6183
+ assert result is not None, "Required property 'credentials_parameter' is missing"
6184
+ return typing.cast(builtins.str, result)
6185
+
6186
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6187
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6188
+
6189
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6190
+ return not (rhs == self)
6191
+
6192
+ def __repr__(self) -> str:
6193
+ return "RepositoryCredentialsProperty(%s)" % ", ".join(
6194
+ k + "=" + repr(v) for k, v in self._values.items()
6195
+ )
6196
+
6090
6197
  @jsii.data_type(
6091
6198
  jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.ResourceRequirementProperty",
6092
6199
  jsii_struct_bases=[],
@@ -7199,6 +7306,9 @@ class CfnJobDefinitionProps:
7199
7306
  ),
7200
7307
  privileged=False,
7201
7308
  readonly_root_filesystem=False,
7309
+ repository_credentials=batch.CfnJobDefinition.RepositoryCredentialsProperty(
7310
+ credentials_parameter="credentialsParameter"
7311
+ ),
7202
7312
  resource_requirements=[batch.CfnJobDefinition.ResourceRequirementProperty(
7203
7313
  type="type",
7204
7314
  value="value"
@@ -7360,6 +7470,9 @@ class CfnJobDefinitionProps:
7360
7470
  ),
7361
7471
  privileged=False,
7362
7472
  readonly_root_filesystem=False,
7473
+ repository_credentials=batch.CfnJobDefinition.RepositoryCredentialsProperty(
7474
+ credentials_parameter="credentialsParameter"
7475
+ ),
7363
7476
  resource_requirements=[batch.CfnJobDefinition.ResourceRequirementProperty(
7364
7477
  type="type",
7365
7478
  value="value"
@@ -21843,6 +21956,7 @@ def _typecheckingstub__09b3c38642739790560033cae597f009c106d353ddc5faf85f6a7bf48
21843
21956
  network_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.NetworkConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
21844
21957
  privileged: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
21845
21958
  readonly_root_filesystem: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
21959
+ repository_credentials: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.RepositoryCredentialsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
21846
21960
  resource_requirements: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.ResourceRequirementProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
21847
21961
  runtime_platform: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.RuntimePlatformProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
21848
21962
  secrets: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.SecretProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -22051,6 +22165,13 @@ def _typecheckingstub__75127ae5a1697c34be5f24dcb69fa5c36a3498e1b2c284babc814c444
22051
22165
  """Type checking stubs"""
22052
22166
  pass
22053
22167
 
22168
+ def _typecheckingstub__efadf8b71047617519478ed3105db0ddee37f23729febb81c4d534eed7eba9dd(
22169
+ *,
22170
+ credentials_parameter: builtins.str,
22171
+ ) -> None:
22172
+ """Type checking stubs"""
22173
+ pass
22174
+
22054
22175
  def _typecheckingstub__7384d4b3b97f8aebbaa3dfe7ec74991276f6b53d6e1885662f675369f1d0166c(
22055
22176
  *,
22056
22177
  type: typing.Optional[builtins.str] = None,
@@ -229,8 +229,7 @@ class CfnAnalysisTemplate(
229
229
  @builtins.property
230
230
  @jsii.member(jsii_name="attrSchema")
231
231
  def attr_schema(self) -> _IResolvable_da3f097b:
232
- '''Returns the entire `schema object <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-analysistemplate-analysisschema.html>`_ .
233
-
232
+ '''
234
233
  :cloudformationAttribute: Schema
235
234
  '''
236
235
  return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrSchema"))
@@ -3363,8 +3363,7 @@ class CfnStack(
3363
3363
  @builtins.property
3364
3364
  @jsii.member(jsii_name="attrOutputs")
3365
3365
  def attr_outputs(self) -> _IResolvable_da3f097b:
3366
- '''Returns a list of output structures.
3367
-
3366
+ '''
3368
3367
  :cloudformationAttribute: Outputs
3369
3368
  '''
3370
3369
  return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrOutputs"))
@@ -5826,14 +5825,7 @@ class CfnWaitCondition(
5826
5825
  @builtins.property
5827
5826
  @jsii.member(jsii_name="attrData")
5828
5827
  def attr_data(self) -> _IResolvable_da3f097b:
5829
- '''A JSON object that contains the ``UniqueId`` and ``Data`` values from the wait condition signal(s) for the specified wait condition.
5830
-
5831
- For more information about wait condition signals, see `Wait condition signal JSON format <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-waitcondition.html#using-cfn-waitcondition-signaljson>`_ .
5832
-
5833
- Example return value for a wait condition with 2 signals:
5834
-
5835
- ``{ "Signal1" : "Step 1 complete." , "Signal2" : "Step 2 complete." }``
5836
-
5828
+ '''
5837
5829
  :cloudformationAttribute: Data
5838
5830
  '''
5839
5831
  return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrData"))
@@ -6172,7 +6172,7 @@ class CfnDistribution(
6172
6172
  :param s3_origin:
6173
6173
  :param staging: A Boolean that indicates whether this is a staging distribution. When this value is ``true`` , this is a staging distribution. When this value is ``false`` , this is not a staging distribution.
6174
6174
  :param viewer_certificate: A complex type that determines the distribution's SSL/TLS configuration for communicating with viewers.
6175
- :param web_acl_id: A unique identifier that specifies the AWS WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of AWS WAF , use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a`` . To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a`` . AWS WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about AWS WAF , see the `AWS WAF Developer Guide <https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html>`_ . Default: - ""
6175
+ :param web_acl_id: A unique identifier that specifies the AWS WAF web ACL, if any, to associate with this distribution. To specify a web ACL created using the latest version of AWS WAF , use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111`` . To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example ``a1b2c3d4-5678-90ab-cdef-EXAMPLE11111`` . AWS WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about AWS WAF , see the `AWS WAF Developer Guide <https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html>`_ . Default: - ""
6176
6176
 
6177
6177
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-distributionconfig.html
6178
6178
  :exampleMetadata: fixture=_generated
@@ -6711,7 +6711,7 @@ class CfnDistribution(
6711
6711
  def web_acl_id(self) -> typing.Optional[builtins.str]:
6712
6712
  '''A unique identifier that specifies the AWS WAF web ACL, if any, to associate with this distribution.
6713
6713
 
6714
- To specify a web ACL created using the latest version of AWS WAF , use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a`` . To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example ``473e64fd-f30b-4765-81a0-62ad96dd167a`` .
6714
+ To specify a web ACL created using the latest version of AWS WAF , use the ACL ARN, for example ``arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111`` . To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example ``a1b2c3d4-5678-90ab-cdef-EXAMPLE11111`` .
6715
6715
 
6716
6716
  AWS WAF is a web application firewall that lets you monitor the HTTP and HTTPS requests that are forwarded to CloudFront, and lets you control access to your content. Based on conditions that you specify, such as the IP addresses that requests originate from or the values of query strings, CloudFront responds to requests either with the requested content or with an HTTP 403 status code (Forbidden). You can also configure CloudFront to return a custom error page when a request is blocked. For more information about AWS WAF , see the `AWS WAF Developer Guide <https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html>`_ .
6717
6717
 
@@ -8342,7 +8342,7 @@ class CfnDistribution(
8342
8342
 
8343
8343
  If the origin is a custom origin or an S3 bucket that is configured as a website endpoint, use the ``CustomOriginConfig`` element instead.
8344
8344
 
8345
- :param origin_access_identity: The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is: origin-access-identity/cloudfront/ *ID-of-origin-access-identity* where ``*ID-of-origin-access-identity*`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity. If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element. To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element. To replace the origin access identity, update the distribution configuration and specify the new origin access identity. For more information about the origin access identity, see `Serving Private Content through CloudFront <https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html>`_ in the *Amazon CloudFront Developer Guide* . Default: - ""
8345
+ :param origin_access_identity: .. epigraph:: If you're using origin access control (OAC) instead of origin access identity, specify an empty ``OriginAccessIdentity`` element. For more information, see `Restricting access to an AWS <https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html>`_ in the *Amazon CloudFront Developer Guide* . The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is: ``origin-access-identity/cloudfront/ID-of-origin-access-identity`` The ``*ID-of-origin-access-identity*`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity. If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element. To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element. To replace the origin access identity, update the distribution configuration and specify the new origin access identity. For more information about the origin access identity, see `Serving Private Content through CloudFront <https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html>`_ in the *Amazon CloudFront Developer Guide* . Default: - ""
8346
8346
 
8347
8347
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution-s3originconfig.html
8348
8348
  :exampleMetadata: fixture=_generated
@@ -8366,13 +8366,17 @@ class CfnDistribution(
8366
8366
 
8367
8367
  @builtins.property
8368
8368
  def origin_access_identity(self) -> typing.Optional[builtins.str]:
8369
- '''The CloudFront origin access identity to associate with the origin.
8369
+ '''.. epigraph::
8370
+
8371
+ If you're using origin access control (OAC) instead of origin access identity, specify an empty ``OriginAccessIdentity`` element.
8372
+
8373
+ For more information, see `Restricting access to an AWS <https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-origin.html>`_ in the *Amazon CloudFront Developer Guide* .
8370
8374
 
8371
- Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:
8375
+ The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:
8372
8376
 
8373
- origin-access-identity/cloudfront/ *ID-of-origin-access-identity*
8377
+ ``origin-access-identity/cloudfront/ID-of-origin-access-identity``
8374
8378
 
8375
- where ``*ID-of-origin-access-identity*`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.
8379
+ The ``*ID-of-origin-access-identity*`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.
8376
8380
 
8377
8381
  If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.
8378
8382
 
@@ -9058,7 +9062,10 @@ class CfnFunction(
9058
9062
  @builtins.property
9059
9063
  @jsii.member(jsii_name="attrFunctionMetadataFunctionArn")
9060
9064
  def attr_function_metadata_function_arn(self) -> builtins.str:
9061
- '''
9065
+ '''The Amazon Resource Name (ARN) of the function.
9066
+
9067
+ The ARN uniquely identifies the function.
9068
+
9062
9069
  :cloudformationAttribute: FunctionMetadata.FunctionARN
9063
9070
  '''
9064
9071
  return typing.cast(builtins.str, jsii.get(self, "attrFunctionMetadataFunctionArn"))
@@ -150,6 +150,7 @@ class EdgeFunction(
150
150
  function_name: typing.Optional[builtins.str] = None,
151
151
  initial_policy: typing.Optional[typing.Sequence[_PolicyStatement_0fe33853]] = None,
152
152
  insights_version: typing.Optional[_LambdaInsightsVersion_9dfbfef9] = None,
153
+ ipv6_allowed_for_dual_stack: typing.Optional[builtins.bool] = None,
153
154
  layers: typing.Optional[typing.Sequence[_ILayerVersion_5ac127c8]] = None,
154
155
  log_format: typing.Optional[builtins.str] = None,
155
156
  logging_format: typing.Optional[_LoggingFormat_30be8e01] = None,
@@ -202,6 +203,7 @@ class EdgeFunction(
202
203
  :param function_name: A name for the function. Default: - AWS CloudFormation generates a unique physical ID and uses that ID for the function's name. For more information, see Name Type.
203
204
  :param initial_policy: Initial policy statements to add to the created Lambda Role. You can call ``addToRolePolicy`` to the created lambda to add statements post creation. Default: - No policy statements are added to the created Lambda role.
204
205
  :param insights_version: Specify the version of CloudWatch Lambda insights to use for monitoring. Default: - No Lambda Insights
206
+ :param ipv6_allowed_for_dual_stack: Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets. Only used if 'vpc' is supplied. Default: false
205
207
  :param layers: A list of layers to add to the function's execution environment. You can configure your Lambda function to pull in additional code during initialization in the form of layers. Layers are packages of libraries or other dependencies that can be used by multiple functions. Default: - No layers.
206
208
  :param log_format: Sets the logFormat for the function. Default: "Text"
207
209
  :param logging_format: Sets the loggingFormat for the function. Default: LoggingFormat.TEXT
@@ -256,6 +258,7 @@ class EdgeFunction(
256
258
  function_name=function_name,
257
259
  initial_policy=initial_policy,
258
260
  insights_version=insights_version,
261
+ ipv6_allowed_for_dual_stack=ipv6_allowed_for_dual_stack,
259
262
  layers=layers,
260
263
  log_format=log_format,
261
264
  logging_format=logging_format,
@@ -875,6 +878,7 @@ class EdgeFunction(
875
878
  "function_name": "functionName",
876
879
  "initial_policy": "initialPolicy",
877
880
  "insights_version": "insightsVersion",
881
+ "ipv6_allowed_for_dual_stack": "ipv6AllowedForDualStack",
878
882
  "layers": "layers",
879
883
  "log_format": "logFormat",
880
884
  "logging_format": "loggingFormat",
@@ -929,6 +933,7 @@ class EdgeFunctionProps(_FunctionProps_a308e854):
929
933
  function_name: typing.Optional[builtins.str] = None,
930
934
  initial_policy: typing.Optional[typing.Sequence[_PolicyStatement_0fe33853]] = None,
931
935
  insights_version: typing.Optional[_LambdaInsightsVersion_9dfbfef9] = None,
936
+ ipv6_allowed_for_dual_stack: typing.Optional[builtins.bool] = None,
932
937
  layers: typing.Optional[typing.Sequence[_ILayerVersion_5ac127c8]] = None,
933
938
  log_format: typing.Optional[builtins.str] = None,
934
939
  logging_format: typing.Optional[_LoggingFormat_30be8e01] = None,
@@ -980,6 +985,7 @@ class EdgeFunctionProps(_FunctionProps_a308e854):
980
985
  :param function_name: A name for the function. Default: - AWS CloudFormation generates a unique physical ID and uses that ID for the function's name. For more information, see Name Type.
981
986
  :param initial_policy: Initial policy statements to add to the created Lambda Role. You can call ``addToRolePolicy`` to the created lambda to add statements post creation. Default: - No policy statements are added to the created Lambda role.
982
987
  :param insights_version: Specify the version of CloudWatch Lambda insights to use for monitoring. Default: - No Lambda Insights
988
+ :param ipv6_allowed_for_dual_stack: Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets. Only used if 'vpc' is supplied. Default: false
983
989
  :param layers: A list of layers to add to the function's execution environment. You can configure your Lambda function to pull in additional code during initialization in the form of layers. Layers are packages of libraries or other dependencies that can be used by multiple functions. Default: - No layers.
984
990
  :param log_format: Sets the logFormat for the function. Default: "Text"
985
991
  :param logging_format: Sets the loggingFormat for the function. Default: LoggingFormat.TEXT
@@ -1062,6 +1068,7 @@ class EdgeFunctionProps(_FunctionProps_a308e854):
1062
1068
  check_type(argname="argument function_name", value=function_name, expected_type=type_hints["function_name"])
1063
1069
  check_type(argname="argument initial_policy", value=initial_policy, expected_type=type_hints["initial_policy"])
1064
1070
  check_type(argname="argument insights_version", value=insights_version, expected_type=type_hints["insights_version"])
1071
+ check_type(argname="argument ipv6_allowed_for_dual_stack", value=ipv6_allowed_for_dual_stack, expected_type=type_hints["ipv6_allowed_for_dual_stack"])
1065
1072
  check_type(argname="argument layers", value=layers, expected_type=type_hints["layers"])
1066
1073
  check_type(argname="argument log_format", value=log_format, expected_type=type_hints["log_format"])
1067
1074
  check_type(argname="argument logging_format", value=logging_format, expected_type=type_hints["logging_format"])
@@ -1138,6 +1145,8 @@ class EdgeFunctionProps(_FunctionProps_a308e854):
1138
1145
  self._values["initial_policy"] = initial_policy
1139
1146
  if insights_version is not None:
1140
1147
  self._values["insights_version"] = insights_version
1148
+ if ipv6_allowed_for_dual_stack is not None:
1149
+ self._values["ipv6_allowed_for_dual_stack"] = ipv6_allowed_for_dual_stack
1141
1150
  if layers is not None:
1142
1151
  self._values["layers"] = layers
1143
1152
  if log_format is not None:
@@ -1433,6 +1442,17 @@ class EdgeFunctionProps(_FunctionProps_a308e854):
1433
1442
  result = self._values.get("insights_version")
1434
1443
  return typing.cast(typing.Optional[_LambdaInsightsVersion_9dfbfef9], result)
1435
1444
 
1445
+ @builtins.property
1446
+ def ipv6_allowed_for_dual_stack(self) -> typing.Optional[builtins.bool]:
1447
+ '''Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets.
1448
+
1449
+ Only used if 'vpc' is supplied.
1450
+
1451
+ :default: false
1452
+ '''
1453
+ result = self._values.get("ipv6_allowed_for_dual_stack")
1454
+ return typing.cast(typing.Optional[builtins.bool], result)
1455
+
1436
1456
  @builtins.property
1437
1457
  def layers(self) -> typing.Optional[typing.List[_ILayerVersion_5ac127c8]]:
1438
1458
  '''A list of layers to add to the function's execution environment.
@@ -1809,6 +1829,7 @@ def _typecheckingstub__b2f96e5632f259adb036f7aba2bbc7c19fd9840c647d67a10a8135cb3
1809
1829
  function_name: typing.Optional[builtins.str] = None,
1810
1830
  initial_policy: typing.Optional[typing.Sequence[_PolicyStatement_0fe33853]] = None,
1811
1831
  insights_version: typing.Optional[_LambdaInsightsVersion_9dfbfef9] = None,
1832
+ ipv6_allowed_for_dual_stack: typing.Optional[builtins.bool] = None,
1812
1833
  layers: typing.Optional[typing.Sequence[_ILayerVersion_5ac127c8]] = None,
1813
1834
  log_format: typing.Optional[builtins.str] = None,
1814
1835
  logging_format: typing.Optional[_LoggingFormat_30be8e01] = None,
@@ -1964,6 +1985,7 @@ def _typecheckingstub__709cdcb05c7a5fc7f7bcd1d72557097c39c5c534076a00b6b8db807bd
1964
1985
  function_name: typing.Optional[builtins.str] = None,
1965
1986
  initial_policy: typing.Optional[typing.Sequence[_PolicyStatement_0fe33853]] = None,
1966
1987
  insights_version: typing.Optional[_LambdaInsightsVersion_9dfbfef9] = None,
1988
+ ipv6_allowed_for_dual_stack: typing.Optional[builtins.bool] = None,
1967
1989
  layers: typing.Optional[typing.Sequence[_ILayerVersion_5ac127c8]] = None,
1968
1990
  log_format: typing.Optional[builtins.str] = None,
1969
1991
  logging_format: typing.Optional[_LoggingFormat_30be8e01] = None,