From 5ff189808d45582f0799c14eaaec687a3cf8ad5e Mon Sep 17 00:00:00 2001 From: Sandy Walsh Date: Mon, 17 Jan 2011 16:47:19 -0800 Subject: openstack api fixes for glance --- nova/api/openstack/common.py | 7 ++++++- nova/api/openstack/servers.py | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'nova/api') diff --git a/nova/api/openstack/common.py b/nova/api/openstack/common.py index 037ed47a0..3b93d961e 100644 --- a/nova/api/openstack/common.py +++ b/nova/api/openstack/common.py @@ -38,6 +38,11 @@ def limited(items, req): return items[offset:range_end] +def get_image_id_or_id(image): + """Some image services return image_id, others id""" + return image.get('imageId', image.get('id', None)) + + def get_image_id_from_image_hash(image_service, context, image_hash): """Given an Image ID Hash, return an objectstore Image ID. @@ -54,7 +59,7 @@ def get_image_id_from_image_hash(image_service, context, image_hash): except NotImplementedError: items = image_service.index(context) for image in items: - image_id = image['imageId'] + image_id = get_image_id_or_id(image) if abs(hash(image_id)) == int(image_hash): return image_id raise exception.NotFound(image_hash) diff --git a/nova/api/openstack/servers.py b/nova/api/openstack/servers.py index 8cbcebed2..54af09a5d 100644 --- a/nova/api/openstack/servers.py +++ b/nova/api/openstack/servers.py @@ -127,6 +127,7 @@ class Controller(wsgi.Controller): def _get_kernel_ramdisk_from_image(self, image_id): mapping_filename = FLAGS.os_krm_mapping_file + image_id = str(image_id) with open(mapping_filename) as f: mapping = json.load(f) if image_id in mapping: -- cgit From 0167151518dcfa714ecd8dab55f2378de5edf51f Mon Sep 17 00:00:00 2001 From: Sandy Walsh Date: Tue, 25 Jan 2011 15:06:05 -0600 Subject: moved imageId change to s3 client --- nova/api/openstack/common.py | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'nova/api') diff --git a/nova/api/openstack/common.py b/nova/api/openstack/common.py index 3b93d961e..01d620aed 100644 --- a/nova/api/openstack/common.py +++ b/nova/api/openstack/common.py @@ -38,11 +38,6 @@ def limited(items, req): return items[offset:range_end] -def get_image_id_or_id(image): - """Some image services return image_id, others id""" - return image.get('imageId', image.get('id', None)) - - def get_image_id_from_image_hash(image_service, context, image_hash): """Given an Image ID Hash, return an objectstore Image ID. @@ -59,7 +54,6 @@ def get_image_id_from_image_hash(image_service, context, image_hash): except NotImplementedError: items = image_service.index(context) for image in items: - image_id = get_image_id_or_id(image) - if abs(hash(image_id)) == int(image_hash): + if abs(hash(image['id'])) == int(image_hash): return image_id raise exception.NotFound(image_hash) -- cgit From 078914a7b6b517cb2929b5f3e27e5a327447e801 Mon Sep 17 00:00:00 2001 From: Sandy Walsh Date: Tue, 25 Jan 2011 16:38:29 -0600 Subject: Fixed up a little image_id return --- nova/api/openstack/common.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'nova/api') diff --git a/nova/api/openstack/common.py b/nova/api/openstack/common.py index 01d620aed..6d2fa16e8 100644 --- a/nova/api/openstack/common.py +++ b/nova/api/openstack/common.py @@ -54,6 +54,7 @@ def get_image_id_from_image_hash(image_service, context, image_hash): except NotImplementedError: items = image_service.index(context) for image in items: - if abs(hash(image['id'])) == int(image_hash): + image_id = image['id'] + if abs(hash(image_id)) == int(image_hash): return image_id raise exception.NotFound(image_hash) -- cgit