(Click to open topic with navigation)
See the associated Job Templates resource section for more information on how to use this resource and supported operations.
Additional references
Type | Value | Additional information |
---|---|---|
Permissions resource | job-templates | Permissions |
Hooks filename | job-templates.groovy | Pre- and Post-Processing Hooks |
Distinct query-supported | No | Distinct |
This class represents a job template in the Moab Workload Manager. Job templates are used for two primary purposes: (1) to provide a means of generically matching and categorizing jobs, and (2) to provide a means of setting arbitrary default or forced attributes for certain jobs.
Field Name | Type | Description |
---|---|---|
id | String |
The unique identifier for this job template. |
account | String |
The account under which this job will run for billing purposes. |
args | String |
Command-line arguments that get passed to commandFile. |
commandFile | String |
The path to the file that is executed when the job runs. This is the script that will actually call all the work of the job. Can be null. |
description | String |
The description of the job. |
durationRequested | Long |
The amount of time (in seconds) requested for the job. |
genericSystemJob | Boolean |
True if this template will instantiate a generic system job. |
inheritResources | Boolean |
True if jobs instantiated from this template inherit resources. |
jobDependencies | Set<JobTemplateDependency> |
The list of dependencies for this job template. |
jobFlags | Set<JobFlag> |
Job flags for this template. |
jobTemplateFlags | Set<JobTemplateFlag> |
Job template flags for this template. |
jobTemplateRequirements | Set<JobTemplateRequirement> |
The requirements for this job template. |
priority | Long |
Relative job priority. |
qos | String |
The Quality of Service for the job. |
queue | String |
The class or queue in which the job will run. |
select | Boolean |
True if job template can be directly requested by job at submission. |
trigger | Trigger |
The trigger that is typically assigned to generic system jobs. |
vmUsagePolicy | VMUsagePolicy |
The virtual machine usage policy. |
Field Name | Type | Description |
---|---|---|
name | String |
The name of the template on which this template depends. |
type | JobDependencyTypeVersion1 |
The type of the dependency. |
This enumeration specifies the flag types of a job.
Value | Description |
---|---|
NONE | |
BACKFILL | The job is using backfill to run. |
COALLOC | The job can use resources from multiple resource managers and partitions. |
ADVRES | The job requires the use of a reservation. |
NOQUEUE | The job will attempt to execute immediately or fail. |
ARRAYJOB | The job is part of a job array. |
ARRAYJOBPARLOCK | This array job will only run in one partition. |
ARRAYJOBPARSPAN | This array job will span partitions (default). |
ARRAYMASTER | This job is the master of a job array. |
BESTEFFORT | The job will succeed if even partial resources are available. |
RESTARTABLE | The job is restartable. |
SUSPENDABLE | The job is suspendable. |
HASPREEMPTED | This job preempted other jobs to start. |
PREEMPTEE | The job is a preemptee and therefore can be preempted by other jobs. |
PREEMPTOR | The job is a preemptor and therefore can preempt other jobs. |
RSVMAP | The job is based on a reservation. |
SPVIOLATION | The job was started with a soft policy violation. |
IGNNODEPOLICIES | The job will ignore node policies. |
IGNPOLICIES | The job will ignore idle, active, class, partition, and system policies. |
IGNNODESTATE | The job will ignore node state in order to run. |
IGNIDLEJOBRSV | The job can ignore idle job reservations. The job granted access to all idle job reservations. |
INTERACTIVE | The job needs to interactive input from the user to run. |
FSVIOLATION | The job was started with a fairshare violation. |
GLOBALQUEUE | The job is directly submitted without doing any authentication. |
NORESOURCES | The job is a system job that does not need any resources. |
NORMSTART | The job will not query a resource manager to run. |
CLUSTERLOCKED | The job is locked into the current cluster and cannot be migrated elsewhere. This is for grid mode. |
FRAGMENT | The job can be run across multiple nodes in individual chunks. |
FORCEPROVISION | Job will provision nodes, whether they already have OS or not. |
SYSTEMJOB | The job is a system job which simply runs on the same node that Moab is running on. This is usually used for running scripts and other executables in workflows. |
ADMINSETIGNPOLICIES | The IGNPOLICIES flag was set by an administrator. |
EXTENDSTARTWALLTIME | The job duration (walltime) was extended at job start. |
SHAREDMEM | The job will share its memory across nodes. |
BLOCKEDBYGRES | The job's generic resource requirement caused the job to start later. |
GRESONLY | The job is requesting only generic resources, no compute resources. |
TEMPLATESAPPLIED | The job has had all applicable templates applied to it. |
META | META job, just a container around resources. |
WIDERSVSEARCHALGO | This job prefers the wide search algorithm. |
VMTRACKING | The job is a VMTracking job for an externally-created VM (via job template). |
DESTROYTEMPLATESUBMITTED | A destroy job has already been created from the template for this job. |
PROCSPECIFIED | The job requested processors on the command line. |
CANCELONFIRSTFAILURE | Cancel job array on first array job failure. |
CANCELONFIRSTSUCCESS | Cancel job array on first array job success. |
CANCELONANYFAILURE | Cancel job array on any array job failure. |
CANCELONANYSUCCESS | Cancel job array on any array job success. |
CANCELONEXITCODE | Cancel job array on a specific exit code. |
NOVMMIGRATE | Do not migrate the virtual machine that this job sets up. |
VCMASTER | Job is the master of a virtual container. |
USEMOABJOBID | Specifies whether to use the Moab job ID or the resource manager's job ID. |
JOINSTDERRTOSTDOUT | Join the stderr file to the stdout file. |
JOINSTDOUTTOSTDERR | Join the stdout file to the stderr file. |
PURGEONSUCCESSONLY | Only purge the job if it completed successfully |
ALLPROCS | Each job compute task requests all the procs on its node |
COMMLOCAL | Each job communications are localized, with minimal routing outside job shape |
COMMTOLERANT | Each job communications are low-intensity and insensitive to interference |
This enumeration specifies the flag types of a job template.
Value | Description |
---|---|
GLOBALRSVACCESS | |
HIDDEN | |
HWJOB | |
PRIVATE | |
SYNCJOBID | |
TEMPLATEISDYNAMIC | True if the template is dynamic (not specified via moab.cfg). |
SELECT | True if a job can select this template. |
Field Name | Type | Description |
---|---|---|
architecture | String |
The architecture requirement. |
diskRequirement | Integer |
The amount of disk space required (in MB). |
genericResources | Map<String, Integer> |
Consumable generic attributes associated with individual nodes or the special pseudo-node global, which provides shared cluster (floating) consumable resources. |
nodeAccessPolicy | NodeAccessPolicy |
The node access policy. Specifies how node resources will be shared by a job. |
operatingSystem | String |
The operating system requirement. |
requiredDiskPerTask | Integer |
Disk space (in MB). |
requiredFeatures | Set<String> |
The features required by this template. |
requiredMemoryPerTask | Integer |
Memory (in MB). |
requiredProcessorsPerTask | Integer |
Number of processors. |
requiredSwapPerTask | Integer |
Swap space (in MB). |
taskCount | Integer |
The number of tasks required. |
This enumeration describes how node resources will be shared by various tasks.
Field Name | Type | Description |
---|---|---|
id | String |
Trigger id - internal ID used by moab to track triggers |
action | String |
For exec atype triggers, signifies executable and arguments. For jobpreempt atype triggers, signifies PREEMPTPOLICY to apply to jobs that are running on allocated resources. For changeparam atype triggers, specifies the parameter to change and its new value (using the same syntax and behavior as the changeparam command). |
actionType | TriggerActionType | |
blockTime | Date |
Time (in seconds) Moab will suspend normal operation to wait for trigger execution to finish. Use caution as Moab will completely stop normal operation until BlockTime expires. |
description | String | |
eventType | TriggerEventType | |
expireTime | Date |
Time at which trigger should be terminated if it has not already been activated. |
failOffset | Date |
Specifies the time (in seconds) that the threshold condition must exist before the trigger fires. |
flags | Set<TriggerFlag> | |
interval | Boolean |
When used in conjunction with MultiFire and RearmTime trigger will fire at regular intervals. Can be used with TriggerEventType.EPOCH to create a Standing Trigger. |
maxRetry | Integer |
Specifies the number of times Action will be attempted before the trigger is designated a failure. |
multiFire | Boolean |
Specifies whether this trigger can fire multiple times. Defaults to false. |
name | String |
Trigger name - can be auto assigned by moab or requested. Alphanumeric up to 16 characters in length |
objectId | String |
The ID of the object which this is attached to. |
objectType | String |
The type of object which this is attached to. Possible values:
|
offset | Date |
Relative time offset from event when trigger can fire. |
period | TriggerPeriod |
Can be used in conjunction with Offset to have a trigger fire at the beginning of the specified period. Can be used with EType epoch to create a standing trigger. |
rearmTime | Date |
Time between MultiFire triggers. Rearm time is enforced from the trigger event time. |
requires | String |
Variables this trigger requires to be set or not set before it will fire. Preceding the string with an exclamation mark (!) indicates this variable must NOT be set. Used in conjunction with Sets to create trigger dependencies. |
sets | String |
Variable values this trigger sets upon success or failure. Preceding the string with an exclamation mark (!) indicates this variable is set upon trigger failure. Preceding the string with a caret (^) indicates this variable is to be exported to the parent object when the current object is destroyed through a completion event. Used in conjunction with Requires to create trigger dependencies. |
threshold | String |
Reservation usage threshold - When reservation usage drops below Threshold, trigger will fire. |
timeout | Date |
Time allotted to this trigger before it is marked as unsuccessful and its process (if any) killed. |
type | TriggerType |
The type of the trigger. |
unsets | String |
Variable this trigger destroys upon success or failure. |
This enumeration specifies the action type of a trigger.
This enumeration specifies the event type of a trigger.
Value | Description |
---|---|
CANCEL | |
CHECKPOINT | |
CREATE | |
END | |
EPOCH | |
FAIL | |
HOLD | |
MIGRATE | |
MODIFY | |
PREEMPT | |
STANDING | |
START | |
THRESHOLD | |
DISCOVER | |
LOGROLL |
This enumeration specifies a flag belonging to a trigger.
This enumeration specifies the period of a trigger.
Value | Description |
---|---|
MINUTE | |
HOUR | |
DAY | |
WEEK | |
MONTH |
This enumeration specifies the type of the trigger.
Value | Description |
---|---|
generic | Generic trigger type. |
elastic | Elastic computing trigger type. |
This enumeration describes the virtual machine requirements of a job
This class represents a job template in the Moab Workload Manager. Job templates are used for two primary purposes: (1) to provide a means of generically matching and categorizing jobs, and (2) to provide a means of setting arbitrary default or forced attributes for certain jobs.
Field Name | Type | Description |
---|---|---|
id | String |
The unique identifier for this job template. |
account | String |
The account under which this job will run for billing purposes. |
args | String |
Command-line arguments that get passed to commandFile. |
commandFile | String |
The path to the file that is executed when the job runs. This is the script that will actually call all the work of the job. Can be null. |
description | String |
The description of the job. |
durationRequested | Long |
The amount of time (in seconds) requested for the job. |
genericSystemJob | Boolean |
True if this template will instantiate a generic system job. |
inheritResources | Boolean |
True if jobs instantiated from this template inherit resources. |
jobDependencies | Set<JobTemplateDependency> |
The list of dependencies for this job template. |
jobFlags | Set<JobFlag> |
Job flags for this template. |
jobTemplateFlags | Set<JobTemplateFlag> |
Job template flags for this template. |
jobTemplateRequirements | Set<JobTemplateRequirement> |
The requirements for this job template. |
priority | Long |
Relative job priority. |
qos | String |
The Quality of Service for the job. |
queue | String |
The class or queue in which the job will run. |
select | Boolean |
True if job template can be directly requested by job at submission. |
trigger | Trigger |
The trigger that is typically assigned to generic system jobs. |
vmUsagePolicy | VMUsagePolicy |
The virtual machine usage policy. |
Field Name | Type | Description |
---|---|---|
name | String |
The name of the template on which this template depends. |
type | JobDependencyTypeVersion1 |
The type of the dependency. |
This enumeration specifies the flag types of a job.
Value | Description |
---|---|
NONE | |
BACKFILL | The job is using backfill to run. |
COALLOC | The job can use resources from multiple resource managers and partitions. |
ADVRES | The job requires the use of a reservation. |
NOQUEUE | The job will attempt to execute immediately or fail. |
ARRAYJOB | The job is part of a job array. |
ARRAYJOBPARLOCK | This array job will only run in one partition. |
ARRAYJOBPARSPAN | This array job will span partitions (default). |
ARRAYMASTER | This job is the master of a job array. |
BESTEFFORT | The job will succeed if even partial resources are available. |
RESTARTABLE | The job is restartable. |
SUSPENDABLE | The job is suspendable. |
HASPREEMPTED | This job preempted other jobs to start. |
PREEMPTEE | The job is a preemptee and therefore can be preempted by other jobs. |
PREEMPTOR | The job is a preemptor and therefore can preempt other jobs. |
RSVMAP | The job is based on a reservation. |
SPVIOLATION | The job was started with a soft policy violation. |
IGNNODEPOLICIES | The job will ignore node policies. |
IGNPOLICIES | The job will ignore idle, active, class, partition, and system policies. |
IGNNODESTATE | The job will ignore node state in order to run. |
IGNIDLEJOBRSV | The job can ignore idle job reservations. The job granted access to all idle job reservations. |
INTERACTIVE | The job needs to interactive input from the user to run. |
FSVIOLATION | The job was started with a fairshare violation. |
GLOBALQUEUE | The job is directly submitted without doing any authentication. |
NORESOURCES | The job is a system job that does not need any resources. |
NORMSTART | The job will not query a resource manager to run. |
CLUSTERLOCKED | The job is locked into the current cluster and cannot be migrated elsewhere. This is for grid mode. |
FRAGMENT | The job can be run across multiple nodes in individual chunks. |
FORCEPROVISION | Job will provision nodes, whether they already have OS or not. |
SYSTEMJOB | The job is a system job which simply runs on the same node that Moab is running on. This is usually used for running scripts and other executables in workflows. |
ADMINSETIGNPOLICIES | The IGNPOLICIES flag was set by an administrator. |
EXTENDSTARTWALLTIME | The job duration (walltime) was extended at job start. |
SHAREDMEM | The job will share its memory across nodes. |
BLOCKEDBYGRES | The job's generic resource requirement caused the job to start later. |
GRESONLY | The job is requesting only generic resources, no compute resources. |
TEMPLATESAPPLIED | The job has had all applicable templates applied to it. |
META | META job, just a container around resources. |
WIDERSVSEARCHALGO | This job prefers the wide search algorithm. |
VMTRACKING | The job is a VMTracking job for an externally-created VM (via job template). |
DESTROYTEMPLATESUBMITTED | A destroy job has already been created from the template for this job. |
PROCSPECIFIED | The job requested processors on the command line. |
CANCELONFIRSTFAILURE | Cancel job array on first array job failure. |
CANCELONFIRSTSUCCESS | Cancel job array on first array job success. |
CANCELONANYFAILURE | Cancel job array on any array job failure. |
CANCELONANYSUCCESS | Cancel job array on any array job success. |
CANCELONEXITCODE | Cancel job array on a specific exit code. |
NOVMMIGRATE | Do not migrate the virtual machine that this job sets up. |
VCMASTER | Job is the master of a virtual container. |
USEMOABJOBID | Specifies whether to use the Moab job ID or the resource manager's job ID. |
JOINSTDERRTOSTDOUT | Join the stderr file to the stdout file. |
JOINSTDOUTTOSTDERR | Join the stdout file to the stderr file. |
PURGEONSUCCESSONLY | Only purge the job if it completed successfully |
ALLPROCS | Each job compute task requests all the procs on its node |
COMMLOCAL | Each job communications are localized, with minimal routing outside job shape |
COMMTOLERANT | Each job communications are low-intensity and insensitive to interference |
This enumeration specifies the flag types of a job template.
Value | Description |
---|---|
GLOBALRSVACCESS | |
HIDDEN | |
HWJOB | |
PRIVATE | |
SYNCJOBID | |
TEMPLATEISDYNAMIC | True if the template is dynamic (not specified via moab.cfg). |
SELECT | True if a job can select this template. |
Field Name | Type | Description |
---|---|---|
architecture | String |
The architecture requirement. |
diskRequirement | Integer |
The amount of disk space required (in MB). |
genericResources | Map<String, Integer> |
Consumable generic attributes associated with individual nodes or the special pseudo-node global, which provides shared cluster (floating) consumable resources. |
nodeAccessPolicy | NodeAccessPolicy |
The node access policy. Specifies how node resources will be shared by a job. |
operatingSystem | String |
The operating system requirement. |
requiredDiskPerTask | Integer |
Disk space (in MB). |
requiredFeatures | Set<String> |
The features required by this template. |
requiredMemoryPerTask | Integer |
Memory (in MB). |
requiredProcessorsPerTask | Integer |
Number of processors. |
requiredSwapPerTask | Integer |
Swap space (in MB). |
taskCount | Integer |
The number of tasks required. |
This enumeration describes how node resources will be shared by various tasks.
Field Name | Type | Description |
---|---|---|
id | String |
Trigger id - internal ID used by moab to track triggers |
action | String |
For exec atype triggers, signifies executable and arguments. For jobpreempt atype triggers, signifies PREEMPTPOLICY to apply to jobs that are running on allocated resources. For changeparam atype triggers, specifies the parameter to change and its new value (using the same syntax and behavior as the changeparam command). |
actionType | TriggerActionType | |
blockTime | Date |
Time (in seconds) Moab will suspend normal operation to wait for trigger execution to finish. Use caution as Moab will completely stop normal operation until BlockTime expires. |
description | String | |
eventType | TriggerEventType | |
expireTime | Date |
Time at which trigger should be terminated if it has not already been activated. |
failOffset | Date |
Specifies the time (in seconds) that the threshold condition must exist before the trigger fires. |
flags | Set<TriggerFlag> | |
interval | Boolean |
When used in conjunction with MultiFire and RearmTime trigger will fire at regular intervals. Can be used with TriggerEventType.EPOCH to create a Standing Trigger. |
maxRetry | Integer |
Specifies the number of times Action will be attempted before the trigger is designated a failure. |
multiFire | Boolean |
Specifies whether this trigger can fire multiple times. Defaults to false. |
name | String |
Trigger name - can be auto assigned by moab or requested. Alphanumeric up to 16 characters in length |
objectId | String |
The ID of the object which this is attached to. |
objectType | String |
The type of object which this is attached to. Possible values:
|
offset | Date |
Relative time offset from event when trigger can fire. |
period | TriggerPeriod |
Can be used in conjunction with Offset to have a trigger fire at the beginning of the specified period. Can be used with EType epoch to create a standing trigger. |
rearmTime | Date |
Time between MultiFire triggers. Rearm time is enforced from the trigger event time. |
requires | String |
Variables this trigger requires to be set or not set before it will fire. Preceding the string with an exclamation mark (!) indicates this variable must NOT be set. Used in conjunction with Sets to create trigger dependencies. |
sets | String |
Variable values this trigger sets upon success or failure. Preceding the string with an exclamation mark (!) indicates this variable is set upon trigger failure. Preceding the string with a caret (^) indicates this variable is to be exported to the parent object when the current object is destroyed through a completion event. Used in conjunction with Requires to create trigger dependencies. |
threshold | String |
Reservation usage threshold - When reservation usage drops below Threshold, trigger will fire. |
timeout | Date |
Time allotted to this trigger before it is marked as unsuccessful and its process (if any) killed. |
type | TriggerType |
The type of the trigger. |
unsets | String |
Variable this trigger destroys upon success or failure. |
This enumeration specifies the action type of a trigger.
This enumeration specifies the event type of a trigger.
Value | Description |
---|---|
CANCEL | |
CHECKPOINT | |
CREATE | |
END | |
EPOCH | |
FAIL | |
HOLD | |
MIGRATE | |
MODIFY | |
PREEMPT | |
STANDING | |
START | |
THRESHOLD | |
DISCOVER | |
LOGROLL |
This enumeration specifies a flag belonging to a trigger.
This enumeration specifies the period of a trigger.
Value | Description |
---|---|
MINUTE | |
HOUR | |
DAY | |
WEEK | |
MONTH |
This enumeration specifies the type of the trigger.
Value | Description |
---|---|
generic | Generic trigger type. |
elastic | Elastic computing trigger type. |
This enumeration describes the virtual machine requirements of a job
Related Topics