Introduction
Users can define their own job templates for use with workflows.
- Job templates can be applied to re-use existing jobs in a number of workflows.
- Job templates can be used to update any workflows that include jobs that have been derived from a given job template.
User Defined Job Templates are available for Shell Jobs and for JITL Jobs.
- Access to Job Templates is subject to folder permissions.
FEATURE AVAILABILITY STARTING FROM RELEASE 2.4.1
Managing Job Templates
Adding Job Templates
Job Templates are available from the Configuration->Inventory view. They are offered from object folders with the same name that are available in any user folder:
When clicking the New Job Template button a popup window is displayed that asks for the name of the Job Template:
An empty Job Template is added to the list of objects in the current folder:
When clicking the name of the Job Template then the following window is displayed to add properties to the Job Template:
Explanation:
- The above example is used to create a Shell Job. Any properties available for Shell Jobs can be added, see JS7 - Job Instruction.
- The Update Jobs button allows to update any jobs referencing the Job Template from the released version of the template.
- This window offers the same sub-views for Script, Argument, Environment Variables and Notification as for any job.
- Job Templates are not deployed to a Controller or Agent. Instead, they are released to allow use with workflows.
Updating Job Templates
Job Templates can be selected from the tree panel in the Configuration->Inventory view.
When modifying properties of a Job Template users have the option to propagate changes to jobs that have been derived from the given Job Template. This operation is available
- from the Job Template that offers the Update Jobs button.
- The operation is used to update any workflows that include jobs derived from the current Job Template and to select specific workflows for update.
- from any user folder including the top level folder that offer the action menu in the tree panel to Update Jobs from Templates.
- The operation updates any jobs included with any workflows located in folders recursively from any referenced Job Templates.
- from the Workflow's action menu in the tree panel that offers to Update Jobs from Templates.
- The operation updates any jobs in the workflow from any referenced Job Templates.
- from the Job that offers an action menu in the Workflow Editor.
- The operation
When clicking the Update Jobs button the list of jobs is displayed that make use of the current Job Template.
- The list
- displays a blue bullet for deployed workflows and an orange bullet for draft workflows that include affected jobs.
- displays the status
- synchronized for workflows that hold jobs that are in sync with the Job Template, i.e. use the same properties and values.
- not synchronized for workflows that include jobs that are not in sync with the Job Template.
- Users can select individual workflows or all workflows to be updated.
- The update step includes to add or to modify a workflow's job properties from the Job Template.
- Consider that updating workflows from a Job Template will create a draft of the given workflow and requires later deployment of the workflow.
When updating jobs in workflows from a changed Job Template then
- the following properties will not be updated:
- Job Properties
- Job Name
- Label
- Agent
- Job Options
- Skip Job if no admission for Order's date
- Job Properties
- the following properties will be updated:
- Job Properties
- Job Template: Reference to the Job Template that includes the name and hash of the Job Template in use
- Title
- Documentation: Reference to the JS7 - User Documentation
- Job Resources: References to JS7 - Job Resources
- Return Codes: On Success, On Failure
- Return Codes: On Warning
- Job Class: Shell job or JITL job
- Script/Class Name: Content of a Shell job script of Java class of a JVM job.
- Job Options
- Parallelism
- Timeout
- Grace Timeout
- Warn on shorter execution period
- Warn on longer execution period
- Criticality
- Fail on output to stderr / Warn on output to stderr
- Admission Times: users can choose to overwrite existing properties when updating the job.
- Notification
- Mail related properties for job notifications: users can choose to overwrite existing properties when updating the job.
- Parameterization
- Arguments:
- For Shell Jobs arguments are added to the job's Node Arguments
- For JITL Jobs arguments are added to the job's Arguments
- Environment Variables
- The update of Arguments and Environment Variables is performed in a way that
- in case they are added to the Job Template then they will be added to the job,
- in case they are removed from the Job Template then they will be removed from the job,
- in case of changes to arguments in the Job Template the changes will not be applied when updating jobs.
- Arguments:
- Job Properties
Removing Job Templates
Job Templates can be removed using the Remove action menu item that is available from the tree panel
- for individual Job Templates,
- for Job Templates at any folder level.
Searching Job Templates
TODO