vCO Custom Workflow Icons

While at VMworld Europe 2014 I noticed in some of the slides in a vCO session that the presenter was using some icons for workflows that did not appear to be standard. I was quite curious how to do this, but couldn’t find much information about it until I stumbled on the below training video.

If you don’t want to watch the video, here’s how to do it.

1) Get your images into vCO


  • GIF
  • JPEG
  • PNG

Not supported:

  • BMP
  • TIFF

Navigate to the Resources tab and you will probably want to create a folder to store them in.



Then Import Resources





Fill up the folder with the rest of the icons that you need.


2) Update the Workflows with the Custom Icon

Navigate to the workflow you wish to set a Custom Icon for and edit it. On the General tab select the button for the Workflow icon.


The dialogue box will let you select from within Resources with a handy search box to find what you need:


The workflow is updated with the custom icon.


OK, you can’t really see much of a benefit here. The difference appears when you embed your custom icon workflows into a parent workflow, which can now look something like this:




Pretty cool I think; I could have so much fun with this :-)

VMworld Europe 2014 – Day 4

Last day for me and first of all that meant leaving my accommodation. In my pre-VMworld post I mentioned that this time I was trialling staying in an apartment via AirBnB rather than a more traditional hotel. It turned out to be an excellent choice. I saved money, was in an excellent location and had a far more friendly experience than some of my previous stays in hotels around a busy conference, which can also be pretty soulless places sometimes when you’re travelling unaccompanied. I’ll definitely be using their services again in the future.

I managed to fit in one final session around vCAC automation, but generally just hung around the blogger’s area chatting with community friends.

Before taking off home in a real plane, I watched my colleague Ather take part in the charity paper plane All Star challenge given he had been pretty successful earlier in the week. A lot of money was raised by attendees – great idea!




VMworld Europe 2014 – Day 3

Day 3 saw the second General Session for conference attendees. I watched it from the comfort of the Bloggers Area given it was mostly a repeat of the recent VMworld US conference. If you missed either, you can catch up on it here.



First session for me today I went along  to the vCAC Discussion Group. Led by the vCAC Product Manager it was great to hear other people’s stories on how they have used the product in the real world. I’m definitely going to attend more of these types of sessions in the future.

Later on I attended an NSX Reference Design session. Not something I doubt I will ever be doing myself, but I want to learn at least enough to be able to understand what people are talking about. The presenter was great, really engaged the audience, got some excellent information across and left most people I talked to afterwards with plenty to get their heads around.

For some light relief later on in the afternoon I headed to the vExpert Storage Game show. John Troyer and Amy Lewis hosted a storage quiz between teams from Pure Storage and VMware. A fun session and educational too.

(None of my photos came out that great with some of the lighting. This is the least worst and looks like John Troyer is about to be beamed off the planet)


So I borrowed one from John Troyer’s twitter feed.


Final session of the day was vCO and Dynamic Types. A guy from F5 joined the vCO PM to run through an example of this. Having used them on a recent project, it was useful to get some more in-depth info and examples.

Wednesday evening was the VMworld party with the headline act Simple Minds, which seemed to go down pretty well and much better received than some of the bands in previous years.IMG_0153


I saw Mike Laverick down the front waving his records, I hope he managed to get them signed :-)



VMworld Europe 2014 – Day 2

Day 2 saw the first General Session for conference attendees. I watched it from the comfort of the Bloggers Area given it was mostly a repeat of the recent VMworld US conference. If you missed either, you can catch up on it here.


One of the announcements I did catch was the HP and HDS are now shipping Evo Rail in addition to the previously announced vendors. So a pretty wide range of vendors to get them from now.


During the day I attended some sessions. Those of note that I got the most from were a session on the NSX Distributed Firewall, which had some great info and a lot of participation from the audience with string technical questions. Given the restrictions around getting hold of NSX there is not a lot of external content out there about it, so it was good to find out more.

The other session I found of most use was vCenter Orchestrator (now vRealize Orchestrator) – What’s Next? It was interesting to hear from the Product Manager the roadmap for the product, especially given it’s new found popularity.



Spent some time in the Solutions Exchange, checking out a few vendors and hanging around with some of my illustrious Xtravirt colleagues.


I entered the Red Hat Competition to try and win a Lego Death Star, but unfortunately didn’t win. I did get a hat though.


To finish the day off I headed over to the vExpert and VCDX event at the same venue as the previous. Always a great event to catch up with other people from this community we are involved in.


VMworld Europe 2014 – Day 1

The Monday of VMworld Europe is all about the labs for me. Given it is Partner Day and typically quieter around the conference than the rest of the week, I spend as much time in the labs as possible. Even though they are available online I never seem to get round to taking them outside of the conference.

I didn’t need to queue longer than 10 mins for any of the three labs I took which was pretty good. I expect the queues will be a lot longer from Tuesday.



The labs I sat through were first of all VMware NSX Introduction. NSX is one of my key aims this week for finding out more information. I have spent some time on my current project automating vCNS related things so was keen to see how they mapped to NSX. I enjoyed this lab as it gave me good info on the things I already knew about in vCNS and covered the basics of the more network routing related topics.

