diff options
author | Steven Pisarski <s.pisarski@cablelabs.com> | 2017-07-24 15:03:23 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2017-07-24 15:03:23 +0000 |
commit | 8e9920d2e8bd4a3d404b4589312cdc9510708a37 (patch) | |
tree | a7a0e941124255e904e34751e698b4515c95d4d0 /snaps/openstack/utils | |
parent | c1b8dbb0a4c9a7baa4f370955dc6c6f00bbb67a9 (diff) | |
parent | 663cc3617e45f6967db4af2c0a4a27e9256923f1 (diff) |
Merge "Refactor glance_utils.py v1 image creation."
Diffstat (limited to 'snaps/openstack/utils')
-rw-r--r-- | snaps/openstack/utils/glance_utils.py | 37 |
1 files changed, 13 insertions, 24 deletions
diff --git a/snaps/openstack/utils/glance_utils.py b/snaps/openstack/utils/glance_utils.py index 1010757..090846c 100644 --- a/snaps/openstack/utils/glance_utils.py +++ b/snaps/openstack/utils/glance_utils.py @@ -106,35 +106,24 @@ def __create_image_v1(glance, image_settings): :return: the OpenStack image object :raise exceptions from the Glance client or IOError when opening a file """ - created_image = None + kwargs = { + 'name': image_settings.name, 'disk_format': image_settings.format, + 'container_format': 'bare', 'is_public': image_settings.public} + + if image_settings.extra_properties: + kwargs['properties'] = image_settings.extra_properties - # TODO/REFACTOR - replace each call with one including kwargs if image_settings.url: - if image_settings.extra_properties: - created_image = glance.images.create( - name=image_settings.name, disk_format=image_settings.format, - container_format="bare", location=image_settings.url, - properties=image_settings.extra_properties, - is_public=image_settings.public) - else: - created_image = glance.images.create( - name=image_settings.name, disk_format=image_settings.format, - container_format="bare", location=image_settings.url, - is_public=image_settings.public) + kwargs['location'] = image_settings.url elif image_settings.image_file: image_file = open(image_settings.image_file, 'rb') - if image_settings.extra_properties: - created_image = glance.images.create( - name=image_settings.name, disk_format=image_settings.format, - container_format="bare", data=image_file, - properties=image_settings.extra_properties, - is_public=image_settings.public) - else: - created_image = glance.images.create( - name=image_settings.name, disk_format=image_settings.format, - container_format="bare", data=image_file, - is_public=image_settings.public) + kwargs['data'] = image_file + else: + logger.warn('Unable to create image with name - %s. No file or URL', + image_settings.name) + return None + created_image = glance.images.create(**kwargs) return Image(name=image_settings.name, image_id=created_image.id, size=created_image.size, properties=created_image.properties) |