Interface CfnJobDefinition.NodePropertiesProperty

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnJobDefinition.NodePropertiesProperty.Jsii$Proxy
Enclosing class:
CfnJobDefinition

@Stability(Stable) public static interface CfnJobDefinition.NodePropertiesProperty extends software.amazon.jsii.JsiiSerializable
An object that represents the node properties of a multi-node parallel job.

Node properties can't be specified for Amazon EKS based job definitions.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.batch.*;
 Object options;
 NodePropertiesProperty nodePropertiesProperty = NodePropertiesProperty.builder()
         .mainNode(123)
         .nodeRangeProperties(List.of(NodeRangePropertyProperty.builder()
                 .targetNodes("targetNodes")
                 // the properties below are optional
                 .container(ContainerPropertiesProperty.builder()
                         .image("image")
                         // the properties below are optional
                         .command(List.of("command"))
                         .environment(List.of(EnvironmentProperty.builder()
                                 .name("name")
                                 .value("value")
                                 .build()))
                         .ephemeralStorage(EphemeralStorageProperty.builder()
                                 .sizeInGiB(123)
                                 .build())
                         .executionRoleArn("executionRoleArn")
                         .fargatePlatformConfiguration(FargatePlatformConfigurationProperty.builder()
                                 .platformVersion("platformVersion")
                                 .build())
                         .instanceType("instanceType")
                         .jobRoleArn("jobRoleArn")
                         .linuxParameters(LinuxParametersProperty.builder()
                                 .devices(List.of(DeviceProperty.builder()
                                         .containerPath("containerPath")
                                         .hostPath("hostPath")
                                         .permissions(List.of("permissions"))
                                         .build()))
                                 .initProcessEnabled(false)
                                 .maxSwap(123)
                                 .sharedMemorySize(123)
                                 .swappiness(123)
                                 .tmpfs(List.of(TmpfsProperty.builder()
                                         .containerPath("containerPath")
                                         .size(123)
                                         // the properties below are optional
                                         .mountOptions(List.of("mountOptions"))
                                         .build()))
                                 .build())
                         .logConfiguration(LogConfigurationProperty.builder()
                                 .logDriver("logDriver")
                                 // the properties below are optional
                                 .options(options)
                                 .secretOptions(List.of(SecretProperty.builder()
                                         .name("name")
                                         .valueFrom("valueFrom")
                                         .build()))
                                 .build())
                         .memory(123)
                         .mountPoints(List.of(MountPointsProperty.builder()
                                 .containerPath("containerPath")
                                 .readOnly(false)
                                 .sourceVolume("sourceVolume")
                                 .build()))
                         .networkConfiguration(NetworkConfigurationProperty.builder()
                                 .assignPublicIp("assignPublicIp")
                                 .build())
                         .privileged(false)
                         .readonlyRootFilesystem(false)
                         .repositoryCredentials(RepositoryCredentialsProperty.builder()
                                 .credentialsParameter("credentialsParameter")
                                 .build())
                         .resourceRequirements(List.of(ResourceRequirementProperty.builder()
                                 .type("type")
                                 .value("value")
                                 .build()))
                         .runtimePlatform(RuntimePlatformProperty.builder()
                                 .cpuArchitecture("cpuArchitecture")
                                 .operatingSystemFamily("operatingSystemFamily")
                                 .build())
                         .secrets(List.of(SecretProperty.builder()
                                 .name("name")
                                 .valueFrom("valueFrom")
                                 .build()))
                         .ulimits(List.of(UlimitProperty.builder()
                                 .hardLimit(123)
                                 .name("name")
                                 .softLimit(123)
                                 .build()))
                         .user("user")
                         .vcpus(123)
                         .volumes(List.of(VolumesProperty.builder()
                                 .efsVolumeConfiguration(EfsVolumeConfigurationProperty.builder()
                                         .fileSystemId("fileSystemId")
                                         // the properties below are optional
                                         .authorizationConfig(AuthorizationConfigProperty.builder()
                                                 .accessPointId("accessPointId")
                                                 .iam("iam")
                                                 .build())
                                         .rootDirectory("rootDirectory")
                                         .transitEncryption("transitEncryption")
                                         .transitEncryptionPort(123)
                                         .build())
                                 .host(VolumesHostProperty.builder()
                                         .sourcePath("sourcePath")
                                         .build())
                                 .name("name")
                                 .build()))
                         .build())
                 .ecsProperties(EcsPropertiesProperty.builder()
                         .taskProperties(List.of(EcsTaskPropertiesProperty.builder()
                                 .containers(List.of(TaskContainerPropertiesProperty.builder()
                                         .image("image")
                                         // the properties below are optional
                                         .command(List.of("command"))
                                         .dependsOn(List.of(TaskContainerDependencyProperty.builder()
                                                 .condition("condition")
                                                 .containerName("containerName")
                                                 .build()))
                                         .environment(List.of(EnvironmentProperty.builder()
                                                 .name("name")
                                                 .value("value")
                                                 .build()))
                                         .essential(false)
                                         .linuxParameters(LinuxParametersProperty.builder()
                                                 .devices(List.of(DeviceProperty.builder()
                                                         .containerPath("containerPath")
                                                         .hostPath("hostPath")
                                                         .permissions(List.of("permissions"))
                                                         .build()))
                                                 .initProcessEnabled(false)
                                                 .maxSwap(123)
                                                 .sharedMemorySize(123)
                                                 .swappiness(123)
                                                 .tmpfs(List.of(TmpfsProperty.builder()
                                                         .containerPath("containerPath")
                                                         .size(123)
                                                         // the properties below are optional
                                                         .mountOptions(List.of("mountOptions"))
                                                         .build()))
                                                 .build())
                                         .logConfiguration(LogConfigurationProperty.builder()
                                                 .logDriver("logDriver")
                                                 // the properties below are optional
                                                 .options(options)
                                                 .secretOptions(List.of(SecretProperty.builder()
                                                         .name("name")
                                                         .valueFrom("valueFrom")
                                                         .build()))
                                                 .build())
                                         .mountPoints(List.of(MountPointsProperty.builder()
                                                 .containerPath("containerPath")
                                                 .readOnly(false)
                                                 .sourceVolume("sourceVolume")
                                                 .build()))
                                         .name("name")
                                         .privileged(false)
                                         .readonlyRootFilesystem(false)
                                         .repositoryCredentials(RepositoryCredentialsProperty.builder()
                                                 .credentialsParameter("credentialsParameter")
                                                 .build())
                                         .resourceRequirements(List.of(ResourceRequirementProperty.builder()
                                                 .type("type")
                                                 .value("value")
                                                 .build()))
                                         .secrets(List.of(SecretProperty.builder()
                                                 .name("name")
                                                 .valueFrom("valueFrom")
                                                 .build()))
                                         .ulimits(List.of(UlimitProperty.builder()
                                                 .hardLimit(123)
                                                 .name("name")
                                                 .softLimit(123)
                                                 .build()))
                                         .user("user")
                                         .build()))
                                 .ephemeralStorage(EphemeralStorageProperty.builder()
                                         .sizeInGiB(123)
                                         .build())
                                 .executionRoleArn("executionRoleArn")
                                 .ipcMode("ipcMode")
                                 .networkConfiguration(NetworkConfigurationProperty.builder()
                                         .assignPublicIp("assignPublicIp")
                                         .build())
                                 .pidMode("pidMode")
                                 .platformVersion("platformVersion")
                                 .runtimePlatform(RuntimePlatformProperty.builder()
                                         .cpuArchitecture("cpuArchitecture")
                                         .operatingSystemFamily("operatingSystemFamily")
                                         .build())
                                 .taskRoleArn("taskRoleArn")
                                 .volumes(List.of(VolumesProperty.builder()
                                         .efsVolumeConfiguration(EfsVolumeConfigurationProperty.builder()
                                                 .fileSystemId("fileSystemId")
                                                 // the properties below are optional
                                                 .authorizationConfig(AuthorizationConfigProperty.builder()
                                                         .accessPointId("accessPointId")
                                                         .iam("iam")
                                                         .build())
                                                 .rootDirectory("rootDirectory")
                                                 .transitEncryption("transitEncryption")
                                                 .transitEncryptionPort(123)
                                                 .build())
                                         .host(VolumesHostProperty.builder()
                                                 .sourcePath("sourcePath")
                                                 .build())
                                         .name("name")
                                         .build()))
                                 .build()))
                         .build())
                 .instanceTypes(List.of("instanceTypes"))
                 .build()))
         .numNodes(123)
         .build();
 

See Also: