Interface CfnJobDefinition.INodeRangePropertyProperty
This is an object that represents the properties of the node range for a multi-node parallel job.
Namespace: Amazon.CDK.AWS.Batch
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public interface INodeRangePropertyProperty
Syntax (vb)
Public Interface INodeRangePropertyProperty
Remarks
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.Batch;
var options;
var nodeRangePropertyProperty = new NodeRangePropertyProperty {
TargetNodes = "targetNodes",
// the properties below are optional
Container = new ContainerPropertiesProperty {
Image = "image",
// the properties below are optional
Command = new [] { "command" },
Environment = new [] { new EnvironmentProperty {
Name = "name",
Value = "value"
} },
EphemeralStorage = new EphemeralStorageProperty {
SizeInGiB = 123
},
ExecutionRoleArn = "executionRoleArn",
FargatePlatformConfiguration = new FargatePlatformConfigurationProperty {
PlatformVersion = "platformVersion"
},
InstanceType = "instanceType",
JobRoleArn = "jobRoleArn",
LinuxParameters = new LinuxParametersProperty {
Devices = new [] { new DeviceProperty {
ContainerPath = "containerPath",
HostPath = "hostPath",
Permissions = new [] { "permissions" }
} },
InitProcessEnabled = false,
MaxSwap = 123,
SharedMemorySize = 123,
Swappiness = 123,
Tmpfs = new [] { new TmpfsProperty {
ContainerPath = "containerPath",
Size = 123,
// the properties below are optional
MountOptions = new [] { "mountOptions" }
} }
},
LogConfiguration = new LogConfigurationProperty {
LogDriver = "logDriver",
// the properties below are optional
Options = options,
SecretOptions = new [] { new SecretProperty {
Name = "name",
ValueFrom = "valueFrom"
} }
},
Memory = 123,
MountPoints = new [] { new MountPointsProperty {
ContainerPath = "containerPath",
ReadOnly = false,
SourceVolume = "sourceVolume"
} },
NetworkConfiguration = new NetworkConfigurationProperty {
AssignPublicIp = "assignPublicIp"
},
Privileged = false,
ReadonlyRootFilesystem = false,
RepositoryCredentials = new RepositoryCredentialsProperty {
CredentialsParameter = "credentialsParameter"
},
ResourceRequirements = new [] { new ResourceRequirementProperty {
Type = "type",
Value = "value"
} },
RuntimePlatform = new RuntimePlatformProperty {
CpuArchitecture = "cpuArchitecture",
OperatingSystemFamily = "operatingSystemFamily"
},
Secrets = new [] { new SecretProperty {
Name = "name",
ValueFrom = "valueFrom"
} },
Ulimits = new [] { new UlimitProperty {
HardLimit = 123,
Name = "name",
SoftLimit = 123
} },
User = "user",
Vcpus = 123,
Volumes = new [] { new VolumesProperty {
EfsVolumeConfiguration = new EfsVolumeConfigurationProperty {
FileSystemId = "fileSystemId",
// the properties below are optional
AuthorizationConfig = new AuthorizationConfigProperty {
AccessPointId = "accessPointId",
Iam = "iam"
},
RootDirectory = "rootDirectory",
TransitEncryption = "transitEncryption",
TransitEncryptionPort = 123
},
Host = new VolumesHostProperty {
SourcePath = "sourcePath"
},
Name = "name"
} }
},
EcsProperties = new EcsPropertiesProperty {
TaskProperties = new [] { new EcsTaskPropertiesProperty {
Containers = new [] { new TaskContainerPropertiesProperty {
Image = "image",
// the properties below are optional
Command = new [] { "command" },
DependsOn = new [] { new TaskContainerDependencyProperty {
Condition = "condition",
ContainerName = "containerName"
} },
Environment = new [] { new EnvironmentProperty {
Name = "name",
Value = "value"
} },
Essential = false,
LinuxParameters = new LinuxParametersProperty {
Devices = new [] { new DeviceProperty {
ContainerPath = "containerPath",
HostPath = "hostPath",
Permissions = new [] { "permissions" }
} },
InitProcessEnabled = false,
MaxSwap = 123,
SharedMemorySize = 123,
Swappiness = 123,
Tmpfs = new [] { new TmpfsProperty {
ContainerPath = "containerPath",
Size = 123,
// the properties below are optional
MountOptions = new [] { "mountOptions" }
} }
},
LogConfiguration = new LogConfigurationProperty {
LogDriver = "logDriver",
// the properties below are optional
Options = options,
SecretOptions = new [] { new SecretProperty {
Name = "name",
ValueFrom = "valueFrom"
} }
},
MountPoints = new [] { new MountPointsProperty {
ContainerPath = "containerPath",
ReadOnly = false,
SourceVolume = "sourceVolume"
} },
Name = "name",
Privileged = false,
ReadonlyRootFilesystem = false,
RepositoryCredentials = new RepositoryCredentialsProperty {
CredentialsParameter = "credentialsParameter"
},
ResourceRequirements = new [] { new ResourceRequirementProperty {
Type = "type",
Value = "value"
} },
Secrets = new [] { new SecretProperty {
Name = "name",
ValueFrom = "valueFrom"
} },
Ulimits = new [] { new UlimitProperty {
HardLimit = 123,
Name = "name",
SoftLimit = 123
} },
User = "user"
} },
EphemeralStorage = new EphemeralStorageProperty {
SizeInGiB = 123
},
ExecutionRoleArn = "executionRoleArn",
IpcMode = "ipcMode",
NetworkConfiguration = new NetworkConfigurationProperty {
AssignPublicIp = "assignPublicIp"
},
PidMode = "pidMode",
PlatformVersion = "platformVersion",
RuntimePlatform = new RuntimePlatformProperty {
CpuArchitecture = "cpuArchitecture",
OperatingSystemFamily = "operatingSystemFamily"
},
TaskRoleArn = "taskRoleArn",
Volumes = new [] { new VolumesProperty {
EfsVolumeConfiguration = new EfsVolumeConfigurationProperty {
FileSystemId = "fileSystemId",
// the properties below are optional
AuthorizationConfig = new AuthorizationConfigProperty {
AccessPointId = "accessPointId",
Iam = "iam"
},
RootDirectory = "rootDirectory",
TransitEncryption = "transitEncryption",
TransitEncryptionPort = 123
},
Host = new VolumesHostProperty {
SourcePath = "sourcePath"
},
Name = "name"
} }
} }
},
InstanceTypes = new [] { "instanceTypes" }
};
Synopsis
Properties
Container | The container details for the node range. |
EcsProperties | This is an object that represents the properties of the node range for a multi-node parallel job. |
InstanceTypes | The instance types of the underlying host infrastructure of a multi-node parallel job. |
TargetNodes | The range of nodes, using node index values. |
Properties
Container
The container details for the node range.
virtual object Container { get; }
Property Value
System.Object
Remarks
EcsProperties
This is an object that represents the properties of the node range for a multi-node parallel job.
virtual object EcsProperties { get; }
Property Value
System.Object
Remarks
InstanceTypes
The instance types of the underlying host infrastructure of a multi-node parallel job.
virtual string[] InstanceTypes { get; }
Property Value
System.String[]
Remarks
This parameter isn't applicable to jobs that are running on Fargate resources.
In addition, this list object is currently limited to one element.
TargetNodes
The range of nodes, using node index values.
string TargetNodes { get; }
Property Value
System.String
Remarks
A range of 0:3
indicates nodes with index values of 0
through 3
. If the starting range value is omitted ( :n
), then 0
is used to start the range. If the ending range value is omitted ( n:
), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( 0:n
). You can nest node ranges (for example, 0:10
and 4:5
). In this case, the 4:5
range properties override the 0:10
properties.