'Delete a build request after creating the instance in the cell.
This method handles cleaning up the instance in case the build request
is already deleted by the time we try to delete it.
:param context: the context of the request being handled
:type context: nova.context.RequestContext
:param build_request: the build request to delete
:type build_request: nova.objects.BuildRequest
:param instance: the instance created from the build_request
:type instance: nova.objects.Instance
:param cell: the cell in which the instance was created
:type cell: nova.objects.CellMapping
:param instance_bdms: list of block device mappings for the instance
:type instance_bdms: nova.objects.BlockDeviceMappingList
:param instance_tags: list of tags for the instance
:type instance_tags: nova.objects.TagList
:returns: True if the build request was successfully deleted, False if
the build request was already deleted and the instance is now gone.'

def _delete_build_request(self, context, build_request, instance, cell, instance_bdms, instance_tags):

    try:
        build_request.destroy()
    except exception.BuildRequestNotFound:
        with obj_target_cell(instance, cell) as cctxt:
            with compute_utils.notify_about_instance_delete(self.notifier, cctxt, instance):
                try:
                    instance.destroy()
                except exception.InstanceNotFound:
                    pass
                except exception.ObjectActionError:
                    try:
                        instance.refresh()
                        instance.destroy()
                    except exception.InstanceNotFound:
                        pass
        for bdm in instance_bdms:
            with obj_target_cell(bdm, cell):
                try:
                    bdm.destroy()
                except exception.ObjectActionError:
                    pass
        if instance_tags:
            with try_target_cell(context, cell) as target_ctxt:
                try:
                    objects.TagList.destroy(target_ctxt, instance.uuid)
                except exception.InstanceNotFound:
                    pass
        return False
    return True
