Workflow Steps Reference

This topic provides details on Commander's built-in workflow steps. Administrators can always access built-in steps in any Commander installation.

Commander also supports plug-in workflow steps that you may download and install as required. Plug-in steps are not covered here. For details on plug-in steps, see the readme files included with the plug-in step JAR files added to your system at <Commander_install_directory>\tomcat\wfplugins\. See Use Plug-In Workflow Steps.

Overview

The steps that can be added to a workflow depend on the type of workflow. For example, in the Approval Workflow, Completion Workflow, and Command Workflow wizards, the executable steps, or actions, that can be added a workflow depend on:

  • The type of workflow (for example, whether it's a workflow for a virtual service versus a VM, or a workflow for a new request versus a change request).
  • The cloud account type (for example, SCVMM or AWS).

Adding actions to a workflow is optional. For some scenarios it may make sense to create a workflow without actions. For example:

  • You can set up an approval and pre-provisioning workflow whose only purpose is to deploy VMs and virtual services automatically.
  • You can set up a completion workflow that overrides a default completion workflow. For example, let's say you have set up a default VM completion workflow to run every time a new VM is provisioned, but you don't want that workflow to run on one or more specific VMs. In this case, you can configure a VM completion workflow that contains no steps — its only purpose is to override the default VM completion workflow.

Built-in Commander workflow steps

Workflow steps that send an email

In any workflow step that sends an email, enter the recipient email address(es) in the Address List field, keeping multiple addresses separated with semi-colons. The email addresses don't have to be associated with Admin Portal or Service Portal accounts. They can include group accounts.

When an email requesting approval for a service request is sent to a group of users, all users in that group receive the email.

If the Commander embotics.workflow.approval.link.auth.enabled system property is set to true, recipients will be required to authenticate with a valid user account that has the sufficient roles and permissions to gain access to the approval landing page. For more information on user roles and permissions, see Require user authentication to access approval email links; for information on setting the system property, see Advanced Configuration With System Properties.

As soon as one person approves a request, other users will no longer be able to approve that request. However, if multiple levels of approval are configured (for example, if the approval workflow contains multiple Send Approval Email steps), the approval email is sent to the next user group on the approvers list. If the request is rejected, no other emails are sent.

Using variables to populate email addresses

Using variables to populate email addresses allows you to configure dynamic recipient lists. For example, to send the email to the primary contacts of the organization, enter the following variable in the Address List field:

#{request.requester.organization.email}

You can pass other variables into the email address field, email subject and email body.

Formatting in the email body

The <a> tag is automatically added to links in emails (only the http protocol is supported). For example, if the value of a custom attribute is a link, the value will be formatted as a link in the email.

If you don't use HTML markup in the email body, the body is assumed to be plain text; <br> and <p> tags are automatically added for new lines.

If you add HTML markup to the email body, however, no additional tags are added.