I implemented a VMWare VM's backup and recovery application with vSphere API and VDDK. The development was done fully against a ESX 5.0 servers. The following discussion gives a view of how I have implemented restore.
http://communities.vmware.com/message/2130483#2130483
When another person tested my application, he reported restore functionality is not working. When I debugged I found the device spec parameter passed to CreateVM_Task is behaving differently for Esx 5.0 and Esx 4.0. In the case of Esx 5.0 it works perfectly, where as in the case of Esx 4.0, none of the devices that I populate before the CreateVM_Task is getting created and the restore fails due to this.
How can I understand the compatiblity of the vSphereAPI and the Esx versions? I assumed the SDK's should be backward compatible with the Esx Servers? Can some one throw some light how this problem can be resolved?
Thanks,
./Siva.