From 77e1684332cfc6e2cad1f1fc93ab5fa6caf231b9 Mon Sep 17 00:00:00 2001 From: Brian Waldon Date: Fri, 4 Nov 2011 11:33:00 -0400 Subject: Removing duplicate kernel/ramdisk check in OSAPI Fixes bug 886169 Change-Id: Id68de3284367e789f1295b61fe6bf9c400470ba8 --- nova/api/openstack/servers.py | 52 +------------------------------------------ 1 file changed, 1 insertion(+), 51 deletions(-) (limited to 'nova/api') diff --git a/nova/api/openstack/servers.py b/nova/api/openstack/servers.py index 949a33f43..a9b5af653 100644 --- a/nova/api/openstack/servers.py +++ b/nova/api/openstack/servers.py @@ -191,45 +191,6 @@ class Controller(object): msg = _("Server name is an empty string") raise exc.HTTPBadRequest(explanation=msg) - def _get_kernel_ramdisk_from_image(self, req, image_service, image_id): - """Fetch an image from the ImageService, then if present, return the - associated kernel and ramdisk image IDs. - """ - context = req.environ['nova.context'] - image_meta = image_service.show(context, image_id) - # NOTE(sirp): extracted to a separate method to aid unit-testing, the - # new method doesn't need a request obj or an ImageService stub - kernel_id, ramdisk_id = self._do_get_kernel_ramdisk_from_image( - image_meta) - return kernel_id, ramdisk_id - - @staticmethod - def _do_get_kernel_ramdisk_from_image(image_meta): - """Given an ImageService image_meta, return kernel and ramdisk image - ids if present. - - This is only valid for `ami` style images. - """ - image_id = image_meta['id'] - if image_meta['status'] != 'active': - raise exception.ImageUnacceptable(image_id=image_id, - reason=_("status is not active")) - - if image_meta.get('container_format') != 'ami': - return None, None - - try: - kernel_id = image_meta['properties']['kernel_id'] - except KeyError: - raise exception.KernelNotFoundForImage(image_id=image_id) - - try: - ramdisk_id = image_meta['properties']['ramdisk_id'] - except KeyError: - ramdisk_id = None - - return kernel_id, ramdisk_id - def _get_injected_files(self, personality): """ Create a list of injected files from the personality attribute @@ -363,15 +324,6 @@ class Controller(object): if str(image_href).startswith(req.application_url): image_href = image_href.split('/').pop() - try: - image_service, image_id = image.get_image_service(context, - image_href) - kernel_id, ramdisk_id = self._get_kernel_ramdisk_from_image( - req, image_service, image_id) - except Exception, e: - msg = _("Cannot find requested image %(image_href)s: %(e)s" % - locals()) - raise exc.HTTPBadRequest(explanation=msg) personality = server_dict.get('personality') config_drive = server_dict.get('config_drive') @@ -440,9 +392,7 @@ class Controller(object): (instances, resv_id) = self.compute_api.create(context, inst_type, - image_id, - kernel_id=kernel_id, - ramdisk_id=ramdisk_id, + image_href, display_name=name, display_description=name, key_name=key_name, -- cgit