aws-cdk-lib 2.189.1__py3-none-any.whl → 2.191.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 (57) hide show
  1. aws_cdk/_jsii/__init__.py +1 -1
  2. aws_cdk/_jsii/{aws-cdk-lib@2.189.1.jsii.tgz → aws-cdk-lib@2.191.0.jsii.tgz} +0 -0
  3. aws_cdk/aws_acmpca/__init__.py +6 -6
  4. aws_cdk/aws_apigateway/__init__.py +18 -1
  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_aps/__init__.py +383 -2
  9. aws_cdk/aws_backup/__init__.py +0 -41
  10. aws_cdk/aws_batch/__init__.py +242 -5
  11. aws_cdk/aws_bedrock/__init__.py +963 -41
  12. aws_cdk/aws_cleanrooms/__init__.py +1392 -78
  13. aws_cdk/aws_cloudfront/__init__.py +1 -0
  14. aws_cdk/aws_cloudtrail/__init__.py +24 -26
  15. aws_cdk/aws_codebuild/__init__.py +107 -7
  16. aws_cdk/aws_datazone/__init__.py +23 -1
  17. aws_cdk/aws_dms/__init__.py +43 -0
  18. aws_cdk/aws_ec2/__init__.py +364 -30
  19. aws_cdk/aws_ecs/__init__.py +36 -5
  20. aws_cdk/aws_eks/__init__.py +2 -100
  21. aws_cdk/aws_elasticache/__init__.py +6 -11
  22. aws_cdk/aws_elasticloadbalancingv2/__init__.py +341 -0
  23. aws_cdk/aws_events/__init__.py +106 -13
  24. aws_cdk/aws_fsx/__init__.py +9 -21
  25. aws_cdk/aws_iam/__init__.py +1 -1
  26. aws_cdk/aws_iot/__init__.py +6 -6
  27. aws_cdk/aws_kafkaconnect/__init__.py +2 -2
  28. aws_cdk/aws_kinesis/__init__.py +44 -0
  29. aws_cdk/aws_launchwizard/__init__.py +49 -49
  30. aws_cdk/aws_lex/__init__.py +615 -39
  31. aws_cdk/aws_location/__init__.py +4 -4
  32. aws_cdk/aws_macie/__init__.py +14 -3
  33. aws_cdk/aws_memorydb/__init__.py +87 -0
  34. aws_cdk/aws_msk/__init__.py +226 -127
  35. aws_cdk/aws_neptune/__init__.py +0 -24
  36. aws_cdk/aws_opensearchservice/__init__.py +64 -56
  37. aws_cdk/aws_paymentcryptography/__init__.py +41 -0
  38. aws_cdk/aws_qbusiness/__init__.py +175 -3
  39. aws_cdk/aws_quicksight/__init__.py +393 -0
  40. aws_cdk/aws_rds/__init__.py +149 -120
  41. aws_cdk/aws_redshiftserverless/__init__.py +4 -14
  42. aws_cdk/aws_route53resolver/__init__.py +60 -9
  43. aws_cdk/aws_s3/__init__.py +34 -1
  44. aws_cdk/aws_s3_deployment/__init__.py +202 -5
  45. aws_cdk/aws_s3tables/__init__.py +142 -1
  46. aws_cdk/aws_sagemaker/__init__.py +40 -40
  47. aws_cdk/aws_ses/__init__.py +643 -18
  48. aws_cdk/aws_ssmquicksetup/__init__.py +3 -3
  49. aws_cdk/aws_stepfunctions/__init__.py +720 -45
  50. aws_cdk/aws_transfer/__init__.py +55 -2
  51. aws_cdk/pipelines/__init__.py +1 -2
  52. {aws_cdk_lib-2.189.1.dist-info → aws_cdk_lib-2.191.0.dist-info}/METADATA +1 -1
  53. {aws_cdk_lib-2.189.1.dist-info → aws_cdk_lib-2.191.0.dist-info}/RECORD +57 -57
  54. {aws_cdk_lib-2.189.1.dist-info → aws_cdk_lib-2.191.0.dist-info}/LICENSE +0 -0
  55. {aws_cdk_lib-2.189.1.dist-info → aws_cdk_lib-2.191.0.dist-info}/NOTICE +0 -0
  56. {aws_cdk_lib-2.189.1.dist-info → aws_cdk_lib-2.191.0.dist-info}/WHEEL +0 -0
  57. {aws_cdk_lib-2.189.1.dist-info → aws_cdk_lib-2.191.0.dist-info}/top_level.txt +0 -0
