In any Ivanti Automation environment, there will be Tasks that are used many times over, with just minor changes to their configuration. For example, you may have configured a Task Create Local User. Each time you use this Task to create a new local user, the only thing that differs from the last time is the user name. Of course, you could manually adjust the values in the Task each time you use it, but it is much more efficient to parameterize these values.
Parameters act as placeholders for values in various fields, such as text, file paths, credentials, etc. The actual values of these fields can be provided when they are needed (when scheduling the Job or when importing the Building Block) or default values can be pre-populated and changed when needed.
Why use parameters?
- to build more generic Modules (and customize (parts of) a Task when it is actually needed).
- to create more generic Building Blocks (and transport Modules, Projects and Run Bookss from one Ivanti Automation environment to another).
- to restrict the type of input provided at the moment of use.
- to provide default values, with the option to overrule these defaults at the moment of use.
- to re-use information in various Modules of a Project or Run Book (input is requested only once).
- to use as base for a condition or evaluator.
For example, if you want to create a new local user Amanda Cavendish, you could create a Task that looks like this:
The next day, if you need to create the local user John Smith, you could of course edit the original Module, save it, and schedule it in a Job. And do the same again the next time you need to create a local user, and so on. However, it is more efficient to use parameters in the Task:
Now, when you need to create a new local user, you simply schedule the Module in a Job. Ivanti Automation will then prompt you to provide the logon name, full name and password of the local user that should be created: it is no longer necessary to edit the Module first.
Generic Modules, Projects and Run Books are also very useful for system integration purposes: If you create Building Blocks to transport Modules, Projects and Run Books from one Ivanti Automation environment to another, the configuration of some Tasks may need to be changed to the new environment. This can be achieved efficiently using parameters.
For example, if you create a Building Block of a Task that creates an Active Directory user, many values need to be changed for the receiving environment. This can be set up efficiently by replacing the values in the Tasks with parameters. Then, each time the Building Block is imported in a different environment, Ivanti Automation will prompt for new parameter values:
With parameters you can:
- Allow parts of a Task to be customized when it is actually used. For example, in a Task Local User, most settings that are used to create local users can remain the same, but each time the Task is scheduled a different user name needs to be specified. This makes it possible to create generic Modules, Projects and Run Books that can be customized at the moment of use or when imported as a Building Block.
- Restrict the type of input provided at the moment of use. For example, with a List parameter, you can present a list of values from which to choose, making it impossible to enter other data in that field. As a result, you can control the kind of information that is used in a Task. See
- Provide default values for parameters, with the option to overrule these defaults at the moment of use.
- Use the same information in various Modules of a Project or Run Book. For example, a Project can contain 4 Modules that all require the same user name to be filled out. By inserting linked parameters in those user name fields, input will be requested once and will fill all fields. See
- Use a parameter as the basis for a condition, so that the value of the parameter determines whether a Modules, Projects or Run Books should be executed. For example, you can configure a condition so that a Module is skipped if the person scheduling it does not provide the correct value for a Password parameter.
You can configure parameters on three levels:
- Module parameters: to parameterize values in Tasks.
- Project parameters: to link Module parameters from various Modules in a Project. A Project parameter is an umbrella parameter for a set of Module parameters that occur in one Project. With a linked Project parameter, input is requested only once.
- Run Book parameters: to link Module parameters and/or Project parameters from various Modules and/or Projects in a Run Book. A Run Book parameter is an umbrella parameter for a set of Module or Project parameters in one Run Book. With a linked Run Book parameter, input is requested only once. In Run Books, Module parameters and Project parameters are known as Job parameters.
On Task level, on the Setting tab, in the relevant field, you can add an individual parameter (manually or automatically).
On Module level, on the Parameters tab, you have an overview of all created parameters. From here, you can add an individual parameter or automatically create a set of parameters.
On Project or Run Book level, on the Parameters tab, you have an overview of all linked and unlinked Project or Run Book parameters. From here, you can manage and link your parameters.
In the Parameters area:
- Add a new parameter manually
- Delete one or more Run Book or Project parameters
- Change the order in which Run Book or Project parameters are presented at input moment (with the Arrow buttons).
- Create Run Book or Project parameters automatically (via AutoCreate). During creation, you will also be asked if you also want to link the Run Book parameters to matching Job parameters automatically.
- Delete Run Book or Project parameters that are not linked to any Job or Module parameters in the Run Book or Project (via Cleanup).
In the Links area:
- Link Project or Run Book parameters with the following actions:
- None: each Module parameter keeps its own value.
- Set initial value : the Run Book or Project parameter will set the value for the Module parameter (as input).
- Get initial value : the Run Book or Project parameter will get the value from the Module parameter after its Module has been executed (output).
- Both : the Run Book or Project parameter will set the value for the Module parameter as input and after execution of its Module gets its value from the Module parameter
Scheduling Job with parameters
On the Job's Parameters tab an indication is shown when input is needed. If specified in the parameter input settings, a confirmation request with the provided parameter values is shown directly after the schedule.
The use of Global Variables in Run Book or Project parameters, conditions and evaluators is not supported.