How vRO 8.1 delivered thousands of integrations overnight

vRealize Orchestrator 8.1 was recently released and it comes with quite a lot of new features and improvements. In this post I will cover the support for multi-language (polyglot) development.


Polyglot is the ability to execute vRO scripts in multiple languages and runtimes, specifically Node.js, Python and PowerShell / PowerCLI. Now we can finally write JavaScript using modern constructs such as let/const, arrow functions, Promises, async/await, etc. Or the ones that prefer Python or PowerShell can finally put JS aside. Really nice stuff, but we can do a lot more…

Read More

May the Orchestration be with you

Recently together with a friend of mine we were discussing the most hot topic these days – the new Star Wars movie. He showed me this uber cool site that plays Episode IV in ASCII. He also showed me that there is a more geeky version of it using telnet So it got me thinking, I have never used the Telnet client part of vRO’s Net plugin + I am a Star Wars fan, what a great opportunity! Streaming Star Wars Episode IV in vRO’s logs:

vRO star wars

Read More

Integrating ASD forms with Google Translate using External Value Definitions

Recently vRA 6.2 was released and together with that ASD got a new feature that allows you to bind the constraints and permissible values of fields in ASD forms to External Value Definitions, that are backed up by vRO scripting actions. This means that you can enhance the request form or resource details form by making fields more dynamic that calculate their state and values from scripting actions. By having all the various vRO’s plugins and especially the REST plugin, you can connect to any* 3rd party system and retrieve values from it.

To give you an example I will use this very nice post, by Cesare Rossi, that came just in time for me to write mine. You can see the post here His example is sweet, uses the “Send notification” workflow to create a catalog item to send emails and the IFTTT service to send text messages. I will not change anything on the functional level, but rather enhance the presentation of his request form, without touching the workflow nor it’s presentation.

Now, you may have noticed that his post is entirely in Italian. I love the Italian language, but since I know very little, I will build a catalog item that allows entering message contents in English and by using a vRO scripting action that uses Google Translate, the form will instantly translate my message in Italian. We will do it following the steps:

1. Create a scripting action in vRO that talks with the Google Translate service.

Read More

Create Resource Actions for any vCAC resource with ASD

One of the coolest new features in the Advanced Service Designer in vCAC 6.1 is the “Resource mappings”. Resource mappings is the way to tell ASD how to map a resource from vCAC’s catalog, that was provisioned by a provider other than ASD, to an inventory item in vCO, so that you can execute custom ASD resource actions over this resource. Basically this we already had this in 6.0 but only for IaaS types Virtual Machine, vCD vApp and vCD VM, but it was only for these types without the ability to map other resource types. Now if you open the resource mappings view, you will se those 3 built-in there and you will be able to add others for any resource type and this is what we will do.

Resource mappings list

Read More

Passing requester details to vCO presentation from ASD blueprint / resource action

So you probably know that when you request a catalog item in vCAC that is based on an ASD blueprint, some global parameters about the requestor will be provided to the workflow at execution time. This is great, but in many cases one would like to create such a workflow presentation that would allow adding constraints or filtering predefined values based on the requester, before the actual request is made (before the workflow starts the execution). Well, guess what, you can do that now with the new release of vCAC 6.1 .

How would you be able to do that? The good thing is that it is re-using well known methods in both vCO and ASD, so there’s nothing new to learn, and no hidden parameters.

Read More