The standard time you have to complete a lab is 1hr 30 mins. I used the optional feature to extend this by an additional 30 mins and managed to get through it all in good time, without needing to come back to it. Since I was taking it on a day when there wasn’t much else going on, I was quite happy to use 2 hours of my time on this.


The second lab for me was the below. Again, a key learning point for the week is NSX and vCAC integration so I picked up some good info here. I used pretty much the full 2 hours for this lab too.


Thirdly, I took the Infoblox Partner lab. Have done some work with Infoblox in vCO with the generic REST plugin, so was keen to see what the official plugin could offer.


By far and away the most popular lab today was the NSX Introduction lab. This picture was taken early in the day, but the ration was pretty similar later on. By the time 1000 labs in total had been hit around 200 of them had been the NSX lab with Virtual SAN and Virtual Volumes in 2nd and 3rd places respectively.


For this evening’s event, the place to be appeared to be the PernixData party held at a stylish venue in a square in the middle of Barcelona. Plenty of good chat was held with community chums and catching up with those not seen for some time.



VMworld Europe 2014 – Day 0

First day for me at VMworld Europe 2014 in Barcelona and arrived in pretty decent time so headed over to the conference centre to get registered. It was pretty quiet and I doubt it will be like this the rest of the week.


Even the transit bus was empty and I had a chauffeur drive ride across .


Even still, managed to bump into a few guys from the community and it was good to put some faces to Twitter names already.

Don’t forget to pick up your complimentary 10 trip pass for the Metro from the information desk.


In the evening I headed over to the vRockstar event at the Hard Rock Cafe. It was a great evening and loads of people from the community and some of my Xtravirt colleagues to catch up with.



A big thanks to those who organised it for putting it together, I’m sure it’s a lot more work to put it together than most people realise.



vCO: Object referenced by this attribute using a configuration element is not found

When validating a vCO workflow I received the following error message:

Object referenced by this attribute using a configuration element is not found


I’ve had similar issues before and the fix was to replace the Configuration Element being selected for the attribute. Unfortunately that was not the case this time. Instead I resolved it by removing the attribute, recreating it, then replacing it in the various places in the workflow it had been in use.

Tip: If you run a validate on the workflow after recreating the attribute, you’ll quickly find the places it is missing from ;-)

Now the workflow is happy again



New Dynamic Type not available as a Custom Resource in vCAC 6.0.1

Dynamic Types in vCAC enable you to extend the vCAC Inventory to include types created in vCO. For example you might be working with an F5 system and wish to make a tangible object back in vCAC that a user can view the properties of and have Actions assigned to.

Having created some Dynaimc Types in vCO for a project I was working on they were not appearing as available to add in vCAC Custom Resources – only the defaults were seen to be available.



I found this community post which suggested it’s a known issue and fixed in a later release than 6.0.1. There were a number of suggestions in the post for what needed to be done to make the Dynamic Types available.

  • Restart the vCAC appliance
  • Restart the vCO appliance
  • Reset default tenant password
  • Re-sync the time
  • Restart vCAC IaaS service
  • A combination of the above

I didn’t want to restart any of the appliances really, particularly as this release of vCAC is pretty flaky in my experience and restarting anything can be problematic.

I managed to track it down to restarting the vcac-server service in the vCAC appliance. Consequently, I only needed to restart that particular service and wait the obligatory 5 – 10 mins for the services to fully register again.

service vcac-server restart

After that, the new Dynamic Types were available as a Custom Resource.



Start-Transcript Now Available in the PowerShell ISE in PowerShell v5

*Warning. This article was written using the September 2014 PowerShell v5 Preview*


Prior to PowerShell v5 it was not possible to use Start-Transcript in the PowerShell ISE, it could only be used in the standard PowerShell console. You would receive the error:

Start-Transcript : This host does not support transcription.


(There were alternatives to get round it , and here)

Now in PowerShell v5 it can be used natively:

Start-Transcript -Path C:\Test\Transcript.txt



Run your commands (in this example just one, Get-Service). Then Stop-Transcript


Now view the transcript  file

notepad C:\Test\Transcript.txt



Getting Zippy with PowerShell v5

*Warning. This article was written using the September 2014 PowerShell v5 Preview*



(OK, I was really looking for an excuse to use the below picture in a blog post)



One of the most popular and long standing requests for PowerShell is native support for working with Zip files. With PowerShell v5 we get two new cmdlets Compress-Archive  and and Expand-Archive. Here’s a couple of examples of how they work.


1) Create a Zip file

C:\Test contains a number of text files. We want to zip them up into one convenient file.



Compress-Archive -Path C:\Test\* -DestinationPath C:\Zip\ -CompressionLevel Optimal

and now we have the zip file:

Note: as of this release there are three Compression Levels, the default of which is Optimal.




2) Update a Zip file

Now we add an extra file to C:\Test and want to update the zip file with this new file



Compress-Archive -Path C:\Test\* -DestinationPath C:\Zip\ -Update

Here’s the new file, now contained in the zip file:



3) Expand a Zip file

Now we want to expand a zip file. Let’s use the one we just created and expand it to a different folder C:\Expand.

Expand-Archive -Path C:\Zip\ -DestinationPath C:\Expand

Here are the files:


All pretty straightforward, but it’s great to have this simple functionality finally native :-)