4.2.1
Table Of Contents
- Developing with VMware vCenter Orchestrator
- Contents
- Developing with VMware vCenter Orchestrator
- Developing Workflows
- Principal Phases in the Workflow Development Process
- Accessing the Orchestrator Client
- Testing Workflows During Development
- Workflow Editor
- Provide General Workflow Information
- Defining Attributes and Parameters
- Workflow Schema
- Obtaining Input Parameters from Users When a Workflow Starts
- Requesting User Interactions While a Workflow Runs
- Add a User Interaction to a Workflow
- Set the User Interaction security.group Attribute
- Set the timeout.date Attribute to an Absolute Date
- Calculate a Relative Timeout for User Interactions
- Set the timeout.date Attribute to a Relative Date
- Define the External Inputs for a User Interaction
- Define User Interaction Exception Behavior
- Create the Input Parameters Dialog Box for the User Interaction
- Respond to a Request for a User Interaction
- Calling Workflows Within Workflows
- Running a Workflow on a Selection of Objects
- Developing Long-Running Workflows
- Configuration Elements
- Workflow User Permissions
- Validating Workflows
- Running Workflows
- Develop a Simple Example Workflow
- Create the Simple Workflow Example
- Define the Simple Workflow Example Parameters
- Create the Simple Workflow Example Schema
- Link the Simple Workflow Example Elements
- Create Workflow Zones
- Define the Simple Workflow Example Decision Bindings
- Bind the Simple Workflow Example Action Elements
- Bind the Simple Workflow Example Scripted Task Elements
- Define the Simple Example Workflow Exception Bindings
- Set the Simple Workflow Example Attribute Read-Write Properties
- Set the Simple Workflow Example Parameter Properties
- Set the Layout of the Simple Workflow Example Input Parameters Dialog Box
- Validate and Run the Simple Workflow Example
- Develop a Complex Workflow
- Create the Complex Workflow
- Define the Complex Workflow Example Input Parameters
- Create a Custom Action For the Complex Workflow Example
- Create the Complex Workflow Example Schema
- Link the Complex Workflow Example Schema Elements
- Create the Complex Workflow Example Zones
- Define the Complex Workflow Example Bindings
- Set the Complex Workflow Example Attribute Properties
- Create the Layout of the Complex Workflow Example Input Parameters
- Validate and Run the Complex Workflow Example
- Scripting
- Orchestrator Elements that Require Scripting
- Limitations of the Mozilla Rhino Implementation in Orchestrator
- Using the Orchestrator API
- Access the Scripting Engine from the Workflow Editor
- Access the Scripting Engine from the Action or Policy Editor
- Access the Orchestrator API Explorer
- Use the Orchestrator API Explorer to Find Objects
- Writing Scripts
- Add Parameters to Scripts
- Accessing the Orchestrator Server File System from JavaScript and Workflows
- Accessing Java Classes from JavaScript
- Accessing Operating System Commands from JavaScript
- Exception Handling Guidelines
- Orchestrator JavaScript Examples
- Developing Actions
- Creating Resource Elements
- Creating Packages
- Index
Scheduled workflows only run once. You can schedule a workflow to run
recurrently by calling the Workflow.scheduleRecurrently method in a
scriptable task element in a synchronous workflow.
Nested Workflows
A workflow can start several workflows simultaneously by nesting several
workflows in a single schema element. All the workflows listed in the nested
workflow element start simultaneously when the calling workflow arrives at
the nested workflows element in its schema. Significantly, each nested
workflow starts in a different memory space from the memory space of the
calling workflow. The calling workflow waits until all the nested workflows
have completed their runs before it starts running the next element in its
schema. The calling workflow can thus use the results of the nested workflows
as input parameters when it runs its remaining elements.
Propagate Workflow Changes to other Workflows
If you call a workflow from another workflow, Orchestrator imports the input parameters of the child workflow
in the calling workflow at the moment you add the workflow element to the schema.
If you modify the called workflow after you have added it to another workflow, the calling workflow calls on
the new version of the called workflow, but does not import any new input parameters. To prevent changes
to workflows affecting the behavior of other workflows that call them, Orchestrator does not propagate the
new input parameters automatically to the calling workflows.
To propagate parameters from one workflow to other workflows that call it, you must find the workflows that
call the workflow, and synchronize the workflows manually.
Prerequisites
You need a workflow that another workflow or workflows call.
Procedure
1 Modify and save a workflow that other workflows call.
2 Close the workflow editor.
3 Navigate to the workflow you changed in the hierarchical list in the Workflows view in the Orchestrator
client.
4 Right-click the workflow, and select References > Find Elements that Use this Element.
A list of workflows that call this workflow appears.
5 Double-click a workflow in the list to highlight it in the Workflows view in the Orchestrator client.
6 Right-click the workflow, and select Edit.
The workflow editor opens.
7 Click the Schema tab in the workflow editor.
8 Right-click the workflow element for the changed workflow from the workflow schema and select
Synchronize > Synchronize Parameters.
9 Select Continue in the confirmation dialog box.
10 Save and close the workflow editor.
11 Repeat Step 5 to Step 10 for all the workflows that use the modified workflow.
You propagated a changed workflow to other workflows that call it.
Developing with VMware vCenter Orchestrator
48 VMware, Inc.