7.2
Table Of Contents
- Life Cycle Extensibility
- Contents
- Life Cycle Extensibility
- Machine Extensibility Overview
- Extending Machine Lifecycles By Using vRealize Orchestrator
- Configuring Workflow Subscriptions to Extend vRealize Automation
- Event Topics Provided With vRealize Automation
- Workflow Subscriptions and Event Broker Terminology
- Blockable and Replyable Event Topics
- Best Practices for Creating vRealize Orchestrator Workflows for Workflow Subscriptions
- Workflow Subscription Settings
- Working with Provisioning and Life Cycle Workflow Subscriptions
- Configuring vRealize Orchestrator Workflows for Provisioning and Life Cycle Workflows
- Workflow Subscription Life Cycle State Definitions
- Configuring the Timeout Values for States and Events
- Configuring the Error Behavior for States and Events
- Scenario: Take a Post-Provisioning Snapshot of a Virtual Machine
- Working with Approval Workflow Subscriptions
- Troubleshooting Workflow Subscriptions
- Troubleshooting vRealize Orchestrator Workflows That Do Not Start
- Troubleshooting Provisioning Requests That Take Too Much Time
- Troubleshooting a vRealize Orchestrator Workflow That Does Not Run for an Approval Request
- Troubleshooting a Rejected Approval Request That Should Be Approved
- Troubleshooting a Rejected Approval Request
- Extending Machine Life Cycles By Using vRealize Automation Designer
- Extending Machine Life Cycles By Using vRealize Automation Designer Checklist
- Installing and Configuring vRealize Automation Designer
- Customizing IaaS Workflows By Using vRealize Automation Designer
- Workflows and Distributed Execution Management
- CloudUtil Command Reference
- vRealize Automation Workflow Activity Reference
When you use virtualMachineEvent and workflowNextState as output parameters, the values that
you provide must represent a state or event from the workflow that triggered the event and started the
current vRealize Orchestrator workflow. To review the possible life cycle states and events, see VMPS
Master Workflow Life Cycle States and Provisioning Life Cycle States by Machine Type.
Working with Extensibility Custom Properties
The virtual machine custom properties are not included in the event payload unless they are specified as
an extensibility custom property for the life cycle state. You can add these properties to IaaS endpoints,
reservations, blueprints, requests, and other objects that support custom properties.
The format of the custom property that you add to an object is
Extensibility.Lifecycle.Properties.{workflowName}.{stateName}.
For example, if you want to include hidden properties and all properties starting with "Virtual" when the
virtual machine state is BuildingMachine, you add the custom properties to the machine in the blueprint.
The custom property name for this example is
Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.BuildingMachine, and the values
are __* and Virtual*, separated by a comma.
The double underscore (__*) includes the hidden properties. The Virtual* value includes all properties
that begin with virtual. The asterisk (*) is a wildcard and can be used as the only value, but using the
wildcard this way results in the transfer of large amounts of data.
If you have multiple, subsequently triggered workflow subscriptions that include custom properties, you
must include the appropriate entries in the workflows to ensure that the payload check retains the custom
properties.
Table 4‑8. Task Entries to Preserve Custom Properties
State Task Entries
Added or updated custom properties
virtualMachineAddOrUpdateProperties =
payload.virtualMachineAddOrUpdateProperties ||
new Properties();
Deleted custom properties
virtualMachineDeleteProperties =
payload.virtualMachineDeleteProperties || new
Properties();
Creating a vRealize Orchestrator Workflow Based on the Life Cycle or
Provisioning Schema
The custom workflow that you create must have an input parameter that is payload with the type
Properties. The provisioning or life cycle event data payload is put in this parameter when the workflow
runs in vRealize Orchestrator. You can also include separate input parameters that match the name and
the type of the fields in the event's payload.
Life Cycle Extensibility
VMware, Inc. 29