Commit 5d471157 by Bodor Máté

Change create_template to create_image

parent c9558666
Pipeline #781 failed with stage
in 38 seconds
from interface_openstack.interface.vm.instance import InstanceInterface
from interface_openstack.interface.vm.resources import Instance, Flavor
from openstack.exceptions import SDKException from openstack.exceptions import SDKException
from novaclient import client from novaclient import client
import logging import logging
from interface_openstack.implementation.utils.connection import OpenStackConnection from interface_openstack.implementation.utils.connection import OpenStackConnection
import secrets
from interface_openstack.interface.vm.instance import InstanceInterface
from interface_openstack.interface.vm.resources import Instance, Flavor
from interface_openstack.interface.image.image import Image
def openstackError(func): def openstackError(func):
def wrap_OpenStackError(*args, **kw): def wrap_OpenStackError(*args, **kw):
...@@ -158,12 +160,13 @@ class OSVirtualMachineManager(InstanceInterface, OpenStackConnection): ...@@ -158,12 +160,13 @@ class OSVirtualMachineManager(InstanceInterface, OpenStackConnection):
self.openstack.compute.resize_server(instance, flavor) self.openstack.compute.resize_server(instance, flavor)
@openstackError @openstackError
def create_template(self, name_or_id, template_name, metadata=None): def create_image(self, instance_id, metadata=None):
self.openstack.compute.create_server_image(name_or_id, image_name = secrets.token_hex(30)
template_name, self.openstack.compute.create_server_image(instance_id,
image_name,
metadata) metadata)
image = self.openstack.compute.find_image(template_name) image = self.openstack.compute.find_image(image_name)
return image return self.os_image_to_rc_image(image)
def get_vnc_console(self, server_id): def get_vnc_console(self, server_id):
with client.Client("2", session=self.client_session) as nova: with client.Client("2", session=self.client_session) as nova:
...@@ -197,3 +200,9 @@ class OSVirtualMachineManager(InstanceInterface, OpenStackConnection): ...@@ -197,3 +200,9 @@ class OSVirtualMachineManager(InstanceInterface, OpenStackConnection):
launched_at=server.launched_at, launched_at=server.launched_at,
terminated_at=server.terminated_at, terminated_at=server.terminated_at,
addresses=server.addresses) addresses=server.addresses)
def os_image_to_rc_image(self, os_image):
return Image(
os_image.id,
os_image.name
)
...@@ -2,7 +2,7 @@ import json ...@@ -2,7 +2,7 @@ import json
class Image: class Image:
def __init__(self, id, name, format) -> None: def __init__(self, id, name, format=None) -> None:
super().__init__() super().__init__()
self.id = id self.id = id
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment