Example #1
0
def load_server(context, instance_id, server_id):
    """Loads a server or raises an exception."""
    client = create_nova_client(context)
    try:
        server = client.servers.get(server_id)
    except nova_exceptions.NotFound as e:
        LOG.debug("Could not find nova server_id(%s)" % server_id)
        raise exception.ComputeInstanceNotFound(instance_id=instance_id,
                                                server_id=server_id)
    except nova_exceptions.ClientException, e:
        raise exception.ReddwarfError(str(e))
Example #2
0
 def find_server(instance_id, server_id):
     matches = [server for server in server_list if server.id == server_id]
     if len(matches) == 1:
         return matches[0]
     elif len(matches) < 1:
         # The instance was not found in the list and
         # this can happen if the instance is deleted from
         # nova but still in reddwarf database
         raise exception.ComputeInstanceNotFound(
             instance_id=instance_id, server_id=server_id)
     else:
         # Should never happen, but never say never.
         LOG.error(_("Server %s for instance %s was found twice!") %
                   (server_id, instance_id))
         raise exception.ReddwarfError(uuid=instance_id)