# File lib/deltacloud/drivers/vsphere/vsphere_client.rb, line 29
    def find_vm(credentials, name)
      vsphere = new_client(credentials)
      safely do
        rootFolder = vsphere.serviceInstance.content.rootFolder
        vm = {}
        rootFolder.childEntity.grep(RbVmomi::VIM::Datacenter).each do |dc|
          dc.datastoreFolder.childEntity.collect do |datastore|
            vm[:instance] = datastore.vm.find { |x| x.name == name }
            if vm[:instance]
              vm[:datastore] = datastore.name
              break
            end
            stored_tasks(datastore, vsphere) do |task|
              if task.info.entity.class == RbVmomi::VIM::VirtualMachine and ['queued', 'running'].member? task.info.state
                vm = { :stored_instance => load_serialized_instance(datastore,task.info.key), :datastore => datastore.name }
              end
            end
          end
          break if [:datastore]
        end
        vm
      end
    end