'Destroy VM instance.
This is the method exposed by xenapi_conn.destroy(). The rest of the
destroy_* methods are internal.'

def destroy(self, instance, network_info, block_device_info=None, destroy_disks=True):

    LOG.info('Destroying    VM', instance=instance)
    vm_ref = vm_utils.lookup(self._session, instance['name'])
    rescue_vm_ref = vm_utils.lookup(self._session, ('%s-rescue' % instance['name']))
    if rescue_vm_ref:
        self._destroy_rescue_instance(rescue_vm_ref, vm_ref)
    return self._destroy(instance, vm_ref, network_info=network_info, destroy_disks=destroy_disks, block_device_info=block_device_info)
