vCAC 6.0.1 Plugin for vCO

Very very quietly, VMware has GA’d its vCAC 6.0.1 Plugin for vCO. Why is this plugin so important? Well, since the plugin shipped with vCAC’s vCO server in the 6.0.1 virtual appliance is a revolution / update of its 5.2 plugin brother (interfacing with vCAC’s IaaS ODATA API) this plugin includes both the IaaS plugin AND a new set of capabilities to interface with the vCAC VA APIs! This means that the ability to create service catalogs, tenants, catalog items, and much much more, is now available for everyone, with ease.

Part of the work I did in my vCAC DevOps Post, relied on the capabilities of this plugin. (which was in pre-beta , early milestone phases) So, although the vCAC 6.0.1 API is considered to be ‘Beta’ this plugin supports it. It enables us to do some very interesting stuff, such as requesting a Catalog Items, customizing item requests (more on that in very very near blog posts!) and more. The thing that’s great about having such a plugin, is that it enables the IT administrator and the developers (or the cloud customer/consumer) to radically abstract the vCAC API, and use only the functionality needed, with great simplicity.

If you want to integrate with another system calling vCAC, you can share the coding load by masking very complicated tasks like requesting multi machine blueprints, in a very simple fashion using vCO – vCAC Plugin workflows, and later on, exposing the specific functionality using vCO’s REST API.

Overview & Install

This plugin lets us work with every aspect of the vCAC VA application platform, like:

  • Approval Policies
  • Advanced Service Designer
  • Service Catalogs
  • Catalog Items
  • Item Requests
  • Actions (Day 2 operations)
  • Entitlements

In order to install the plugin, simply go to the configuration page for you vCO server, browse to the download o11nplugin-vcac-6.0.1.vmoapp file, enter administrator credentials, and choose ‘Install plugin’. You will have to restart you vCO server afterward (just the services).
If you are using vCAC’s VA vCO Server , you’ll need to enable the vco-configurator service by logging in to the vCAC-VA and entering these commands:

[code lang=”bash”]
chkconfig vco-configurator on
service vco-configurator start


To configure the plugin, run the configuration workflow found in the vCloud Automation Center folder inside vCO, with the appropriate parameters:
Config VCO Plugin

The OOTB workflows for this plugin are pretty handy, giving us the ability to do some common tasks with the objects mentioned in the points above, like copy/create/delete a service, request a catalog item, trigger resource item actions.
But what’s actually underneath the hood, is way more interesting…

An object very worth mentioning is the vCACCAFEEntitiesFinder object. This scripting object is always available to us, and has some very useful methods for us to use in scriptable tasks and custom actions.

It’s fairly easy to understand why I’ve designed this post’s logo the way I did…
In any case, one very important methods to notice is:


This important piece of API can be seen in action in one of the sample workflows shipped with this plugin called ‘List Catalog Items’
Lets analyze the scriptable code for this workflow.

[code lang=”js”]
var items;
if (criteria == ""){
} else {
items=vCACCAFEEntitiesFinder.findCatalogItems(host, criteria);

System.log("Total elements: " + items.length);

System.log("Catalog items:");

for (var i = 0; i<items.length;i++ ){
System.log("   " + (i+1) + ".    " + items[i].getName());


We can see that the entity finder finds us all of the catalog items in case we didn’t enter any search criteria, but in case we’ve searched for a specific item (by name) we will get an array of catalog items matching that name (or close to that name).
then, we have the vCAC Catalog item object, and we can act upon it. Pretty straight forward stuff!
I’ll example more of this vCO Plugin’s capabilities in later posts, so stay tuned!


Leave a Reply