(Click to open topic with navigation)
See the associated Service Templates resource section for more information on how to use this resource and supported operations.
Additional references
Type | Value | Additional information |
---|---|---|
Permissions resource | service-templates | Permissions |
Hooks filename | service-templates.groovy | Pre- and Post-Processing Hooks |
Tenant-supported | Yes | Tenants |
Distinct query-supported | Yes | Distinct |
A Service Template is a service pattern that may be modified to create custom services. Each template may be a service or a service container. Containers contain other templates. An example is a virtual machine template that may contain an operating system template.
Field Name | Type | POST | PUT | Description |
---|---|---|---|---|
id | String | No | No |
The unique identifier of this Service Template. |
attributes | Map<String, Map> | No | No |
The characteristics of this Service Template: processors, memory, etc. Any key is valid and may be used for arbitrary storage or data, but the
moab.dependencies object contains the following fields:
moab.job object contains the following fields:
moab.job.image and moab.job.template are required for templates with a type of "vm" or "pm".
(See also:
Image.name, JobRequirement.nodeSet.)
|
createdBy | String | No | No |
The name of the user that created this Service Template. |
hookDefinitions | List<Map> | Yes | Yes |
A list of local hook definitions for this service template. (See also: ServiceLocalHook.) |
includedServices | List<Map> | No | No |
A list of objects describing the services templates included in this service template. When a service is created from this service template, the created service will contain services created from all included service templates. Only service templates of type container can include other service templates. Each entry in the includedServices list is an object containing two properties:
|
label | String | No | No |
(Required) A short description of this Service Template. |
modified | Date | No | No |
The most recent date this Service Template was changed. |
name | String | No | No |
The name of this Service Template. A UUID is automatically generated when the name is not specified. |
tags | List<String> | No | No |
Arbitrary strings used to group service templates. |
tenant | Map<String, Map> | Yes | No |
Owning tenant for this service template. This is mandatory during POST. |
type | String | No | No |
The type of service template. Valid values are "vm", "pm", "storage", and "container". (See also: ServiceType.) |
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. |
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. |
PURGEONSUCCESSONLY | Only purge the job if it completed successfully |
ALLPROCS | Each job compute task requests all the procs on its node |
Field Name | Type | POST | PUT | Description |
---|---|---|---|---|
comparator | String | Yes | No |
The comparison operator. Valid values:
|
displayValue | String | Yes | No |
The display value for the required attribute. |
restriction | JobRequirementAttributeRestriction | Yes | No |
The restriction of this attribute. May be null, but defaults to JobRequirementAttributeRestriction.must. |
value | String | Yes | No |
The value of the required attribute. During POST, if value is missing, blank, or null, do not provide a comparator. |
JobRequirementAttributeRestriction
Represents a restriction for a job requirement attribute.
Value | Description |
---|---|
must |
A Service Template is a service pattern that may be modified to create custom services. Each template may be a service or a service container. Containers contain other templates. An example is a virtual machine template that may contain an operating system template.
Field Name | Type | POST | PUT | Description |
---|---|---|---|---|
id | String | No | No |
The unique identifier of this Service Template. |
attributes | Map<String, Map> | No | No |
The characteristics of this Service Template: processors, memory, etc. Any key is valid and may be used for arbitrary storage or data, but the
moab.dependencies object contains the following fields:
moab.job object contains the following fields:
moab.job.image and moab.job.template are required for templates with a type of "vm" or "pm".
(See also:
Image.name, JobRequirement.nodeSet.)
|
createdBy | String | No | No |
The name of the user that created this Service Template. |
hookDefinitions | List<Map> | Yes | Yes |
A list of local hook definitions for this service template. (See also: ServiceLocalHook.) |
includedServices | List<Map> | No | No |
A list of objects describing the services templates included in this service template. When a service is created from this service template, the created service will contain services created from all included service templates. Only service templates of type container can include other service templates. Each entry in the includedServices list is an object containing two properties:
|
label | String | No | No |
(Required) A short description of this Service Template. |
modified | Date | No | No |
The most recent date this Service Template was changed. |
name | String | No | No |
The name of this Service Template. A UUID is automatically generated when the name is not specified. |
tags | List<String> | No | No |
Arbitrary strings used to group service templates. |
tenant | Map<String, Map> | Yes | No |
Owning tenant for this service template. This is mandatory during POST. |
type | String | No | No |
The type of service template. Valid values are "vm", "pm", "storage", and "container". (See also: ServiceType.) |
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. |
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. |
PURGEONSUCCESSONLY | Only purge the job if it completed successfully |
ALLPROCS | Each job compute task requests all the procs on its node |
Field Name | Type | POST | PUT | Description |
---|---|---|---|---|
comparator | String | Yes | No |
The comparison operator. Valid values:
|
displayValue | String | Yes | No |
The display value for the required attribute. |
restriction | JobRequirementAttributeRestriction | Yes | No |
The restriction of this attribute. May be null, but defaults to JobRequirementAttributeRestriction.must. |
value | String | Yes | No |
The value of the required attribute. During POST, if value is missing, blank, or null, do not provide a comparator. |
JobRequirementAttributeRestriction
Represents a restriction for a job requirement attribute.
Value | Description |
---|---|
must |
Related Topics