From da5e5106565f4999c1856be9c3230ba1a1505b82 Mon Sep 17 00:00:00 2001 From: Rick Harris Date: Wed, 15 Jun 2011 17:52:44 +0000 Subject: Adding UUID test --- nova/compute/api.py | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'nova/compute') diff --git a/nova/compute/api.py b/nova/compute/api.py index e2c4cf8d7..8172e8600 100644 --- a/nova/compute/api.py +++ b/nova/compute/api.py @@ -509,8 +509,25 @@ class API(base.Base): def get(self, context, instance_id): """Get a single instance with the given instance_id.""" - rv = self.db.instance_get(context, instance_id) - return dict(rv.iteritems()) + # NOTE(sirp): id used to be exclusively integer IDs; now we're + # accepting both UUIDs and integer IDs. The handling of this + # is done in db/sqlalchemy/api/instance_get + try: + int(instance_id) + uuid_like = False + except ValueError: + uuid_like = True + + if uuid_like: + uuid = instance_id + try: + instance = self.db.instance_get_by_uuid(context, uuid) + except Exception as e: + raise Exception(e) + else: + instance = self.db.instance_get(context, instance_id) + + return dict(instance.iteritems()) @scheduler_api.reroute_compute("get") def routing_get(self, context, instance_id): -- cgit From 211b0eb5385acdfcd7a7da6efda8d7f3fbda3c55 Mon Sep 17 00:00:00 2001 From: Rick Harris Date: Wed, 15 Jun 2011 19:17:11 +0000 Subject: Fixing test_create_instance --- nova/compute/api.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'nova/compute') diff --git a/nova/compute/api.py b/nova/compute/api.py index 8172e8600..30119d467 100644 --- a/nova/compute/api.py +++ b/nova/compute/api.py @@ -520,10 +520,7 @@ class API(base.Base): if uuid_like: uuid = instance_id - try: - instance = self.db.instance_get_by_uuid(context, uuid) - except Exception as e: - raise Exception(e) + instance = self.db.instance_get_by_uuid(context, uuid) else: instance = self.db.instance_get(context, instance_id) -- cgit From 161507acc320f64f0581ac3242f08b3e2c258740 Mon Sep 17 00:00:00 2001 From: Rick Harris Date: Wed, 15 Jun 2011 19:43:58 +0000 Subject: Pep8 Fixes --- nova/compute/api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'nova/compute') diff --git a/nova/compute/api.py b/nova/compute/api.py index 30119d467..c23b32127 100644 --- a/nova/compute/api.py +++ b/nova/compute/api.py @@ -510,7 +510,7 @@ class API(base.Base): def get(self, context, instance_id): """Get a single instance with the given instance_id.""" # NOTE(sirp): id used to be exclusively integer IDs; now we're - # accepting both UUIDs and integer IDs. The handling of this + # accepting both UUIDs and integer IDs. The handling of this # is done in db/sqlalchemy/api/instance_get try: int(instance_id) -- cgit From d77a1cec6247172cd1be2a4a1b996c37cc33a2f9 Mon Sep 17 00:00:00 2001 From: Rick Harris Date: Wed, 15 Jun 2011 21:12:37 +0000 Subject: Prep-work to begin on reroute_compute --- nova/compute/api.py | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'nova/compute') diff --git a/nova/compute/api.py b/nova/compute/api.py index c23b32127..716217836 100644 --- a/nova/compute/api.py +++ b/nova/compute/api.py @@ -512,13 +512,7 @@ class API(base.Base): # NOTE(sirp): id used to be exclusively integer IDs; now we're # accepting both UUIDs and integer IDs. The handling of this # is done in db/sqlalchemy/api/instance_get - try: - int(instance_id) - uuid_like = False - except ValueError: - uuid_like = True - - if uuid_like: + if utils.is_uuid_like(instance_id): uuid = instance_id instance = self.db.instance_get_by_uuid(context, uuid) else: -- cgit From 70685ba0ed01685f8643c499ca78ef57763ed3b5 Mon Sep 17 00:00:00 2001 From: Rick Harris Date: Thu, 16 Jun 2011 15:02:18 +0000 Subject: Small tweaks --- nova/compute/manager.py | 1 - 1 file changed, 1 deletion(-) (limited to 'nova/compute') diff --git a/nova/compute/manager.py b/nova/compute/manager.py index 245958de7..00bdbf3f2 100644 --- a/nova/compute/manager.py +++ b/nova/compute/manager.py @@ -693,7 +693,6 @@ class ComputeManager(manager.SchedulerDependentManager): def get_diagnostics(self, context, instance_id): """Retrieve diagnostics for an instance on this host.""" instance_ref = self.db.instance_get(context, instance_id) - if instance_ref["state"] == power_state.RUNNING: LOG.audit(_("instance %s: retrieving diagnostics"), instance_id, context=context) -- cgit From a89953fa1e4d6940f0016de417163460a0b846fa Mon Sep 17 00:00:00 2001 From: Rick Harris Date: Thu, 16 Jun 2011 17:27:36 +0000 Subject: Fixing test_servers_by_uuid --- nova/compute/api.py | 1 - 1 file changed, 1 deletion(-) (limited to 'nova/compute') diff --git a/nova/compute/api.py b/nova/compute/api.py index 716217836..990ef962b 100644 --- a/nova/compute/api.py +++ b/nova/compute/api.py @@ -517,7 +517,6 @@ class API(base.Base): instance = self.db.instance_get_by_uuid(context, uuid) else: instance = self.db.instance_get(context, instance_id) - return dict(instance.iteritems()) @scheduler_api.reroute_compute("get") -- cgit