vRealize Automation 8.5 Extensibility Migration Guide Samples
These are the vRealize Orchestrator sample workflows that are used to illustrate the vRealize Automation Extensibility Migration Guide (Version 8.4 here).
These samples leverage the vRealize Automation plug-in REST client and since this version the invententory and scripting objects.
This content was developped by different VMware contributors from engineering, PSO, PVE.
The goal is to provide code samples for educational purposes. Use at your own risk. VMware should not be held liable in case the use of this code result in data loss.
- vRealize Automation >= 8.4.0 with vRealize Automation plug-in for vRealize Orchestrator 8.4.2 OR vRealize Automation 8.5.0 that has the same plug-in installed OOTB (The plug-in targets vRA 8.4 APIs - 8.4.2 required to support some of the workflows via vRA Service Broker)
- Account with credentials for vRA & vRO
- Download and import the package
- Run the setup workflow "Set vRA Host" from Orchestrator designer
- Provide a username and a password for a user assigned with roles in Orchestrator, Assembly, Service Broker. Some workflows like the onboarding one expect admin roles and org owner
The workflow should fail in case you do not provide proper host name or credentials.
To test the functionality you can run the "Invoke VRA 8 REST Operation from swagger and display result" workflow. It should auto populate the vRA host and credentials and by submitting the default values the workflow should complete successful and display the project objects in the logs tab.
- "Set vRA Host" : Setup workflow to create vRA REST host & default credentials
- REST Operations
- "Invoke VRA 8 REST Operation from swagger" : Allows to run REST operations on vRA host with listing the URL / operations for each vRA service
- "Invoke VRA 8 REST Operation from URL" : Free form of the previous workflow
- Event Broker
- "Event Broker Template" : Event Broker demonstrator workflow including:
- Display the content of the payload
- Display the content of metadatas
- Call back vRA to get the properties of the objects provided as IDs in the payload (endpoint, organization, project, zone, ,event topic, events, deployment, resources, blueprint, catalog Items, resource actions, network parameters, host placement...)
- Provide example on converting payload IDs to vRO object to bind Operation workflow on the object (Convert to VC:VirtualMachine and output it)
- Display the parameters that supports being changed via workflow outputs
- Update custom properties
- Update tags
- Update VM names
- Update Host Selection
- Update Zone placement
- Place holders to update network parameters
- "Create an event broker subscription" : To reuse in other workflows to create subscriptions programattically. Used by next workflow
- "Create sample "Event Broker Template" subscriptions" : Create a subscription for each event type starting the event broker workflow
- Tag & Custom properties
- "Edit project tags"
- "Edit project custom properties"
- "Edit machine custom properties"
- "Get Network by tags"
- Deployment day 2 operations
- "Change deployment lease"
- "Change Machine boot disk size"
- "Change Machine CPU & Memory"
- "Edit deployment tags"
- "vSphere Machine operation template"
- Extract payload and get objects from ID
- Tag deployment resource asynchronously to avoid conflicting (limitation in vRA <= 8.4) with this day 2 workflow (tag will be set on the vRA machine)
- Set vRA machine custom property
- Get matching VC:VirtualMachine
- Organization onboarding
- "Create Cloud Account"
- "Create Zone"
- "Create Project"
- "Onboarding project"
- "Onboarding Organization including all the previous workflows"
- "Request Catalog Item (Service Broker Only)" : Request programmatically a acatalog item. This version is designed to be run from Service Broker and is incompatible with vRO ATM
- "Approve deployment" Approves or rejects a request pending for approval
- Types Conversions
- "Get vRA Machine from vCenter VM" : Get vRA machine using query service to avoid getting all vRA machines and iterating through them.
- Dynamic Types
- Website sample : Example of a simple Dynamic Types scenario
In this version:
- New workflows under "Inventory objects" folder leveraging inventory objects and plug-in workflows
- "Edit project custom properties"
- "Event Broker Template"
- "Organization Onboarding"
- "Project Onboarding"
- "Get networks ids by tags"
- Updated Workflows
- "Edit project custom properties" : Handle case of removal of custom properties
- "Edit machine cusotm properties" : Handle case of removal of custom properties
Aug, 6, 2021:
- Re created the getTagByKey action for the custom forms use case with taking advantage of the VraEntitiesFinder.getTags(vRAHost, filter) method