diff options
author | Cristina Pauna <cristina.pauna@enea.com> | 2017-02-24 16:41:46 +0200 |
---|---|---|
committer | Cristina Pauna <cristina.pauna@enea.com> | 2017-03-01 17:10:34 +0200 |
commit | 8392f34fbc479e04c9e8d803c7b5179a9070cde1 (patch) | |
tree | c4588b7ddc9868cab5da1aeafda6cfd5a9466d09 /snaps/openstack/utils | |
parent | c613af85630307c1c50ccd109d8c4efae5f0265b (diff) |
Add support for extra properties in an image
This patch adds a new setting for images, extra_properties.
This field is a dict and can be used to create a 3-part image
by setting the kernel_id and the ramdisk_id of the main image.
Unit tests have been added to set some generic property, for
creation of the 3-part image, and for creating an instance
with that 3-part image
JIRA: SNAPS-32
Change-Id: Ifb53d1da1085fcd6429ddc0607c905522db5e8bb
Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
Diffstat (limited to 'snaps/openstack/utils')
-rw-r--r-- | snaps/openstack/utils/glance_utils.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/snaps/openstack/utils/glance_utils.py b/snaps/openstack/utils/glance_utils.py index 6d90d3e..3be2a47 100644 --- a/snaps/openstack/utils/glance_utils.py +++ b/snaps/openstack/utils/glance_utils.py @@ -61,10 +61,22 @@ def create_image(glance, image_settings): :raise Exception if using a file and it cannot be found """ if image_settings.url: + if image_settings.extra_properties: + return glance.images.create(name=image_settings.name, + disk_format=image_settings.format, + container_format="bare", + location=image_settings.url, + properties=image_settings.extra_properties) return glance.images.create(name=image_settings.name, disk_format=image_settings.format, container_format="bare", location=image_settings.url) elif image_settings.image_file: image_file = file_utils.get_file(image_settings.image_file) + if image_settings.extra_properties: + return glance.images.create(name=image_settings.name, + disk_format=image_settings.format, + container_format="bare", + data=image_file, + properties=image_settings.extra_properties) return glance.images.create(name=image_settings.name, disk_format=image_settings.format, container_format="bare", data=image_file) |