When deploying a Virtual Machine from a template you have the option of Using the Customization Specifications for Automating Deployment.
I am sure this has been mentioned more than once but I could not find an easy reference on a blog only on the VMTN Forums
Well the problem was like this below, when trying to deploy a VM the option was greyed out
The user had the correct Privileges on the folder, cluster and on the storage, but could choose the customization specification.
The reason is that the user needs the correct Privilege on the top-level of Hosts and Cluster.
The Read Customization Specifications Privilege has to assigned
and does not have to be propagated.