Source code for cfme.utils.template.openstack

import re

from glanceclient import Client

from cfme.utils.template.base import ProviderTemplateUpload, log_wrap


[docs]class OpenstackTemplateUpload(ProviderTemplateUpload): provider_type = 'openstack' log_name = 'RHOS' image_pattern = re.compile(r'<a href="?\'?([^"\']*(?:rhos|openstack|rhelosp)[^"\'>]*)') @log_wrap("upload template to glance") def upload_template(self): version = '1' try: glance = Client(version=version, session=self.mgmt.session) glance_image = glance.images.create(name=self.template_name, container_format='bare', disk_format='qcow2', is_public=True, copy_from=self.image_url) if glance_image: return True except: return False
[docs] def run(self): self.upload_template()