@@ -1337,7 +1337,7 @@ class CfnComputeEnvironment(
1337
1337
  :param placement_group: The Amazon EC2 placement group to associate with your compute resources. If you intend to submit multi-node parallel jobs to your compute environment, you should consider creating a cluster placement group and associate it with your compute resources. This keeps your multi-node parallel job on a logical grouping of instances within a single Availability Zone with high network flow potential. For more information, see `Placement groups <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html>`_ in the *Amazon EC2 User Guide for Linux Instances* . When updating a compute environment, changing the placement group requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* . .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.
1338
1338
  :param security_group_ids: The Amazon EC2 security groups that are associated with instances launched in the compute environment. This parameter is required for Fargate compute resources, where it can contain up to 5 security groups. For Fargate compute resources, providing an empty list is handled as if this parameter wasn't specified and no change is made. For Amazon EC2 compute resources, providing an empty list removes the security groups from the compute resource. When updating a compute environment, changing the Amazon EC2 security groups requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* .
1339
1339
  :param spot_iam_fleet_role: The Amazon Resource Name (ARN) of the Amazon EC2 Spot Fleet IAM role applied to a ``SPOT`` compute environment. This role is required if the allocation strategy set to ``BEST_FIT`` or if the allocation strategy isn't specified. For more information, see `Amazon EC2 spot fleet role <https://docs.aws.amazon.com/batch/latest/userguide/spot_fleet_IAM_role.html>`_ in the *AWS Batch User Guide* . .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it. > To tag your Spot Instances on creation, the Spot Fleet IAM role specified here must use the newer *AmazonEC2SpotFleetTaggingRole* managed policy. The previously recommended *AmazonEC2SpotFleetRole* managed policy doesn't have the required permissions to tag Spot Instances. For more information, see `Spot instances not tagged on creation <https://docs.aws.amazon.com/batch/latest/userguide/troubleshooting.html#spot-instance-no-tag>`_ in the *AWS Batch User Guide* .
1340
- :param tags: Key-value pair tags to be applied to Amazon EC2 resources that are launched in the compute environment. For AWS Batch , these take the form of ``"String1": "String2"`` , where ``String1`` is the tag key and ``String2`` is the tag value-for example, ``{ "Name": "Batch Instance - C4OnDemand" }`` . This is helpful for recognizing your Batch instances in the Amazon EC2 console. These tags aren't seen when using the AWS Batch ``ListTagsForResource`` API operation. When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* . .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.
1340
+ :param tags: Key-value pair tags to be applied to Amazon EC2 resources that are launched in the compute environment. For AWS Batch , these take the form of ``"String1": "String2"`` , where ``String1`` is the tag key and ``String2`` is the tag value (for example, ``{ "Name": "Batch Instance - C4OnDemand" }`` ). This is helpful for recognizing your Batch instances in the Amazon EC2 console. These tags aren't seen when using the AWS Batch ``ListTagsForResource`` API operation. When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* . .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.
1341
1341
  :param update_to_latest_image_version: Specifies whether the AMI ID is updated to the latest one that's supported by AWS Batch when the compute environment has an infrastructure update. The default value is ``false`` . .. epigraph:: An AMI ID can either be specified in the ``imageId`` or ``imageIdOverride`` parameters or be determined by the launch template that's specified in the ``launchTemplate`` parameter. If an AMI ID is specified any of these ways, this parameter is ignored. For more information about to update AMI IDs during an infrastructure update, see `Updating the AMI ID <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html#updating-compute-environments-ami>`_ in the *AWS Batch User Guide* . When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* . Default: - false
1342
1342
 
1343
1343
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html
@@ -1718,7 +1718,7 @@ class CfnComputeEnvironment(
1718
1718
  def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
1719
1719
  '''Key-value pair tags to be applied to Amazon EC2 resources that are launched in the compute environment.
1720
1720
 
1721
- For AWS Batch , these take the form of ``"String1": "String2"`` , where ``String1`` is the tag key and ``String2`` is the tag value-for example, ``{ "Name": "Batch Instance - C4OnDemand" }`` . This is helpful for recognizing your Batch instances in the Amazon EC2 console. These tags aren't seen when using the AWS Batch ``ListTagsForResource`` API operation.
1721
+ For AWS Batch , these take the form of ``"String1": "String2"`` , where ``String1`` is the tag key and ``String2`` is the tag value (for example, ``{ "Name": "Batch Instance - C4OnDemand" }`` ). This is helpful for recognizing your Batch instances in the Amazon EC2 console. These tags aren't seen when using the AWS Batch ``ListTagsForResource`` API operation.
1722
1722
 
1723
1723
  When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* .
1724
1724
  .. epigraph::
@@ -3514,6 +3514,7 @@ class CfnJobDefinition(
3514
3514
  name_mapping={
3515
3515
  "image": "image",
3516
3516
  "command": "command",
3517
+ "enable_execute_command": "enableExecuteCommand",
3517
3518
  "environment": "environment",
3518
3519
  "ephemeral_storage": "ephemeralStorage",
3519
3520
  "execution_role_arn": "executionRoleArn",
@@ -3543,6 +3544,7 @@ class CfnJobDefinition(
3543
3544
  *,
3544
3545
  image: builtins.str,
3545
3546
  command: typing.Optional[typing.Sequence[builtins.str]] = None,
3547
+ enable_execute_command: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3546
3548
  environment: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.EnvironmentProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
3547
3549
  ephemeral_storage: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.EphemeralStorageProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3548
3550
  execution_role_arn: typing.Optional[builtins.str] = None,
@@ -3571,6 +3573,7 @@ class CfnJobDefinition(
3571
3573
 
3572
3574
  :param image: Required. The image used to start a container. This string is passed directly to the Docker daemon. Images in the Docker Hub registry are available by default. Other repositories are specified with ``*repository-url* / *image* : *tag*`` . It can be 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), underscores (_), colons (:), periods (.), forward slashes (/), and number signs (#). This parameter maps to ``Image`` 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 ``IMAGE`` parameter of `docker run <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/>`_ . .. epigraph:: Docker image architecture must match the processor architecture of the compute resources that they're scheduled on. For example, ARM-based Docker images can only run on ARM-based compute resources. - Images in Amazon ECR Public repositories use the full ``registry/repository[:tag]`` or ``registry/repository[@digest]`` naming conventions. For example, ``public.ecr.aws/ *registry_alias* / *my-web-app* : *latest*`` . - Images in Amazon ECR repositories use the full registry and repository URI (for example, ``123456789012.dkr.ecr.<region-name>.amazonaws.com/<repository-name>`` ). - Images in official repositories on Docker Hub use a single name (for example, ``ubuntu`` or ``mongo`` ). - Images in other repositories on Docker Hub are qualified with an organization name (for example, ``amazon/amazon-ecs-agent`` ). - Images in other online repositories are qualified further by a domain name (for example, ``quay.io/assemblyline/ubuntu`` ).
3573
3575
  :param command: The command that's passed to the container. This parameter maps to ``Cmd`` 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 ``COMMAND`` parameter to `docker run <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/>`_ . For more information, see `https://docs.docker.com/engine/reference/builder/#cmd <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/builder/#cmd>`_ .
3576
+ :param enable_execute_command: Determines whether execute command functionality is turned on for this task. If ``true`` , execute command functionality is turned on all the containers in the task.
3574
3577
  :param environment: The environment variables to pass to a container. This parameter maps to ``Env`` 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 ``--env`` option to `docker run <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/>`_ . .. epigraph:: We don't recommend using plaintext environment variables for sensitive information, such as credential data. > Environment variables cannot start with " ``AWS_BATCH`` ". This naming convention is reserved for variables that AWS Batch sets.
3575
3578
  :param ephemeral_storage: The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate .
3576
3579
  :param execution_role_arn: The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see `AWS Batch execution IAM role <https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html>`_ in the *AWS Batch User Guide* .
@@ -3609,6 +3612,7 @@ class CfnJobDefinition(
3609
3612
 
3610
3613
  # the properties below are optional
3611
3614
  command=["command"],
3615
+ enable_execute_command=False,
3612
3616
  environment=[batch.CfnJobDefinition.EnvironmentProperty(
3613
3617
  name="name",
3614
3618
  value="value"
@@ -3707,6 +3711,7 @@ class CfnJobDefinition(
3707
3711
  type_hints = typing.get_type_hints(_typecheckingstub__09b3c38642739790560033cae597f009c106d353ddc5faf85f6a7bf4891ac4d1)
3708
3712
  check_type(argname="argument image", value=image, expected_type=type_hints["image"])
3709
3713
  check_type(argname="argument command", value=command, expected_type=type_hints["command"])
3714
+ check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
3710
3715
  check_type(argname="argument environment", value=environment, expected_type=type_hints["environment"])
3711
3716
  check_type(argname="argument ephemeral_storage", value=ephemeral_storage, expected_type=type_hints["ephemeral_storage"])
3712
3717
  check_type(argname="argument execution_role_arn", value=execution_role_arn, expected_type=type_hints["execution_role_arn"])
@@ -3733,6 +3738,8 @@ class CfnJobDefinition(
3733
3738
  }
3734
3739
  if command is not None:
3735
3740
  self._values["command"] = command
3741
+ if enable_execute_command is not None:
3742
+ self._values["enable_execute_command"] = enable_execute_command
3736
3743
  if environment is not None:
3737
3744
  self._values["environment"] = environment
3738
3745
  if ephemeral_storage is not None:
@@ -3808,6 +3815,19 @@ class CfnJobDefinition(
3808
3815
  result = self._values.get("command")
3809
3816
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
3810
3817
 
3818
+ @builtins.property
3819
+ def enable_execute_command(
3820
+ self,
3821
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
3822
+ '''Determines whether execute command functionality is turned on for this task.
3823
+
3824
+ If ``true`` , execute command functionality is turned on all the containers in the task.
3825
+
3826
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-containerproperties.html#cfn-batch-jobdefinition-containerproperties-enableexecutecommand
3827
+ '''
3828
+ result = self._values.get("enable_execute_command")
3829
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
3830
+
3811
3831
  @builtins.property
3812
3832
  def environment(
3813
3833
  self,
@@ -4227,6 +4247,14 @@ class CfnJobDefinition(
4227
4247
  value="value"
4228
4248
  )],
4229
4249
  essential=False,
4250
+ firelens_configuration=batch.CfnJobDefinition.FirelensConfigurationProperty(
4251
+ type="type",
4252
+
4253
+ # the properties below are optional
4254
+ options={
4255
+ "options_key": "options"
4256
+ }
4257
+ ),
4230
4258
  linux_parameters=batch.CfnJobDefinition.LinuxParametersProperty(
4231
4259
  devices=[batch.CfnJobDefinition.DeviceProperty(
4232
4260
  container_path="containerPath",
@@ -4281,6 +4309,7 @@ class CfnJobDefinition(
4281
4309
  )],
4282
4310
  user="user"
4283
4311
  )],
4312
+ enable_execute_command=False,
4284
4313
  ephemeral_storage=batch.CfnJobDefinition.EphemeralStorageProperty(
4285
4314
  size_in_gi_b=123
4286
4315
  ),
@@ -4356,6 +4385,7 @@ class CfnJobDefinition(
4356
4385
  jsii_struct_bases=[],
4357
4386
  name_mapping={
4358
4387
  "containers": "containers",
4388
+ "enable_execute_command": "enableExecuteCommand",
4359
4389
  "ephemeral_storage": "ephemeralStorage",
4360
4390
  "execution_role_arn": "executionRoleArn",
4361
4391
  "ipc_mode": "ipcMode",
@@ -4372,6 +4402,7 @@ class CfnJobDefinition(
4372
4402
  self,
4373
4403
  *,
4374
4404
  containers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.TaskContainerPropertiesProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4405
+ enable_execute_command: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
4375
4406
  ephemeral_storage: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.EphemeralStorageProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4376
4407
  execution_role_arn: typing.Optional[builtins.str] = None,
4377
4408
  ipc_mode: typing.Optional[builtins.str] = None,
@@ -4387,6 +4418,7 @@ class CfnJobDefinition(
4387
4418
  You can specify which Docker images to use, the required resources, and other configurations related to launching the task definition through an Amazon ECS service or task.
4388
4419
 
4389
4420
  :param containers: This object is a list of containers.
4421
+ :param enable_execute_command: Determines whether execute command functionality is turned on for this task. If ``true`` , execute command functionality is turned on all the containers in the task.
4390
4422
  :param ephemeral_storage: The amount of ephemeral storage to allocate for the task. This parameter is used to expand the total amount of ephemeral storage available, beyond the default amount, for tasks hosted on AWS Fargate .
4391
4423
  :param execution_role_arn: The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see `AWS Batch execution IAM role <https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html>`_ in the *AWS Batch User Guide* .
4392
4424
  :param ipc_mode: The IPC resource namespace to use for the containers in the task. The valid values are ``host`` , ``task`` , or ``none`` . If ``host`` is specified, all containers within the tasks that specified the ``host`` IPC mode on the same container instance share the same IPC resources with the host Amazon EC2 instance. If ``task`` is specified, all containers within the specified ``task`` share the same IPC resources. If ``none`` is specified, the IPC resources within the containers of a task are private, and are not shared with other containers in a task or on the container instance. If no value is specified, then the IPC resource namespace sharing depends on the Docker daemon setting on the container instance. For more information, see `IPC settings <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#ipc-settings---ipc>`_ in the Docker run reference.
@@ -4423,6 +4455,14 @@ class CfnJobDefinition(
4423
4455
  value="value"
4424
4456
  )],
4425
4457
  essential=False,
4458
+ firelens_configuration=batch.CfnJobDefinition.FirelensConfigurationProperty(
4459
+ type="type",
4460
+
4461
+ # the properties below are optional
4462
+ options={
4463
+ "options_key": "options"
4464
+ }
4465
+ ),
4426
4466
  linux_parameters=batch.CfnJobDefinition.LinuxParametersProperty(
4427
4467
  devices=[batch.CfnJobDefinition.DeviceProperty(
4428
4468
  container_path="containerPath",
@@ -4477,6 +4517,7 @@ class CfnJobDefinition(
4477
4517
  )],
4478
4518
  user="user"
4479
4519
  )],
4520
+ enable_execute_command=False,
4480
4521
  ephemeral_storage=batch.CfnJobDefinition.EphemeralStorageProperty(
4481
4522
  size_in_gi_b=123
4482
4523
  ),
@@ -4515,6 +4556,7 @@ class CfnJobDefinition(
4515
4556
  if __debug__:
4516
4557
  type_hints = typing.get_type_hints(_typecheckingstub__8e8c39be2b840a158045732ea20d964bf03d380304bbcd66936cb862e6cc2a8e)
4517
4558
  check_type(argname="argument containers", value=containers, expected_type=type_hints["containers"])
4559
+ check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
4518
4560
  check_type(argname="argument ephemeral_storage", value=ephemeral_storage, expected_type=type_hints["ephemeral_storage"])
4519
4561
  check_type(argname="argument execution_role_arn", value=execution_role_arn, expected_type=type_hints["execution_role_arn"])
4520
4562
  check_type(argname="argument ipc_mode", value=ipc_mode, expected_type=type_hints["ipc_mode"])
@@ -4527,6 +4569,8 @@ class CfnJobDefinition(
4527
4569
  self._values: typing.Dict[builtins.str, typing.Any] = {}
4528
4570
  if containers is not None:
4529
4571
  self._values["containers"] = containers
4572
+ if enable_execute_command is not None:
4573
+ self._values["enable_execute_command"] = enable_execute_command
4530
4574
  if ephemeral_storage is not None:
4531
4575
  self._values["ephemeral_storage"] = ephemeral_storage
4532
4576
  if execution_role_arn is not None:
@@ -4557,6 +4601,19 @@ class CfnJobDefinition(
4557
4601
  result = self._values.get("containers")
4558
4602
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.TaskContainerPropertiesProperty"]]]], result)
4559
4603
 
4604
+ @builtins.property
4605
+ def enable_execute_command(
4606
+ self,
4607
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
4608
+ '''Determines whether execute command functionality is turned on for this task.
4609
+
4610
+ If ``true`` , execute command functionality is turned on all the containers in the task.
4611
+
4612
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-enableexecutecommand
4613
+ '''
4614
+ result = self._values.get("enable_execute_command")
4615
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
4616
+
4560
4617
  @builtins.property
4561
4618
  def ephemeral_storage(
4562
4619
  self,
@@ -6088,6 +6145,89 @@ class CfnJobDefinition(
6088
6145
  k + "=" + repr(v) for k, v in self._values.items()
6089
6146
  )
6090
6147
 
6148
+ @jsii.data_type(
6149
+ jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.FirelensConfigurationProperty",
6150
+ jsii_struct_bases=[],
6151
+ name_mapping={"type": "type", "options": "options"},
6152
+ )
6153
+ class FirelensConfigurationProperty:
6154
+ def __init__(
6155
+ self,
6156
+ *,
6157
+ type: builtins.str,
6158
+ options: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
6159
+ ) -> None:
6160
+ '''The FireLens configuration for the container.
6161
+
6162
+ This is used to specify and configure a log router for container logs. For more information, see `Custom log <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html>`_ routing in the *Amazon Elastic Container Service Developer Guide* .
6163
+
6164
+ :param type: The log router to use. The valid values are ``fluentd`` or ``fluentbit`` .
6165
+ :param options: The options to use when configuring the log router. This field is optional and can be used to specify a custom configuration file or to add additional metadata, such as the task, task definition, cluster, and container instance details to the log event. If specified, the syntax to use is ``"options":{"enable-ecs-log-metadata":"true|false","config-file-type:"s3|file","config-file-value":"arn:aws:s3:::mybucket/fluent.conf|filepath"}`` . For more information, see `Creating a task definition that uses a FireLens configuration <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html#firelens-taskdef>`_ in the *Amazon Elastic Container Service Developer Guide* .
6166
+
6167
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-firelensconfiguration.html
6168
+ :exampleMetadata: fixture=_generated
6169
+
6170
+ Example::
6171
+
6172
+ # The code below shows an example of how to instantiate this type.
6173
+ # The values are placeholders you should change.
6174
+ from aws_cdk import aws_batch as batch
6175
+
6176
+ firelens_configuration_property = batch.CfnJobDefinition.FirelensConfigurationProperty(
6177
+ type="type",
6178
+
6179
+ # the properties below are optional
6180
+ options={
6181
+ "options_key": "options"
6182
+ }
6183
+ )
6184
+ '''
6185
+ if __debug__:
6186
+ type_hints = typing.get_type_hints(_typecheckingstub__012b674cbcf1ea538c209d328bedd805776a59df4892337af673d8b565f4f57d)
6187
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
6188
+ check_type(argname="argument options", value=options, expected_type=type_hints["options"])
6189
+ self._values: typing.Dict[builtins.str, typing.Any] = {
6190
+ "type": type,
6191
+ }
6192
+ if options is not None:
6193
+ self._values["options"] = options
6194
+
6195
+ @builtins.property
6196
+ def type(self) -> builtins.str:
6197
+ '''The log router to use.
6198
+
6199
+ The valid values are ``fluentd`` or ``fluentbit`` .
6200
+
6201
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-firelensconfiguration.html#cfn-batch-jobdefinition-firelensconfiguration-type
6202
+ '''
6203
+ result = self._values.get("type")
6204
+ assert result is not None, "Required property 'type' is missing"
6205
+ return typing.cast(builtins.str, result)
6206
+
6207
+ @builtins.property
6208
+ def options(
6209
+ self,
6210
+ ) -> typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]]:
6211
+ '''The options to use when configuring the log router.
6212
+
6213
+ This field is optional and can be used to specify a custom configuration file or to add additional metadata, such as the task, task definition, cluster, and container instance details to the log event. If specified, the syntax to use is ``"options":{"enable-ecs-log-metadata":"true|false","config-file-type:"s3|file","config-file-value":"arn:aws:s3:::mybucket/fluent.conf|filepath"}`` . For more information, see `Creating a task definition that uses a FireLens configuration <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html#firelens-taskdef>`_ in the *Amazon Elastic Container Service Developer Guide* .
6214
+
6215
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-firelensconfiguration.html#cfn-batch-jobdefinition-firelensconfiguration-options
6216
+ '''
6217
+ result = self._values.get("options")
6218
+ return typing.cast(typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]], result)
6219
+
6220
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6221
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6222
+
6223
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6224
+ return not (rhs == self)
6225
+
6226
+ def __repr__(self) -> str:
6227
+ return "FirelensConfigurationProperty(%s)" % ", ".join(
6228
+ k + "=" + repr(v) for k, v in self._values.items()
6229
+ )
6230
+
6091
6231
  @jsii.data_type(
6092
6232
  jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.HostPathProperty",
6093
6233
  jsii_struct_bases=[],
@@ -6466,7 +6606,7 @@ class CfnJobDefinition(
6466
6606
  ) -> None:
6467
6607
  '''Log configuration options to send to a custom log driver for the container.
6468
6608
 
6469
- :param log_driver: The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. The supported log drivers are ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``logentries`` , ``syslog`` , and ``splunk`` . .. epigraph:: Jobs that are running on Fargate resources are restricted to the ``awslogs`` and ``splunk`` log drivers. - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see `Using the awslogs log driver <https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html>`_ in the *AWS Batch User Guide* and `Amazon CloudWatch Logs logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/>`_ in the Docker documentation. - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see `Fluentd logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/>`_ in the *Docker documentation* . - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see `Graylog Extended Format logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/>`_ in the *Docker documentation* . - **journald** - Specifies the journald logging driver. For more information including usage and options, see `Journald logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/>`_ in the *Docker documentation* . - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see `JSON File logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/>`_ in the *Docker documentation* . - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see `Splunk logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/>`_ in the *Docker documentation* . - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see `Syslog logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/>`_ in the *Docker documentation* . .. epigraph:: If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's `available on GitHub <https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent>`_ and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version | grep "Server API version"``
6609
+ :param log_driver: The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. The supported log drivers are ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``logentries`` , ``syslog`` , and ``splunk`` . .. epigraph:: Jobs that are running on Fargate resources are restricted to the ``awslogs`` and ``splunk`` log drivers. - **awsfirelens** - Specifies the firelens logging driver. For more information on configuring Firelens, see `Send Amazon ECS logs to an AWS service or AWS Partner <https://docs.aws.amazon.com//AmazonECS/latest/developerguide/using_firelens.html>`_ in the *Amazon Elastic Container Service Developer Guide* . - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see `Using the awslogs log driver <https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html>`_ in the *AWS Batch User Guide* and `Amazon CloudWatch Logs logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/>`_ in the Docker documentation. - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see `Fluentd logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/>`_ in the *Docker documentation* . - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see `Graylog Extended Format logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/>`_ in the *Docker documentation* . - **journald** - Specifies the journald logging driver. For more information including usage and options, see `Journald logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/>`_ in the *Docker documentation* . - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see `JSON File logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/>`_ in the *Docker documentation* . - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see `Splunk logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/>`_ in the *Docker documentation* . - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see `Syslog logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/>`_ in the *Docker documentation* . .. epigraph:: If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's `available on GitHub <https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent>`_ and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version | grep "Server API version"``
6470
6610
  :param options: The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version | grep "Server API version"``
6471
6611
  :param secret_options: The secrets to pass to the log configuration. 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* .
6472
6612
 
@@ -6516,6 +6656,7 @@ class CfnJobDefinition(
6516
6656
 
6517
6657
  Jobs that are running on Fargate resources are restricted to the ``awslogs`` and ``splunk`` log drivers.
6518
6658
 
6659
+ - **awsfirelens** - Specifies the firelens logging driver. For more information on configuring Firelens, see `Send Amazon ECS logs to an AWS service or AWS Partner <https://docs.aws.amazon.com//AmazonECS/latest/developerguide/using_firelens.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
6519
6660
  - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see `Using the awslogs log driver <https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html>`_ in the *AWS Batch User Guide* and `Amazon CloudWatch Logs logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/>`_ in the Docker documentation.
6520
6661
  - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see `Fluentd logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/>`_ in the *Docker documentation* .
6521
6662
  - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see `Graylog Extended Format logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/>`_ in the *Docker documentation* .
@@ -6846,6 +6987,14 @@ class CfnJobDefinition(
6846
6987
  value="value"
6847
6988
  )],
6848
6989
  essential=False,
6990
+ firelens_configuration=batch.CfnJobDefinition.FirelensConfigurationProperty(
6991
+ type="type",
6992
+
6993
+ # the properties below are optional
6994
+ options={
6995
+ "options_key": "options"
6996
+ }
6997
+ ),
6849
6998
  linux_parameters=batch.CfnJobDefinition.LinuxParametersProperty(
6850
6999
  devices=[batch.CfnJobDefinition.DeviceProperty(
6851
7000
  container_path="containerPath",
@@ -6900,6 +7049,7 @@ class CfnJobDefinition(
6900
7049
  )],
6901
7050
  user="user"
6902
7051
  )],
7052
+ enable_execute_command=False,
6903
7053
  execution_role_arn="executionRoleArn",
6904
7054
  ipc_mode="ipcMode",
6905
7055
  pid_mode="pidMode",
@@ -6964,6 +7114,7 @@ class CfnJobDefinition(
6964
7114
  jsii_struct_bases=[],
6965
7115
  name_mapping={
6966
7116
  "containers": "containers",
7117
+ "enable_execute_command": "enableExecuteCommand",
6967
7118
  "execution_role_arn": "executionRoleArn",
6968
7119
  "ipc_mode": "ipcMode",
6969
7120
  "pid_mode": "pidMode",
@@ -6976,6 +7127,7 @@ class CfnJobDefinition(
6976
7127
  self,
6977
7128
  *,
6978
7129
  containers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.TaskContainerPropertiesProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
7130
+ enable_execute_command: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
6979
7131
  execution_role_arn: typing.Optional[builtins.str] = None,
6980
7132
  ipc_mode: typing.Optional[builtins.str] = None,
6981
7133
  pid_mode: typing.Optional[builtins.str] = None,
@@ -6987,6 +7139,7 @@ class CfnJobDefinition(
6987
7139
  You can specify which Docker images to use, the required resources, and other configurations related to launching the task definition through an Amazon ECS service or task.
6988
7140
 
6989
7141
  :param containers: This object is a list of containers.
7142
+ :param enable_execute_command: Determines whether execute command functionality is turned on for this task. If ``true`` , execute command functionality is turned on all the containers in the task.
6990
7143
  :param execution_role_arn: The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume. For jobs that run on Fargate resources, you must provide an execution role. For more information, see `AWS Batch execution IAM role <https://docs.aws.amazon.com/batch/latest/userguide/execution-IAM-role.html>`_ in the *AWS Batch User Guide* .
6991
7144
  :param ipc_mode: The IPC resource namespace to use for the containers in the task. The valid values are ``host`` , ``task`` , or ``none`` . If ``host`` is specified, all containers within the tasks that specified the ``host`` IPC mode on the same container instance share the same IPC resources with the host Amazon EC2 instance. If ``task`` is specified, all containers within the specified ``task`` share the same IPC resources. If ``none`` is specified, the IPC resources within the containers of a task are private, and are not shared with other containers in a task or on the container instance. If no value is specified, then the IPC resource namespace sharing depends on the Docker daemon setting on the container instance. For more information, see `IPC settings <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#ipc-settings---ipc>`_ in the Docker run reference.
6992
7145
  :param pid_mode: The process namespace to use for the containers in the task. The valid values are ``host`` or ``task`` . For example, monitoring sidecars might need ``pidMode`` to access information about other containers running in the same task. If ``host`` is specified, all containers within the tasks that specified the ``host`` PID mode on the same container instance share the process namespace with the host Amazon EC2 instance. If ``task`` is specified, all containers within the specified task share the same process namespace. If no value is specified, the default is a private namespace for each container. For more information, see `PID settings <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#pid-settings---pid>`_ in the Docker run reference.
@@ -7019,6 +7172,14 @@ class CfnJobDefinition(
7019
7172
  value="value"
7020
7173
  )],
7021
7174
  essential=False,
7175
+ firelens_configuration=batch.CfnJobDefinition.FirelensConfigurationProperty(
7176
+ type="type",
7177
+
7178
+ # the properties below are optional
7179
+ options={
7180
+ "options_key": "options"
7181
+ }
7182
+ ),
7022
7183
  linux_parameters=batch.CfnJobDefinition.LinuxParametersProperty(
7023
7184
  devices=[batch.CfnJobDefinition.DeviceProperty(
7024
7185
  container_path="containerPath",
@@ -7073,6 +7234,7 @@ class CfnJobDefinition(
7073
7234
  )],
7074
7235
  user="user"
7075
7236
  )],
7237
+ enable_execute_command=False,
7076
7238
  execution_role_arn="executionRoleArn",
7077
7239
  ipc_mode="ipcMode",
7078
7240
  pid_mode="pidMode",
@@ -7100,6 +7262,7 @@ class CfnJobDefinition(
7100
7262
  if __debug__:
7101
7263
  type_hints = typing.get_type_hints(_typecheckingstub__cb3ca5619c68fc8ff93d966eb183ea114ed6764e99467d7b283af54300b4b5ca)
7102
7264
  check_type(argname="argument containers", value=containers, expected_type=type_hints["containers"])
7265
+ check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
7103
7266
  check_type(argname="argument execution_role_arn", value=execution_role_arn, expected_type=type_hints["execution_role_arn"])
7104
7267
  check_type(argname="argument ipc_mode", value=ipc_mode, expected_type=type_hints["ipc_mode"])
7105
7268
  check_type(argname="argument pid_mode", value=pid_mode, expected_type=type_hints["pid_mode"])
@@ -7108,6 +7271,8 @@ class CfnJobDefinition(
7108
7271
  self._values: typing.Dict[builtins.str, typing.Any] = {}
7109
7272
  if containers is not None:
7110
7273
  self._values["containers"] = containers
7274
+ if enable_execute_command is not None:
7275
+ self._values["enable_execute_command"] = enable_execute_command
7111
7276
  if execution_role_arn is not None:
7112
7277
  self._values["execution_role_arn"] = execution_role_arn
7113
7278
  if ipc_mode is not None:
@@ -7130,6 +7295,19 @@ class CfnJobDefinition(
7130
7295
  result = self._values.get("containers")
7131
7296
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.TaskContainerPropertiesProperty"]]]], result)
7132
7297
 
7298
+ @builtins.property
7299
+ def enable_execute_command(
7300
+ self,
7301
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
7302
+ '''Determines whether execute command functionality is turned on for this task.
7303
+
7304
+ If ``true`` , execute command functionality is turned on all the containers in the task.
7305
+
7306
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-multinodeecstaskproperties.html#cfn-batch-jobdefinition-multinodeecstaskproperties-enableexecutecommand
7307
+ '''
7308
+ result = self._values.get("enable_execute_command")
7309
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
7310
+
7133
7311
  @builtins.property
7134
7312
  def execution_role_arn(self) -> typing.Optional[builtins.str]:
7135
7313
  '''The Amazon Resource Name (ARN) of the execution role that AWS Batch can assume.
@@ -7329,6 +7507,7 @@ class CfnJobDefinition(
7329
7507
 
7330
7508
  # the properties below are optional
7331
7509
  command=["command"],
7510
+ enable_execute_command=False,
7332
7511
  environment=[batch.CfnJobDefinition.EnvironmentProperty(
7333
7512
  name="name",
7334
7513
  value="value"
@@ -7438,6 +7617,14 @@ class CfnJobDefinition(
7438
7617
  value="value"
7439
7618
  )],
7440
7619
  essential=False,
7620
+ firelens_configuration=batch.CfnJobDefinition.FirelensConfigurationProperty(
7621
+ type="type",
7622
+
7623
+ # the properties below are optional
7624
+ options={
7625
+ "options_key": "options"
7626
+ }
7627
+ ),
7441
7628
  linux_parameters=batch.CfnJobDefinition.LinuxParametersProperty(
7442
7629
  devices=[batch.CfnJobDefinition.DeviceProperty(
7443
7630
  container_path="containerPath",
@@ -7492,6 +7679,7 @@ class CfnJobDefinition(
7492
7679
  )],
7493
7680
  user="user"
7494
7681
  )],
7682
+ enable_execute_command=False,
7495
7683
  execution_role_arn="executionRoleArn",
7496
7684
  ipc_mode="ipcMode",
7497
7685
  pid_mode="pidMode",
@@ -7742,6 +7930,7 @@ class CfnJobDefinition(
7742
7930
 
7743
7931
  # the properties below are optional
7744
7932
  command=["command"],
7933
+ enable_execute_command=False,
7745
7934
  environment=[batch.CfnJobDefinition.EnvironmentProperty(
7746
7935
  name="name",
7747
7936
  value="value"
@@ -7851,6 +8040,14 @@ class CfnJobDefinition(
7851
8040
  value="value"
7852
8041
  )],
7853
8042
  essential=False,
8043
+ firelens_configuration=batch.CfnJobDefinition.FirelensConfigurationProperty(
8044
+ type="type",
8045
+
8046
+ # the properties below are optional
8047
+ options={
8048
+ "options_key": "options"
8049
+ }
8050
+ ),
7854
8051
  linux_parameters=batch.CfnJobDefinition.LinuxParametersProperty(
7855
8052
  devices=[batch.CfnJobDefinition.DeviceProperty(
7856
8053
  container_path="containerPath",
@@ -7905,6 +8102,7 @@ class CfnJobDefinition(
7905
8102
  )],
7906
8103
  user="user"
7907
8104
  )],
8105
+ enable_execute_command=False,
7908
8106
  execution_role_arn="executionRoleArn",
7909
8107
  ipc_mode="ipcMode",
7910
8108
  pid_mode="pidMode",
@@ -9129,6 +9327,7 @@ class CfnJobDefinition(
9129
9327
  "depends_on": "dependsOn",
9130
9328
  "environment": "environment",
9131
9329
  "essential": "essential",
9330
+ "firelens_configuration": "firelensConfiguration",
9132
9331
  "linux_parameters": "linuxParameters",
9133
9332
  "log_configuration": "logConfiguration",
9134
9333
  "mount_points": "mountPoints",
@@ -9151,6 +9350,7 @@ class CfnJobDefinition(
9151
9350
  depends_on: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.TaskContainerDependencyProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
9152
9351
  environment: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.EnvironmentProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
9153
9352
  essential: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
9353
+ firelens_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.FirelensConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
9154
9354
  linux_parameters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.LinuxParametersProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
9155
9355
  log_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.LogConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
9156
9356
  mount_points: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.MountPointProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -9172,6 +9372,7 @@ class CfnJobDefinition(
9172
9372
  :param depends_on: A list of containers that this container depends on.
9173
9373
  :param environment: The environment variables to pass to a container. This parameter maps to Env 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 ``--env`` parameter to `docker run <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/>`_ . .. epigraph:: We don't recommend using plaintext environment variables for sensitive information, such as credential data. > Environment variables cannot start with ``AWS_BATCH`` . This naming convention is reserved for variables that AWS Batch sets.
9174
9374
  :param essential: If the essential parameter of a container is marked as ``true`` , and that container fails or stops for any reason, all other containers that are part of the task are stopped. If the ``essential`` parameter of a container is marked as false, its failure doesn't affect the rest of the containers in a task. If this parameter is omitted, a container is assumed to be essential. All jobs must have at least one essential container. If you have an application that's composed of multiple containers, group containers that are used for a common purpose into components, and separate the different components into multiple task definitions. For more information, see `Application Architecture <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/application_architecture.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
9375
+ :param firelens_configuration: The FireLens configuration for the container. This is used to specify and configure a log router for container logs. For more information, see `Custom log <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html>`_ routing in the *Amazon Elastic Container Service Developer Guide* .
9175
9376
  :param linux_parameters: Linux-specific modifications that are applied to the container, such as Linux kernel capabilities. For more information, see `KernelCapabilities <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_KernelCapabilities.html>`_ .
9176
9377
  :param log_configuration: The log configuration specification for the container. This parameter maps to ``LogConfig`` in the `Create a container <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate>`_ section of the `Docker Remote API <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/>`_ and the ``--log-driver`` option to `docker run <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration>`_ . By default, containers use the same logging driver that the Docker daemon uses. However the container can use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance (or on a different log server for remote logging options). For more information about the options for different supported log drivers, see `Configure logging drivers <https://docs.aws.amazon.com/https://docs.docker.com/engine/admin/logging/overview/>`_ in the *Docker documentation* . .. epigraph:: Amazon ECS currently supports a subset of the logging drivers available to the Docker daemon (shown in the ``LogConfiguration`` data type). Additional log drivers may be available in future releases of the Amazon ECS container agent. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: sudo docker version ``--format '{{.Server.APIVersion}}'`` .. epigraph:: The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ``ECS_AVAILABLE_LOGGING_DRIVERS`` environment variable before containers placed on that instance can use these log configuration options. For more information, see `Amazon ECS container agent configuration <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
9177
9378
  :param mount_points: The mount points for data volumes in your container. This parameter maps to ``Volumes`` in the `Create a container <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate>`_ section of the `Docker Remote API <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/>`_ and the `--volume <https://docs.aws.amazon.com/>`_ option to `docker run <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration>`_ . Windows containers can mount whole directories on the same drive as ``$env:ProgramData`` . Windows containers can't mount directories on a different drive, and mount point can't be across drives.
@@ -9209,6 +9410,14 @@ class CfnJobDefinition(
9209
9410
  value="value"
9210
9411
  )],
9211
9412
  essential=False,
9413
+ firelens_configuration=batch.CfnJobDefinition.FirelensConfigurationProperty(
9414
+ type="type",
9415
+
9416
+ # the properties below are optional
9417
+ options={
9418
+ "options_key": "options"
9419
+ }
9420
+ ),
9212
9421
  linux_parameters=batch.CfnJobDefinition.LinuxParametersProperty(
9213
9422
  devices=[batch.CfnJobDefinition.DeviceProperty(
9214
9423
  container_path="containerPath",
@@ -9271,6 +9480,7 @@ class CfnJobDefinition(
9271
9480
  check_type(argname="argument depends_on", value=depends_on, expected_type=type_hints["depends_on"])
9272
9481
  check_type(argname="argument environment", value=environment, expected_type=type_hints["environment"])
9273
9482
  check_type(argname="argument essential", value=essential, expected_type=type_hints["essential"])
9483
+ check_type(argname="argument firelens_configuration", value=firelens_configuration, expected_type=type_hints["firelens_configuration"])
9274
9484
  check_type(argname="argument linux_parameters", value=linux_parameters, expected_type=type_hints["linux_parameters"])
9275
9485
  check_type(argname="argument log_configuration", value=log_configuration, expected_type=type_hints["log_configuration"])
9276
9486
  check_type(argname="argument mount_points", value=mount_points, expected_type=type_hints["mount_points"])
@@ -9293,6 +9503,8 @@ class CfnJobDefinition(
9293
9503
  self._values["environment"] = environment
9294
9504
  if essential is not None:
9295
9505
  self._values["essential"] = essential
9506
+ if firelens_configuration is not None:
9507
+ self._values["firelens_configuration"] = firelens_configuration
9296
9508
  if linux_parameters is not None:
9297
9509
  self._values["linux_parameters"] = linux_parameters
9298
9510
  if log_configuration is not None:
@@ -9381,6 +9593,19 @@ class CfnJobDefinition(
9381
9593
  result = self._values.get("essential")
9382
9594
  return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
9383
9595
 
9596
+ @builtins.property
9597
+ def firelens_configuration(
9598
+ self,
9599
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.FirelensConfigurationProperty"]]:
9600
+ '''The FireLens configuration for the container.
9601
+
9602
+ This is used to specify and configure a log router for container logs. For more information, see `Custom log <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html>`_ routing in the *Amazon Elastic Container Service Developer Guide* .
9603
+
9604
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-taskcontainerproperties.html#cfn-batch-jobdefinition-taskcontainerproperties-firelensconfiguration
9605
+ '''
9606
+ result = self._values.get("firelens_configuration")
9607
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.FirelensConfigurationProperty"]], result)
9608
+
9384
9609
  @builtins.property
9385
9610
  def linux_parameters(
9386
9611
  self,
@@ -11060,7 +11285,7 @@ class CfnSchedulingPolicy(
11060
11285
  '''The fair-share scheduling policy details.
11061
11286
 
11062
11287
  :param compute_reservation: A value used to reserve some of the available maximum vCPU for share identifiers that aren't already used. The reserved ratio is ``( *computeReservation* /100)^ *ActiveFairShares*`` where ``*ActiveFairShares*`` is the number of active share identifiers. For example, a ``computeReservation`` value of 50 indicates that AWS Batch reserves 50% of the maximum available vCPU if there's only one share identifier. It reserves 25% if there are two share identifiers. It reserves 12.5% if there are three share identifiers. A ``computeReservation`` value of 25 indicates that AWS Batch should reserve 25% of the maximum available vCPU if there's only one share identifier, 6.25% if there are two fair share identifiers, and 1.56% if there are three share identifiers. The minimum value is 0 and the maximum value is 99.
11063
- :param share_decay_seconds: The amount of time (in seconds) to use to calculate a fair-share percentage for each share identifier in use. A value of zero (0) indicates the default minimum time window (600 seconds). The maximum supported value is 604800 (1 week). The decay allows for more recently run jobs to have more weight than jobs that ran earlier. Consider adjusting this number if you have jobs that (on average) run longer than ten minutes, or a large difference in job count or job run times between share identifiers, and the allocation of resources doesnt meet your needs.
11288
+ :param share_decay_seconds: The amount of time (in seconds) to use to calculate a fair-share percentage for each share identifier in use. A value of zero (0) indicates the default minimum time window (600 seconds). The maximum supported value is 604800 (1 week). The decay allows for more recently run jobs to have more weight than jobs that ran earlier. Consider adjusting this number if you have jobs that (on average) run longer than ten minutes, or a large difference in job count or job run times between share identifiers, and the allocation of resources doesn't meet your needs.
11064
11289
  :param share_distribution: An array of ``SharedIdentifier`` objects that contain the weights for the share identifiers for the fair-share policy. Share identifiers that aren't included have a default weight of ``1.0`` .
11065
11290
 
11066
11291
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-schedulingpolicy-fairsharepolicy.html
@@ -11115,7 +11340,7 @@ class CfnSchedulingPolicy(
11115
11340
 
11116
11341
  A value of zero (0) indicates the default minimum time window (600 seconds). The maximum supported value is 604800 (1 week).
11117
11342
 
11118
- The decay allows for more recently run jobs to have more weight than jobs that ran earlier. Consider adjusting this number if you have jobs that (on average) run longer than ten minutes, or a large difference in job count or job run times between share identifiers, and the allocation of resources doesnt meet your needs.
11343
+ The decay allows for more recently run jobs to have more weight than jobs that ran earlier. Consider adjusting this number if you have jobs that (on average) run longer than ten minutes, or a large difference in job count or job run times between share identifiers, and the allocation of resources doesn't meet your needs.
11119
11344
 
11120
11345
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-schedulingpolicy-fairsharepolicy.html#cfn-batch-schedulingpolicy-fairsharepolicy-sharedecayseconds
11121
11346
  '''
@@ -24998,6 +25223,7 @@ def _typecheckingstub__09b3c38642739790560033cae597f009c106d353ddc5faf85f6a7bf48
24998
25223
  *,
24999
25224
  image: builtins.str,
25000
25225
  command: typing.Optional[typing.Sequence[builtins.str]] = None,
25226
+ enable_execute_command: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
25001
25227
  environment: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.EnvironmentProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
25002
25228
  ephemeral_storage: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.EphemeralStorageProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
25003
25229
  execution_role_arn: typing.Optional[builtins.str] = None,
@@ -25042,6 +25268,7 @@ def _typecheckingstub__6153a950309796a66c44ef3a234e02ed7ff91444107709427ae345e4f
25042
25268
  def _typecheckingstub__8e8c39be2b840a158045732ea20d964bf03d380304bbcd66936cb862e6cc2a8e(
25043
25269
  *,
25044
25270
  containers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.TaskContainerPropertiesProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
25271
+ enable_execute_command: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
25045
25272
  ephemeral_storage: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.EphemeralStorageProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
25046
25273
  execution_role_arn: typing.Optional[builtins.str] = None,
25047
25274
  ipc_mode: typing.Optional[builtins.str] = None,
@@ -25173,6 +25400,14 @@ def _typecheckingstub__2b088f865053d4cfdc2700de70d732a768d630a892a20da6fda19303d
25173
25400
  """Type checking stubs"""
25174
25401
  pass
25175
25402
 
25403
+ def _typecheckingstub__012b674cbcf1ea538c209d328bedd805776a59df4892337af673d8b565f4f57d(
25404
+ *,
25405
+ type: builtins.str,
25406
+ options: typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]] = None,
25407
+ ) -> None:
25408
+ """Type checking stubs"""
25409
+ pass
25410
+
25176
25411
  def _typecheckingstub__2bf55e035d36507c507c0ff620eda0a3096496a2cd5226656fc5e4af46e1b9ac(
25177
25412
  *,
25178
25413
  path: typing.Optional[builtins.str] = None,
@@ -25250,6 +25485,7 @@ def _typecheckingstub__9a2309f896452e04abc96277b3c04ead84cbae39e501242083e44da7e
25250
25485
  def _typecheckingstub__cb3ca5619c68fc8ff93d966eb183ea114ed6764e99467d7b283af54300b4b5ca(
25251
25486
  *,
25252
25487
  containers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.TaskContainerPropertiesProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
25488
+ enable_execute_command: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
25253
25489
  execution_role_arn: typing.Optional[builtins.str] = None,
25254
25490
  ipc_mode: typing.Optional[builtins.str] = None,
25255
25491
  pid_mode: typing.Optional[builtins.str] = None,
@@ -25376,6 +25612,7 @@ def _typecheckingstub__4946f5f042ef067bff74424b1b71c92ab13e52a7f47a4271e02811052
25376
25612
  depends_on: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.TaskContainerDependencyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
25377
25613
  environment: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.EnvironmentProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
25378
25614
  essential: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
25615
+ firelens_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.FirelensConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
25379
25616
  linux_parameters: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.LinuxParametersProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
25380
25617
  log_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.LogConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
25381
25618
  mount_points: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.MountPointProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,