Using vRealize Orchestrator Workflow Activities

You can use vRealize Automation Designer activities to call vRealize Orchestrator workflows either synchronously or asynchronously.

A vRealize Orchestrator endpoint is specified in one of the following ways:

VirtualMachineId is the name of the variable representing the virtual machine ID. A virtual machine with this ID is selected and the value that is retrieved from the VMware.VCenterOrchestrator.EndpointName custom property for a virtual machine is used as the vRealize Orchestrator endpoint name.

GetVcoEndpointByManagementEndpoint returns the value of a custom property on a specified ManagementEndpoint object. If the CustomPropertyName is not specified, the value of the VMware.VCenterOrchestrator.EndpointName property is used.

GetVcoEndpointByHost returns the value of a custom property on a specified host. If the CustomPropertyName is not specified, the value of the VMware.VCenterOrchestrator.EndpointName property is used.

Synchronous Execution

The InvokeVcoWorkflow activity calls a vRealize Orchestrator workflow and blocks further execution of its parent IaaS workflow until the vRealize Orchestrator workflow completes. The activity returns the output parameters for the vRealize Orchestrator workflow.

In addition, the synchronous execution supports the following property:

WorkflowTimeout is a timeout value in seconds. If the vRealize Orchestrator workflow does not finish in the specified time, an exception is generated rather than blocking the workflow until a response is returned. If no value is defined or a value of zero is supplied, the timeout is not activated. The workflow status is checked every 10 seconds during that period unless the polling time is modified for the endpoint by specifying a value in the VMware.VCenterOrchestrator.PollingInterval custom property.

Asynchronous Execution

The InvokeVcoWorkflowAsync activity is a “fire and forget” activity that calls a vRealize Orchestrator workflow and continues to execute activities in the IaaS workflow without waiting for the vRealize Orchestrator workflow to complete.

The activity returns either a unique workflow execution token that can be used to monitor the workflow or an error if the REST API call to the vRealize Orchestrator server failed (for example, if the server could not be reached).

Two additional activities are available for use with this activity:

GetVcoWorkflowExecutionStatus enables you to poll the vRealize Orchestrator workflow for its status.

WaitForVcoWorkflowCompletion enables you to block further execution of the IaaS workflow until the vRealize Orchestrator workflow has completed or timed out. You can use this activity to retrieve the results of a vRealize Orchestrator workflow that you execute asynchronously.

When you use either the InvokeVcoWorkflow or the InvokeVcoWorkflowAsync activity in vRealize Automation Designer, input and output properties for the activity are automatically populated based on the parameters of the vRealize Orchestrator workflow that you select.