vSphere could really use a high level API. Something like OpenStack has:
# start VM:
nova boot --image "my-template" --flavor "small" --nic net-id=59c56a41-2f71 "my-new-VM"
# create a virtual subnet
neutron subnet-create "my-net" --name "my-subnet" --gateway 192.168.1.1 192.168.1.0/24
Why do I need 150 lines of code just to create a VM?