aws-cdk-lib 2.174.0__py3-none-any.whl → 2.174.1__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.

@@ -3700,220 +3700,6 @@ class CfnJobDefinition(
3700
3700
  k + "=" + repr(v) for k, v in self._values.items()
3701
3701
  )
3702
3702
 
3703
- @jsii.data_type(
3704
- jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.EFSAuthorizationConfigProperty",
3705
- jsii_struct_bases=[],
3706
- name_mapping={"access_point_id": "accessPointId", "iam": "iam"},
3707
- )
3708
- class EFSAuthorizationConfigProperty:
3709
- def __init__(
3710
- self,
3711
- *,
3712
- access_point_id: typing.Optional[builtins.str] = None,
3713
- iam: typing.Optional[builtins.str] = None,
3714
- ) -> None:
3715
- '''The authorization configuration details for the Amazon EFS file system.
3716
-
3717
- :param access_point_id: The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the ``EFSVolumeConfiguration`` must either be omitted or set to ``/`` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the ``EFSVolumeConfiguration`` . For more information, see `Working with Amazon EFS access points <https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html>`_ in the *Amazon Elastic File System User Guide* .
3718
- :param iam: Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system. If enabled, transit encryption must be enabled in the ``EFSVolumeConfiguration`` . If this parameter is omitted, the default value of ``DISABLED`` is used. For more information, see `Using Amazon EFS access points <https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints>`_ in the *AWS Batch User Guide* . EFS IAM authorization requires that ``TransitEncryption`` be ``ENABLED`` and that a ``JobRoleArn`` is specified.
3719
-
3720
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-efsauthorizationconfig.html
3721
- :exampleMetadata: fixture=_generated
3722
-
3723
- Example::
3724
-
3725
- # The code below shows an example of how to instantiate this type.
3726
- # The values are placeholders you should change.
3727
- from aws_cdk import aws_batch as batch
3728
-
3729
- e_fSAuthorization_config_property = batch.CfnJobDefinition.EFSAuthorizationConfigProperty(
3730
- access_point_id="accessPointId",
3731
- iam="iam"
3732
- )
3733
- '''
3734
- if __debug__:
3735
- type_hints = typing.get_type_hints(_typecheckingstub__6e96fe4d6e78af8198838e1f3e7014c5fd996324833b97cdff758044ba792c6a)
3736
- check_type(argname="argument access_point_id", value=access_point_id, expected_type=type_hints["access_point_id"])
3737
- check_type(argname="argument iam", value=iam, expected_type=type_hints["iam"])
3738
- self._values: typing.Dict[builtins.str, typing.Any] = {}
3739
- if access_point_id is not None:
3740
- self._values["access_point_id"] = access_point_id
3741
- if iam is not None:
3742
- self._values["iam"] = iam
3743
-
3744
- @builtins.property
3745
- def access_point_id(self) -> typing.Optional[builtins.str]:
3746
- '''The Amazon EFS access point ID to use.
3747
-
3748
- If an access point is specified, the root directory value specified in the ``EFSVolumeConfiguration`` must either be omitted or set to ``/`` which enforces the path set on the EFS access point. If an access point is used, transit encryption must be enabled in the ``EFSVolumeConfiguration`` . For more information, see `Working with Amazon EFS access points <https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html>`_ in the *Amazon Elastic File System User Guide* .
3749
-
3750
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-efsauthorizationconfig.html#cfn-batch-jobdefinition-efsauthorizationconfig-accesspointid
3751
- '''
3752
- result = self._values.get("access_point_id")
3753
- return typing.cast(typing.Optional[builtins.str], result)
3754
-
3755
- @builtins.property
3756
- def iam(self) -> typing.Optional[builtins.str]:
3757
- '''Whether or not to use the AWS Batch job IAM role defined in a job definition when mounting the Amazon EFS file system.
3758
-
3759
- If enabled, transit encryption must be enabled in the ``EFSVolumeConfiguration`` . If this parameter is omitted, the default value of ``DISABLED`` is used. For more information, see `Using Amazon EFS access points <https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html#efs-volume-accesspoints>`_ in the *AWS Batch User Guide* . EFS IAM authorization requires that ``TransitEncryption`` be ``ENABLED`` and that a ``JobRoleArn`` is specified.
3760
-
3761
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-efsauthorizationconfig.html#cfn-batch-jobdefinition-efsauthorizationconfig-iam
3762
- '''
3763
- result = self._values.get("iam")
3764
- return typing.cast(typing.Optional[builtins.str], result)
3765
-
3766
- def __eq__(self, rhs: typing.Any) -> builtins.bool:
3767
- return isinstance(rhs, self.__class__) and rhs._values == self._values
3768
-
3769
- def __ne__(self, rhs: typing.Any) -> builtins.bool:
3770
- return not (rhs == self)
3771
-
3772
- def __repr__(self) -> str:
3773
- return "EFSAuthorizationConfigProperty(%s)" % ", ".join(
3774
- k + "=" + repr(v) for k, v in self._values.items()
3775
- )
3776
-
3777
- @jsii.data_type(
3778
- jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.EFSVolumeConfigurationProperty",
3779
- jsii_struct_bases=[],
3780
- name_mapping={
3781
- "file_system_id": "fileSystemId",
3782
- "authorization_config": "authorizationConfig",
3783
- "root_directory": "rootDirectory",
3784
- "transit_encryption": "transitEncryption",
3785
- "transit_encryption_port": "transitEncryptionPort",
3786
- },
3787
- )
3788
- class EFSVolumeConfigurationProperty:
3789
- def __init__(
3790
- self,
3791
- *,
3792
- file_system_id: builtins.str,
3793
- authorization_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.EFSAuthorizationConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3794
- root_directory: typing.Optional[builtins.str] = None,
3795
- transit_encryption: typing.Optional[builtins.str] = None,
3796
- transit_encryption_port: typing.Optional[jsii.Number] = None,
3797
- ) -> None:
3798
- '''This is used when you're using an Amazon Elastic File System file system for job storage.
3799
-
3800
- For more information, see `Amazon EFS Volumes <https://docs.aws.amazon.com/batch/latest/userguide/efs-volumes.html>`_ in the *AWS Batch User Guide* .
3801
-
3802
- :param file_system_id: The Amazon EFS file system ID to use.
3803
- :param authorization_config: The authorization configuration details for the Amazon EFS file system.
3804
- :param root_directory: The directory within the Amazon EFS file system to mount as the root directory inside the host. If this parameter is omitted, the root of the Amazon EFS volume is used instead. Specifying ``/`` has the same effect as omitting this parameter. The maximum length is 4,096 characters. .. epigraph:: If an EFS access point is specified in the ``authorizationConfig`` , the root directory parameter must either be omitted or set to ``/`` , which enforces the path set on the Amazon EFS access point.
3805
- :param transit_encryption: Determines whether to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server. Transit encryption must be enabled if Amazon EFS IAM authorization is used. If this parameter is omitted, the default value of ``DISABLED`` is used. For more information, see `Encrypting data in transit <https://docs.aws.amazon.com/efs/latest/ug/encryption-in-transit.html>`_ in the *Amazon Elastic File System User Guide* .
3806
- :param transit_encryption_port: The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server. If you don't specify a transit encryption port, it uses the port selection strategy that the Amazon EFS mount helper uses. The value must be between 0 and 65,535. For more information, see `EFS mount helper <https://docs.aws.amazon.com/efs/latest/ug/efs-mount-helper.html>`_ in the *Amazon Elastic File System User Guide* .
3807
-
3808
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-efsvolumeconfiguration.html
3809
- :exampleMetadata: fixture=_generated
3810
-
3811
- Example::
3812
-
3813
- # The code below shows an example of how to instantiate this type.
3814
- # The values are placeholders you should change.
3815
- from aws_cdk import aws_batch as batch
3816
-
3817
- e_fSVolume_configuration_property = batch.CfnJobDefinition.EFSVolumeConfigurationProperty(
3818
- file_system_id="fileSystemId",
3819
-
3820
- # the properties below are optional
3821
- authorization_config=batch.CfnJobDefinition.EFSAuthorizationConfigProperty(
3822
- access_point_id="accessPointId",
3823
- iam="iam"
3824
- ),
3825
- root_directory="rootDirectory",
3826
- transit_encryption="transitEncryption",
3827
- transit_encryption_port=123
3828
- )
3829
- '''
3830
- if __debug__:
3831
- type_hints = typing.get_type_hints(_typecheckingstub__013a9cd8939e91b624e957abcdc2e30af9676f2dfd7131d966f2e13f5af8e8ee)
3832
- check_type(argname="argument file_system_id", value=file_system_id, expected_type=type_hints["file_system_id"])
3833
- check_type(argname="argument authorization_config", value=authorization_config, expected_type=type_hints["authorization_config"])
3834
- check_type(argname="argument root_directory", value=root_directory, expected_type=type_hints["root_directory"])
3835
- check_type(argname="argument transit_encryption", value=transit_encryption, expected_type=type_hints["transit_encryption"])
3836
- check_type(argname="argument transit_encryption_port", value=transit_encryption_port, expected_type=type_hints["transit_encryption_port"])
3837
- self._values: typing.Dict[builtins.str, typing.Any] = {
3838
- "file_system_id": file_system_id,
3839
- }
3840
- if authorization_config is not None:
3841
- self._values["authorization_config"] = authorization_config
3842
- if root_directory is not None:
3843
- self._values["root_directory"] = root_directory
3844
- if transit_encryption is not None:
3845
- self._values["transit_encryption"] = transit_encryption
3846
- if transit_encryption_port is not None:
3847
- self._values["transit_encryption_port"] = transit_encryption_port
3848
-
3849
- @builtins.property
3850
- def file_system_id(self) -> builtins.str:
3851
- '''The Amazon EFS file system ID to use.
3852
-
3853
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-efsvolumeconfiguration.html#cfn-batch-jobdefinition-efsvolumeconfiguration-filesystemid
3854
- '''
3855
- result = self._values.get("file_system_id")
3856
- assert result is not None, "Required property 'file_system_id' is missing"
3857
- return typing.cast(builtins.str, result)
3858
-
3859
- @builtins.property
3860
- def authorization_config(
3861
- self,
3862
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.EFSAuthorizationConfigProperty"]]:
3863
- '''The authorization configuration details for the Amazon EFS file system.
3864
-
3865
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-efsvolumeconfiguration.html#cfn-batch-jobdefinition-efsvolumeconfiguration-authorizationconfig
3866
- '''
3867
- result = self._values.get("authorization_config")
3868
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.EFSAuthorizationConfigProperty"]], result)
3869
-
3870
- @builtins.property
3871
- def root_directory(self) -> typing.Optional[builtins.str]:
3872
- '''The directory within the Amazon EFS file system to mount as the root directory inside the host.
3873
-
3874
- If this parameter is omitted, the root of the Amazon EFS volume is used instead. Specifying ``/`` has the same effect as omitting this parameter. The maximum length is 4,096 characters.
3875
- .. epigraph::
3876
-
3877
- If an EFS access point is specified in the ``authorizationConfig`` , the root directory parameter must either be omitted or set to ``/`` , which enforces the path set on the Amazon EFS access point.
3878
-
3879
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-efsvolumeconfiguration.html#cfn-batch-jobdefinition-efsvolumeconfiguration-rootdirectory
3880
- '''
3881
- result = self._values.get("root_directory")
3882
- return typing.cast(typing.Optional[builtins.str], result)
3883
-
3884
- @builtins.property
3885
- def transit_encryption(self) -> typing.Optional[builtins.str]:
3886
- '''Determines whether to enable encryption for Amazon EFS data in transit between the Amazon ECS host and the Amazon EFS server.
3887
-
3888
- Transit encryption must be enabled if Amazon EFS IAM authorization is used. If this parameter is omitted, the default value of ``DISABLED`` is used. For more information, see `Encrypting data in transit <https://docs.aws.amazon.com/efs/latest/ug/encryption-in-transit.html>`_ in the *Amazon Elastic File System User Guide* .
3889
-
3890
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-efsvolumeconfiguration.html#cfn-batch-jobdefinition-efsvolumeconfiguration-transitencryption
3891
- '''
3892
- result = self._values.get("transit_encryption")
3893
- return typing.cast(typing.Optional[builtins.str], result)
3894
-
3895
- @builtins.property
3896
- def transit_encryption_port(self) -> typing.Optional[jsii.Number]:
3897
- '''The port to use when sending encrypted data between the Amazon ECS host and the Amazon EFS server.
3898
-
3899
- If you don't specify a transit encryption port, it uses the port selection strategy that the Amazon EFS mount helper uses. The value must be between 0 and 65,535. For more information, see `EFS mount helper <https://docs.aws.amazon.com/efs/latest/ug/efs-mount-helper.html>`_ in the *Amazon Elastic File System User Guide* .
3900
-
3901
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-efsvolumeconfiguration.html#cfn-batch-jobdefinition-efsvolumeconfiguration-transitencryptionport
3902
- '''
3903
- result = self._values.get("transit_encryption_port")
3904
- return typing.cast(typing.Optional[jsii.Number], result)
3905
-
3906
- def __eq__(self, rhs: typing.Any) -> builtins.bool:
3907
- return isinstance(rhs, self.__class__) and rhs._values == self._values
3908
-
3909
- def __ne__(self, rhs: typing.Any) -> builtins.bool:
3910
- return not (rhs == self)
3911
-
3912
- def __repr__(self) -> str:
3913
- return "EFSVolumeConfigurationProperty(%s)" % ", ".join(
3914
- k + "=" + repr(v) for k, v in self._values.items()
3915
- )
3916
-
3917
3703
  @jsii.data_type(
3918
3704
  jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.EcsPropertiesProperty",
3919
3705
  jsii_struct_bases=[],
@@ -4025,12 +3811,12 @@ class CfnJobDefinition(
4025
3811
  operating_system_family="operatingSystemFamily"
4026
3812
  ),
4027
3813
  task_role_arn="taskRoleArn",
4028
- volumes=[batch.CfnJobDefinition.VolumeProperty(
4029
- efs_volume_configuration=batch.CfnJobDefinition.EFSVolumeConfigurationProperty(
3814
+ volumes=[batch.CfnJobDefinition.VolumesProperty(
3815
+ efs_volume_configuration=batch.CfnJobDefinition.EfsVolumeConfigurationProperty(
4030
3816
  file_system_id="fileSystemId",
4031
3817
 
4032
3818
  # the properties below are optional
4033
- authorization_config=batch.CfnJobDefinition.EFSAuthorizationConfigProperty(
3819
+ authorization_config=batch.CfnJobDefinition.AuthorizationConfigProperty(
4034
3820
  access_point_id="accessPointId",
4035
3821
  iam="iam"
4036
3822
  ),
@@ -4038,7 +3824,7 @@ class CfnJobDefinition(
4038
3824
  transit_encryption="transitEncryption",
4039
3825
  transit_encryption_port=123
4040
3826
  ),
4041
- host=batch.CfnJobDefinition.HostProperty(
3827
+ host=batch.CfnJobDefinition.VolumesHostProperty(
4042
3828
  source_path="sourcePath"
4043
3829
  ),
4044
3830
  name="name"
@@ -4109,7 +3895,7 @@ class CfnJobDefinition(
4109
3895
  platform_version: typing.Optional[builtins.str] = None,
4110
3896
  runtime_platform: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.RuntimePlatformProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4111
3897
  task_role_arn: typing.Optional[builtins.str] = None,
4112
- volumes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.VolumeProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
3898
+ volumes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.VolumesProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4113
3899
  ) -> None:
4114
3900
  '''The properties for a task definition that describes the container and volume definitions of an Amazon ECS task.
4115
3901
 
@@ -4221,12 +4007,12 @@ class CfnJobDefinition(
4221
4007
  operating_system_family="operatingSystemFamily"
4222
4008
  ),
4223
4009
  task_role_arn="taskRoleArn",
4224
- volumes=[batch.CfnJobDefinition.VolumeProperty(
4225
- efs_volume_configuration=batch.CfnJobDefinition.EFSVolumeConfigurationProperty(
4010
+ volumes=[batch.CfnJobDefinition.VolumesProperty(
4011
+ efs_volume_configuration=batch.CfnJobDefinition.EfsVolumeConfigurationProperty(
4226
4012
  file_system_id="fileSystemId",
4227
4013
 
4228
4014
  # the properties below are optional
4229
- authorization_config=batch.CfnJobDefinition.EFSAuthorizationConfigProperty(
4015
+ authorization_config=batch.CfnJobDefinition.AuthorizationConfigProperty(
4230
4016
  access_point_id="accessPointId",
4231
4017
  iam="iam"
4232
4018
  ),
@@ -4234,7 +4020,7 @@ class CfnJobDefinition(
4234
4020
  transit_encryption="transitEncryption",
4235
4021
  transit_encryption_port=123
4236
4022
  ),
4237
- host=batch.CfnJobDefinition.HostProperty(
4023
+ host=batch.CfnJobDefinition.VolumesHostProperty(
4238
4024
  source_path="sourcePath"
4239
4025
  ),
4240
4026
  name="name"
@@ -4397,13 +4183,13 @@ class CfnJobDefinition(
4397
4183
  @builtins.property
4398
4184
  def volumes(
4399
4185
  self,
4400
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.VolumeProperty"]]]]:
4186
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.VolumesProperty"]]]]:
4401
4187
  '''A list of volumes that are associated with the job.
4402
4188
 
4403
4189
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-ecstaskproperties.html#cfn-batch-jobdefinition-ecstaskproperties-volumes
4404
4190
  '''
4405
4191
  result = self._values.get("volumes")
4406
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.VolumeProperty"]]]], result)
4192
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.VolumesProperty"]]]], result)
4407
4193
 
4408
4194
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
4409
4195
  return isinstance(rhs, self.__class__) and rhs._values == self._values
@@ -5737,68 +5523,6 @@ class CfnJobDefinition(
5737
5523
  k + "=" + repr(v) for k, v in self._values.items()
5738
5524
  )
5739
5525
 
5740
- @jsii.data_type(
5741
- jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.HostProperty",
5742
- jsii_struct_bases=[],
5743
- name_mapping={"source_path": "sourcePath"},
5744
- )
5745
- class HostProperty:
5746
- def __init__(
5747
- self,
5748
- *,
5749
- source_path: typing.Optional[builtins.str] = None,
5750
- ) -> None:
5751
- '''Determine whether your data volume persists on the host container instance and where it's stored.
5752
-
5753
- If this parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running.
5754
-
5755
- :param source_path: The path on the host container instance that's presented to the container. If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported. .. epigraph:: This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs.
5756
-
5757
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-host.html
5758
- :exampleMetadata: fixture=_generated
5759
-
5760
- Example::
5761
-
5762
- # The code below shows an example of how to instantiate this type.
5763
- # The values are placeholders you should change.
5764
- from aws_cdk import aws_batch as batch
5765
-
5766
- host_property = batch.CfnJobDefinition.HostProperty(
5767
- source_path="sourcePath"
5768
- )
5769
- '''
5770
- if __debug__:
5771
- type_hints = typing.get_type_hints(_typecheckingstub__b32380c7fcfaea291ccd7d96f2eeed7d7bdebff21f3f1a30bf5467315c2c381d)
5772
- check_type(argname="argument source_path", value=source_path, expected_type=type_hints["source_path"])
5773
- self._values: typing.Dict[builtins.str, typing.Any] = {}
5774
- if source_path is not None:
5775
- self._values["source_path"] = source_path
5776
-
5777
- @builtins.property
5778
- def source_path(self) -> typing.Optional[builtins.str]:
5779
- '''The path on the host container instance that's presented to the container.
5780
-
5781
- If this parameter is empty, then the Docker daemon has assigned a host path for you. If this parameter contains a file location, then the data volume persists at the specified location on the host container instance until you delete it manually. If the source path location doesn't exist on the host container instance, the Docker daemon creates it. If the location does exist, the contents of the source path folder are exported.
5782
- .. epigraph::
5783
-
5784
- This parameter isn't applicable to jobs that run on Fargate resources. Don't provide this for these jobs.
5785
-
5786
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-host.html#cfn-batch-jobdefinition-host-sourcepath
5787
- '''
5788
- result = self._values.get("source_path")
5789
- return typing.cast(typing.Optional[builtins.str], result)
5790
-
5791
- def __eq__(self, rhs: typing.Any) -> builtins.bool:
5792
- return isinstance(rhs, self.__class__) and rhs._values == self._values
5793
-
5794
- def __ne__(self, rhs: typing.Any) -> builtins.bool:
5795
- return not (rhs == self)
5796
-
5797
- def __repr__(self) -> str:
5798
- return "HostProperty(%s)" % ", ".join(
5799
- k + "=" + repr(v) for k, v in self._values.items()
5800
- )
5801
-
5802
5526
  @jsii.data_type(
5803
5527
  jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.ImagePullSecretProperty",
5804
5528
  jsii_struct_bases=[],
@@ -6565,12 +6289,12 @@ class CfnJobDefinition(
6565
6289
  ipc_mode="ipcMode",
6566
6290
  pid_mode="pidMode",
6567
6291
  task_role_arn="taskRoleArn",
6568
- volumes=[batch.CfnJobDefinition.VolumeProperty(
6569
- efs_volume_configuration=batch.CfnJobDefinition.EFSVolumeConfigurationProperty(
6292
+ volumes=[batch.CfnJobDefinition.VolumesProperty(
6293
+ efs_volume_configuration=batch.CfnJobDefinition.EfsVolumeConfigurationProperty(
6570
6294
  file_system_id="fileSystemId",
6571
6295
 
6572
6296
  # the properties below are optional
6573
- authorization_config=batch.CfnJobDefinition.EFSAuthorizationConfigProperty(
6297
+ authorization_config=batch.CfnJobDefinition.AuthorizationConfigProperty(
6574
6298
  access_point_id="accessPointId",
6575
6299
  iam="iam"
6576
6300
  ),
@@ -6578,7 +6302,7 @@ class CfnJobDefinition(
6578
6302
  transit_encryption="transitEncryption",
6579
6303
  transit_encryption_port=123
6580
6304
  ),
6581
- host=batch.CfnJobDefinition.HostProperty(
6305
+ host=batch.CfnJobDefinition.VolumesHostProperty(
6582
6306
  source_path="sourcePath"
6583
6307
  ),
6584
6308
  name="name"
@@ -6636,7 +6360,7 @@ class CfnJobDefinition(
6636
6360
  ipc_mode: typing.Optional[builtins.str] = None,
6637
6361
  pid_mode: typing.Optional[builtins.str] = None,
6638
6362
  task_role_arn: typing.Optional[builtins.str] = None,
6639
- volumes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.VolumeProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
6363
+ volumes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.VolumesProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
6640
6364
  ) -> None:
6641
6365
  '''
6642
6366
  :param containers:
@@ -6730,12 +6454,12 @@ class CfnJobDefinition(
6730
6454
  ipc_mode="ipcMode",
6731
6455
  pid_mode="pidMode",
6732
6456
  task_role_arn="taskRoleArn",
6733
- volumes=[batch.CfnJobDefinition.VolumeProperty(
6734
- efs_volume_configuration=batch.CfnJobDefinition.EFSVolumeConfigurationProperty(
6457
+ volumes=[batch.CfnJobDefinition.VolumesProperty(
6458
+ efs_volume_configuration=batch.CfnJobDefinition.EfsVolumeConfigurationProperty(
6735
6459
  file_system_id="fileSystemId",
6736
6460
 
6737
6461
  # the properties below are optional
6738
- authorization_config=batch.CfnJobDefinition.EFSAuthorizationConfigProperty(
6462
+ authorization_config=batch.CfnJobDefinition.AuthorizationConfigProperty(
6739
6463
  access_point_id="accessPointId",
6740
6464
  iam="iam"
6741
6465
  ),
@@ -6743,7 +6467,7 @@ class CfnJobDefinition(
6743
6467
  transit_encryption="transitEncryption",
6744
6468
  transit_encryption_port=123
6745
6469
  ),
6746
- host=batch.CfnJobDefinition.HostProperty(
6470
+ host=batch.CfnJobDefinition.VolumesHostProperty(
6747
6471
  source_path="sourcePath"
6748
6472
  ),
6749
6473
  name="name"
@@ -6817,12 +6541,12 @@ class CfnJobDefinition(
6817
6541
  @builtins.property
6818
6542
  def volumes(
6819
6543
  self,
6820
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.VolumeProperty"]]]]:
6544
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.VolumesProperty"]]]]:
6821
6545
  '''
6822
6546
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-multinodeecstaskproperties.html#cfn-batch-jobdefinition-multinodeecstaskproperties-volumes
6823
6547
  '''
6824
6548
  result = self._values.get("volumes")
6825
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.VolumeProperty"]]]], result)
6549
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.VolumesProperty"]]]], result)
6826
6550
 
6827
6551
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
6828
6552
  return isinstance(rhs, self.__class__) and rhs._values == self._values
@@ -7113,12 +6837,12 @@ class CfnJobDefinition(
7113
6837
  ipc_mode="ipcMode",
7114
6838
  pid_mode="pidMode",
7115
6839
  task_role_arn="taskRoleArn",
7116
- volumes=[batch.CfnJobDefinition.VolumeProperty(
7117
- efs_volume_configuration=batch.CfnJobDefinition.EFSVolumeConfigurationProperty(
6840
+ volumes=[batch.CfnJobDefinition.VolumesProperty(
6841
+ efs_volume_configuration=batch.CfnJobDefinition.EfsVolumeConfigurationProperty(
7118
6842
  file_system_id="fileSystemId",
7119
6843
 
7120
6844
  # the properties below are optional
7121
- authorization_config=batch.CfnJobDefinition.EFSAuthorizationConfigProperty(
6845
+ authorization_config=batch.CfnJobDefinition.AuthorizationConfigProperty(
7122
6846
  access_point_id="accessPointId",
7123
6847
  iam="iam"
7124
6848
  ),
@@ -7126,7 +6850,7 @@ class CfnJobDefinition(
7126
6850
  transit_encryption="transitEncryption",
7127
6851
  transit_encryption_port=123
7128
6852
  ),
7129
- host=batch.CfnJobDefinition.HostProperty(
6853
+ host=batch.CfnJobDefinition.VolumesHostProperty(
7130
6854
  source_path="sourcePath"
7131
6855
  ),
7132
6856
  name="name"
@@ -7509,12 +7233,12 @@ class CfnJobDefinition(
7509
7233
  ipc_mode="ipcMode",
7510
7234
  pid_mode="pidMode",
7511
7235
  task_role_arn="taskRoleArn",
7512
- volumes=[batch.CfnJobDefinition.VolumeProperty(
7513
- efs_volume_configuration=batch.CfnJobDefinition.EFSVolumeConfigurationProperty(
7236
+ volumes=[batch.CfnJobDefinition.VolumesProperty(
7237
+ efs_volume_configuration=batch.CfnJobDefinition.EfsVolumeConfigurationProperty(
7514
7238
  file_system_id="fileSystemId",
7515
7239
 
7516
7240
  # the properties below are optional
7517
- authorization_config=batch.CfnJobDefinition.EFSAuthorizationConfigProperty(
7241
+ authorization_config=batch.CfnJobDefinition.AuthorizationConfigProperty(
7518
7242
  access_point_id="accessPointId",
7519
7243
  iam="iam"
7520
7244
  ),
@@ -7522,7 +7246,7 @@ class CfnJobDefinition(
7522
7246
  transit_encryption="transitEncryption",
7523
7247
  transit_encryption_port=123
7524
7248
  ),
7525
- host=batch.CfnJobDefinition.HostProperty(
7249
+ host=batch.CfnJobDefinition.VolumesHostProperty(
7526
7250
  source_path="sourcePath"
7527
7251
  ),
7528
7252
  name="name"
@@ -9387,121 +9111,6 @@ class CfnJobDefinition(
9387
9111
  k + "=" + repr(v) for k, v in self._values.items()
9388
9112
  )
9389
9113
 
9390
- @jsii.data_type(
9391
- jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.VolumeProperty",
9392
- jsii_struct_bases=[],
9393
- name_mapping={
9394
- "efs_volume_configuration": "efsVolumeConfiguration",
9395
- "host": "host",
9396
- "name": "name",
9397
- },
9398
- )
9399
- class VolumeProperty:
9400
- def __init__(
9401
- self,
9402
- *,
9403
- efs_volume_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.EFSVolumeConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
9404
- host: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.HostProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
9405
- name: typing.Optional[builtins.str] = None,
9406
- ) -> None:
9407
- '''A data volume that's used in a job's container properties.
9408
-
9409
- :param efs_volume_configuration: This parameter is specified when you're using an Amazon Elastic File System file system for job storage. Jobs that are running on Fargate resources must specify a ``platformVersion`` of at least ``1.4.0`` .
9410
- :param host: The contents of the ``host`` parameter determine whether your data volume persists on the host container instance and where it's stored. If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running. .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided.
9411
- :param name: The name of the volume. It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the ``sourceVolume`` parameter of container definition ``mountPoints`` .
9412
-
9413
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volume.html
9414
- :exampleMetadata: fixture=_generated
9415
-
9416
- Example::
9417
-
9418
- # The code below shows an example of how to instantiate this type.
9419
- # The values are placeholders you should change.
9420
- from aws_cdk import aws_batch as batch
9421
-
9422
- volume_property = batch.CfnJobDefinition.VolumeProperty(
9423
- efs_volume_configuration=batch.CfnJobDefinition.EFSVolumeConfigurationProperty(
9424
- file_system_id="fileSystemId",
9425
-
9426
- # the properties below are optional
9427
- authorization_config=batch.CfnJobDefinition.EFSAuthorizationConfigProperty(
9428
- access_point_id="accessPointId",
9429
- iam="iam"
9430
- ),
9431
- root_directory="rootDirectory",
9432
- transit_encryption="transitEncryption",
9433
- transit_encryption_port=123
9434
- ),
9435
- host=batch.CfnJobDefinition.HostProperty(
9436
- source_path="sourcePath"
9437
- ),
9438
- name="name"
9439
- )
9440
- '''
9441
- if __debug__:
9442
- type_hints = typing.get_type_hints(_typecheckingstub__cd8db902f4f3cc01d37fedaa866b49a8d1fe354a281572098972e744ed95af28)
9443
- check_type(argname="argument efs_volume_configuration", value=efs_volume_configuration, expected_type=type_hints["efs_volume_configuration"])
9444
- check_type(argname="argument host", value=host, expected_type=type_hints["host"])
9445
- check_type(argname="argument name", value=name, expected_type=type_hints["name"])
9446
- self._values: typing.Dict[builtins.str, typing.Any] = {}
9447
- if efs_volume_configuration is not None:
9448
- self._values["efs_volume_configuration"] = efs_volume_configuration
9449
- if host is not None:
9450
- self._values["host"] = host
9451
- if name is not None:
9452
- self._values["name"] = name
9453
-
9454
- @builtins.property
9455
- def efs_volume_configuration(
9456
- self,
9457
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.EFSVolumeConfigurationProperty"]]:
9458
- '''This parameter is specified when you're using an Amazon Elastic File System file system for job storage.
9459
-
9460
- Jobs that are running on Fargate resources must specify a ``platformVersion`` of at least ``1.4.0`` .
9461
-
9462
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volume.html#cfn-batch-jobdefinition-volume-efsvolumeconfiguration
9463
- '''
9464
- result = self._values.get("efs_volume_configuration")
9465
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.EFSVolumeConfigurationProperty"]], result)
9466
-
9467
- @builtins.property
9468
- def host(
9469
- self,
9470
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.HostProperty"]]:
9471
- '''The contents of the ``host`` parameter determine whether your data volume persists on the host container instance and where it's stored.
9472
-
9473
- If the host parameter is empty, then the Docker daemon assigns a host path for your data volume. However, the data isn't guaranteed to persist after the containers that are associated with it stop running.
9474
- .. epigraph::
9475
-
9476
- This parameter isn't applicable to jobs that are running on Fargate resources and shouldn't be provided.
9477
-
9478
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volume.html#cfn-batch-jobdefinition-volume-host
9479
- '''
9480
- result = self._values.get("host")
9481
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.HostProperty"]], result)
9482
-
9483
- @builtins.property
9484
- def name(self) -> typing.Optional[builtins.str]:
9485
- '''The name of the volume.
9486
-
9487
- It can be up to 255 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_). This name is referenced in the ``sourceVolume`` parameter of container definition ``mountPoints`` .
9488
-
9489
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-volume.html#cfn-batch-jobdefinition-volume-name
9490
- '''
9491
- result = self._values.get("name")
9492
- return typing.cast(typing.Optional[builtins.str], result)
9493
-
9494
- def __eq__(self, rhs: typing.Any) -> builtins.bool:
9495
- return isinstance(rhs, self.__class__) and rhs._values == self._values
9496
-
9497
- def __ne__(self, rhs: typing.Any) -> builtins.bool:
9498
- return not (rhs == self)
9499
-
9500
- def __repr__(self) -> str:
9501
- return "VolumeProperty(%s)" % ", ".join(
9502
- k + "=" + repr(v) for k, v in self._values.items()
9503
- )
9504
-
9505
9114
  @jsii.data_type(
9506
9115
  jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.VolumesHostProperty",
9507
9116
  jsii_struct_bases=[],
@@ -24596,25 +24205,6 @@ def _typecheckingstub__adbf78805f7f3d50af2c331ead7e1f53e092ea7a76782151236bad4f3
24596
24205
  """Type checking stubs"""
24597
24206
  pass
24598
24207
 
24599
- def _typecheckingstub__6e96fe4d6e78af8198838e1f3e7014c5fd996324833b97cdff758044ba792c6a(
24600
- *,
24601
- access_point_id: typing.Optional[builtins.str] = None,
24602
- iam: typing.Optional[builtins.str] = None,
24603
- ) -> None:
24604
- """Type checking stubs"""
24605
- pass
24606
-
24607
- def _typecheckingstub__013a9cd8939e91b624e957abcdc2e30af9676f2dfd7131d966f2e13f5af8e8ee(
24608
- *,
24609
- file_system_id: builtins.str,
24610
- authorization_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.EFSAuthorizationConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
24611
- root_directory: typing.Optional[builtins.str] = None,
24612
- transit_encryption: typing.Optional[builtins.str] = None,
24613
- transit_encryption_port: typing.Optional[jsii.Number] = None,
24614
- ) -> None:
24615
- """Type checking stubs"""
24616
- pass
24617
-
24618
24208
  def _typecheckingstub__6153a950309796a66c44ef3a234e02ed7ff91444107709427ae345e4f0e64828(
24619
24209
  *,
24620
24210
  task_properties: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.EcsTaskPropertiesProperty, typing.Dict[builtins.str, typing.Any]]]]],
@@ -24633,7 +24223,7 @@ def _typecheckingstub__8e8c39be2b840a158045732ea20d964bf03d380304bbcd66936cb862e
24633
24223
  platform_version: typing.Optional[builtins.str] = None,
24634
24224
  runtime_platform: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.RuntimePlatformProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
24635
24225
  task_role_arn: typing.Optional[builtins.str] = None,
24636
- volumes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.VolumeProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
24226
+ volumes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.VolumesProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
24637
24227
  ) -> None:
24638
24228
  """Type checking stubs"""
24639
24229
  pass
@@ -24753,13 +24343,6 @@ def _typecheckingstub__2bf55e035d36507c507c0ff620eda0a3096496a2cd5226656fc5e4af4
24753
24343
  """Type checking stubs"""
24754
24344
  pass
24755
24345
 
24756
- def _typecheckingstub__b32380c7fcfaea291ccd7d96f2eeed7d7bdebff21f3f1a30bf5467315c2c381d(
24757
- *,
24758
- source_path: typing.Optional[builtins.str] = None,
24759
- ) -> None:
24760
- """Type checking stubs"""
24761
- pass
24762
-
24763
24346
  def _typecheckingstub__510e7e45fa5176303c62970a1bb0161e95eb0fcd2438671b35f8c5a3c506b95a(
24764
24347
  *,
24765
24348
  name: typing.Optional[builtins.str] = None,
@@ -24834,7 +24417,7 @@ def _typecheckingstub__cb3ca5619c68fc8ff93d966eb183ea114ed6764e99467d7b283af5430
24834
24417
  ipc_mode: typing.Optional[builtins.str] = None,
24835
24418
  pid_mode: typing.Optional[builtins.str] = None,
24836
24419
  task_role_arn: typing.Optional[builtins.str] = None,
24837
- volumes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.VolumeProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
24420
+ volumes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.VolumesProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
24838
24421
  ) -> None:
24839
24422
  """Type checking stubs"""
24840
24423
  pass
@@ -24995,15 +24578,6 @@ def _typecheckingstub__9422053e6f2d5b223ad6edca9c1d424075ea7f34d3f55f01ed34ea8f4
24995
24578
  """Type checking stubs"""
24996
24579
  pass
24997
24580
 
24998
- def _typecheckingstub__cd8db902f4f3cc01d37fedaa866b49a8d1fe354a281572098972e744ed95af28(
24999
- *,
25000
- efs_volume_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.EFSVolumeConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
25001
- host: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.HostProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
25002
- name: typing.Optional[builtins.str] = None,
25003
- ) -> None:
25004
- """Type checking stubs"""
25005
- pass
25006
-
25007
24581
  def _typecheckingstub__1af85cd0eadb4e77501a8751a1c3fc18ec19311f49db5d0f921588460010456a(
25008
24582
  *,
25009
24583
  source_path: typing.Optional[builtins.str] = None,