'Destroy the specified instance, if it can be found.
:param context: The security context.
:param instance: The instance object.
:param network_info: Instance network information.
:param block_device_info: Instance block device
information. Ignored by this driver.
:param destroy_disks: Indicates if disks should be
destroyed. Ignored by this driver.'

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

    LOG.debug('Destroy    called    for    instance', instance=instance)
    try:
        node = self._validate_instance_and_node(instance)
    except exception.InstanceNotFound:
        LOG.warning('Destroy    called    on    non-existing    instance    %s.', instance.uuid)
        return
    if (node.provision_state in _UNPROVISION_STATES):
        self._unprovision(instance, node)
    else:
        self._remove_instance_info_from_node(node, instance)
    self._cleanup_deploy(node, instance, network_info)
    LOG.info('Successfully    unprovisioned    Ironic    node    %s', node.uuid, instance=instance)
