Creating a Universal Template
Overview
This page tells you how to create a Universal Template, Universal Template Fields, Universal Template Field Choices, and Universal Template Event Templates.
You must create Universal Templates in order to create Integrations. For each Universal Template that you create, Universal Controller creates a Universal Task type for which you can create one or more Universal Tasks.
Each Universal Field that you create for a Universal Template becomes a field in every Universal Task based on the corresponding Universal Task type.
If the Universal Template Field that you create is a Choice (drop-down list) field, you must create the choices.
If the Universal Template Template Type is Extension, you can create Event Templates for the Universal Template .
For detailed information on Universal Templates and Fields, see Universal Templates Overview.
Creating a Universal Template
Step 1 | From the Administration navigation pane, select Configuration > Universal Templates. The Universal Templates list displays. Note The System Template column. which does not display by default, identifies any Built-In Universal Templates that have been loaded from the List/Load Built-In Universal Templates server operation. |
|---|---|
Step 2 | Enter / select Details for a new Universal Template, using the field descriptions below as a guide.
To display more of the Details fields on the screen, you can either:
|
Step 3 | Click a Save button. The template is added to the database, and all buttons and tabs in the Universal Template Details are enabled. |
Note
To open an existing record on the list, either:
Click a record in the list to display its record Details below the list. (To clear record Details below the list, click the New button that displays above and below the Details.)
Clicking the Details icon next to a record name in the list, or right-click a record in the list and then click Open in the Action menu that displays, to display a pop-up version of the record Details.
Right-click a record in the a list, or open a record and right-click in the record Details, and then click Open In Tab in the Action menu that displays, to display the record Details under a new tab on the record list page (see Record Details as Tabs).
Universal Template Details
The following Universal Template Details is for a new Universal Template, which does not yet contain any user-defined Fields. (See Creating Universal Template Fields for an existing Universal Template Details containing user-defined fields.)
Depending on the values that you enter / select for these fields, more (or less) other fields may display. See the field descriptions, below, for a description of all fields that may display in the Universal Template Details.
For information on how to access additional details - such as Metadata and complete database Details - for Universal Templates (or any type of record), see Records.
Universal Template Details Field Descriptions
The following table describes the fields, buttons, and tabs that display in the Universal Template Details.
Field Name | Description |
|---|---|
General | This section contains general information about the template. |
Name | Name of this Universal Template. |
Extension | If Template Type is Extension; Python Extension name. |
Description | Description of this record. Maximum length is 255 characters. |
Variable Prefix | Variable prefix to append to the default prefix (ops_) for the system-assigned variables that are provided for the user-defined Fields in this Universal Template. The format of a system-assigned variable is: |
Icon | Icon used for all Universal Tasks based on this Universal Template. The icon displays in the following locations: A default icon displays in the Icon field for every Universal Template (see Universal Template Details, above). Note The button that lets you search for an icon file, and the text message alongside it, is browser-dependent. In this example, which shows a Browse... button and No file selected. text, the browser was Firefox. |
Log Level | If Template Type is Extension; Log Level for Universal Extension logging. Specify Inherited to inherit the Agent Log Level setting |
Universal Template Details | This section contains assorted detailed information about the template. |
Template Type | Type of Universal Template. Options:
|
Send Extension Variables | If Template Type is Extension; Specification for whether the Extension should be provided with task instance variable data when launched. Options:
|
Agent Type | Type of Agent on which Universal Tasks based on this template can be run.
|
Always Cancel On Force Finish | Specification for whether or not to always perform a Cancel when Force Finishing a Universal Task for this template. |
Use Common Script | If Template Type is Script and Agent Type is Any; Indication that the specified Script can be executed by both Linux/Unix and Windows Agents. |
Script | If Use Common Script is enabled; Script to be executed by the specified Agent. |
Linux/Unix Script | If Template Type is Script and Agent Type is Linux/Unix or Any (and Use Common Script is not enabled); Script to be executed by the Linux/Unix Agent. |
Windows Script | If Template Type is Script and Agent Type is Windows or Any (and Use Common Script is not enabled); Script to be executed by the Windows Agent. |
Windows Script File Type | If Template Type is Script and Agent Type is Windows or Any; Type of Windows script to be executed by the Windows Agent.
|
Agent Defaults | This section contains Agent default fields that will display for every Universal Task based on this template. |
Cluster | Indication that selecting an Agent Cluster is required and selecting Broadcast, which lets you select a Cluster Broadcast, is optional. If Cluster is selected, selecting an Agent is not required unless Agent Variable is selected. |
Broadcast | Displays only if Cluster is selected; Indication that selecting a Cluster Broadcast is required. Selecting Broadcast hides the Agent and Agent Cluster fields; you cannot select values for them. |
Agent | Name of the Agent resource that identifies the machine where the operation will run. |
Agent Cluster |
|
Agent Variable | Indication of whether the Agent field is a reference field for selecting a specific Agent (unchecked) or a text field for specifying the Agent as a variable (checked). Use the format: ${variable name}. The variable must be a supported type as described in Variables and Functions. Note When updating multiple Tasks, to change from using an Agent reference to using an Agent variable, you must change the Agent Variable field to Yes and specify the Agent variable in the Agent Unresolved field. Conversely, to change from using an Agent variable to using an Agent reference, you must change the Agent Variable field to No and specify the Agent reference in the Agent field. |
Agent Cluster Variable | Indication of whether the Agent Cluster field is a reference field for selecting a specific Agent Cluster (unchecked) or a text field for specifying the Agent Cluster as a variable (checked). Use the format: The variable must be a supported type as described in Variables and Functions. Note When updating multiple Tasks, to change from using an Agent Cluster reference to using an Agent Cluster variable, you must change the Agent Cluster Variable field to Yes and specify the Agent Cluster variable in the Agent Cluster Unresolved field. Conversely, to change from using an Agent Cluster variable to using an Agent Cluster reference, you must change the Agent Cluster Variable field to No and specify the Agent Cluster reference in the Agent Cluster field. |
Credentials |
If the user does not have a login shell, add a - character in front of the runtime credentials name. The Controller will provide a shell for that user and strip the - character from the name. |
Credentials Variable | Indication of whether the Credentials field is a reference field for selecting a specific Credential (unchecked) or a text field for specifying the Credential as a variable (checked). Use the format: The variable must be a supported type as described in Variables and Functions. Note When updating multiple Tasks, to change from using a Credentials reference to using a Credentials variable, you must change the Credentials Variable field to Yes and specify the Credentials variable in the Credentials Unresolved field. Conversely, to change from using a Credentials variable to using a Credentials reference, you must change the Credentials Variable field to No and specify the Credentials reference in the Credentials field. |
Cluster Broadcast | |
Cluster Broadcast Variable | |
Run with Highest Privileges | If Agent Type is Windows or Any; Execute the task using an elevated privileges token, rather than one subject to User Account Control (UAC) restrictions. An elevated token allows a process to execute with all the privileges available to its specified credentials. For example, a task executed with an administrative account will behave as though it received permission via a UAC dialog to perform a privileged operation. Note This option only will affect tasks executed on Windows systems that support User Account Control (UAC). It will have no affect on tasks run on Windows releases prior to Vista (for example, Windows XP, Server 2003). |
Template Defaults | This section contains template-specific default fields that will display for every Universal Task based on this template. |
Runtime Directory | |
Environment Variables | |
Result Processing Defaults | This section contains assorted detailed information about result processing defaults for this task. |
Exit Code Processing | |
Output Type | |
Content Type | If Output Type is Extension; Output type that the Result Processing mechanism should assume when evaluating the output. If the expected output is XML or JSON, it is valid to specify Text. However, when specifying XML or JSON, the output must be XML or JSON respectively; otherwise, the parsing will fail and the path expression evaluation will return no matches. |
Path Expression | XPath Expression if Content Type is XML, or the JsonPath Expression if Content Type is JSON, to be used when evaluating the Extension output. |
Operator | If Output Type is Extension; Condition Operator to evaluate in combination with the specified condition Value. |
Value | If Output Type is Extension; Condition Value to evaluate in combination with the specified condition Operator. |
Strategy | If Content Type is XML or JSON; Strategy to take when applying the condition Operator and Value against the Path Expression matches when Content Type is XML or JSON. |
Auto Cleanup | Enables the auto cleanup of Extension output upon task instance completion or, if the task instance is within a workflow, when the top level workflow instance completes. |
Scan Output For | |
Output File (for Exit Code Processing) | |
Exit Codes | |
Automatic Output Retrieval | |
Wait For Output | |
Failure Only | |
Start Line | |
Number of Lines | |
Scan Text | |
Output File (for Automatic Output Retrieval) | |
Field Restrictions | This section lets you specify how fields in the Defaults section of the Universal Template are displayed in Universal Tasks based on the template.
|
Agent Fields | Restriction for the following Agent fields: Agent, Agent Variable, Agent Cluster, Agent Cluster Variable, and Cluster Broadcast. |
Credential Fields | Restriction for the following Credential fields: Credentials, Credentials Variable, Run with Highest Privileges, and Runtime Directory. |
Environment Variables Fields | Restriction for the following Environment Variable field: Environment Variables. |
Exit Code Processing Fields | Restriction for the following Exit Code Processing fields: Exit Code Processing, Exit Codes, Output Type, Scan Output for, and Output File. |
Automatic Output Retrieval Fields | Restriction for the following Automatic Output Retrieval Fields: Automatic Output Retrieval, Wait For Output, Failure Only, Start Line, Number of Lines, Scan Text, and Automatic Output File. |
Metadata | This section contains Metadata information about this record. |
UUID | Universally Unique Identifier of this record. |
Updated By | Name of the user that last updated this record. |
Updated | Date and time that this record was last updated. |
Created By | Name of the user that created this record. |
Created | Date and time that this record was created. |
Extension Checksum | SHA-256 checksum for the Python Extension Archive. |
Extension Version | Version of the Extension. |
Extension API Level | API level that the Extension is compatible with. |
Extension Requires Python | Python version(s) that the Python Extension Archive is guaranteed to be compatible with. |
Extension Python Extra Paths | List of paths to add to the search path for Python modules. |
Extension Owner | Author of the Extension. |
Extension Organization | Organization of the Author. |
Extension Comments | (Any comments about the Extension.) |
Buttons | This section identifies the buttons displayed above and below the Universal Template Details that let you perform various actions. |
Save | Saves a new Universal Template record in the Controller database. |
Save & New | Saves a new Universal Template record in the Controller database and redisplays empty Details so that you can create another Universal Template. |
Save & View | Saves a new Universal Template record in the Controller database and continues to display that record. |
New | Displays empty (except for default values) Details for creating a new record. |
Update | Updates the Universal Template record in the Controller database. |
Delete | Delete the currently open Universal Template. |
Refresh | Refreshes any dynamic data displayed in the Universal Template Details. |
Close | For pop-up view only; closes the pop-up view of this Universal Template. |
Tabs | This section identifies the tabs across the top of the Universal Template Details that provide access to additional information about the template. |