From 93d0208417fa504f722b55500199fce8e265e9da Mon Sep 17 00:00:00 2001 From: Josep Puigdemont Date: Wed, 4 May 2016 14:27:23 +0200 Subject: VirtualFuel: Add temp_dir and vm_name attributes These two variables are defined in one of the methods right now. They will be useful to other methods too, so we add them as attributes to the object here. Signed-off-by: Josep Puigdemont --- deploy/environments/virtual_fuel.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'deploy/environments/virtual_fuel.py') diff --git a/deploy/environments/virtual_fuel.py b/deploy/environments/virtual_fuel.py index cb3bc6c51..966bb9169 100644 --- a/deploy/environments/virtual_fuel.py +++ b/deploy/environments/virtual_fuel.py @@ -25,6 +25,12 @@ class VirtualFuel(ExecutionEnvironment): def __init__(self, storage_dir, pxe_bridge, dha_file, root_dir): super(VirtualFuel, self).__init__(storage_dir, dha_file, root_dir) self.pxe_bridge = pxe_bridge + self.temp_dir = tempfile.mkdtemp() + self.vm_name = self.dha.get_node_property(self.fuel_node_id, + 'libvirtName') + + def __del__(self): + delete(self.temp_dir) def set_vm_nic(self, temp_vm_file): with open(temp_vm_file) as f: @@ -46,23 +52,20 @@ class VirtualFuel(ExecutionEnvironment): vm_xml.write(f, pretty_print=True, xml_declaration=True) def create_vm(self): - temp_dir = tempfile.mkdtemp() - vm_name = self.dha.get_node_property(self.fuel_node_id, 'libvirtName') vm_template = '%s/%s' % (self.root_dir, self.dha.get_node_property( self.fuel_node_id, 'libvirtTemplate')) check_file_exists(vm_template) - disk_path = '%s/%s.raw' % (self.storage_dir, vm_name) + disk_path = '%s/%s.raw' % (self.storage_dir, self.vm_name) disk_sizes = self.dha.get_disks() disk_size = disk_sizes['fuel'] exec_cmd('qemu-img create -f qcow2 %s %s' % (disk_path, disk_size)) - temp_vm_file = '%s/%s' % (temp_dir, vm_name) + temp_vm_file = '%s/%s' % (self.temp_dir, self.vm_name) exec_cmd('cp %s %s' % (vm_template, temp_vm_file)) self.set_vm_nic(temp_vm_file) vm_definition_overwrite = self.dha.get_vm_definition('fuel') - self.define_vm(vm_name, temp_vm_file, disk_path, + self.define_vm(self.vm_name, temp_vm_file, disk_path, vm_definition_overwrite) - delete(temp_dir) def setup_environment(self): check_if_root() -- cgit 1.2.3-korg From 77e14a8534c91c3f95bcdfe348305b18aa05658c Mon Sep 17 00:00:00 2001 From: Josep Puigdemont Date: Wed, 4 May 2016 14:27:23 +0200 Subject: virtual_fuel: factor out image creation into a method Signed-off-by: Josep Puigdemont --- deploy/environments/virtual_fuel.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'deploy/environments/virtual_fuel.py') diff --git a/deploy/environments/virtual_fuel.py b/deploy/environments/virtual_fuel.py index 966bb9169..82c4e471d 100644 --- a/deploy/environments/virtual_fuel.py +++ b/deploy/environments/virtual_fuel.py @@ -51,15 +51,20 @@ class VirtualFuel(ExecutionEnvironment): with open(temp_vm_file, 'w') as f: vm_xml.write(f, pretty_print=True, xml_declaration=True) + def create_image(self, disk_path, disk_size): + exec_cmd('qemu-img create -f qcow2 %s %s' % (disk_path, disk_size)) + def create_vm(self): vm_template = '%s/%s' % (self.root_dir, self.dha.get_node_property( self.fuel_node_id, 'libvirtTemplate')) check_file_exists(vm_template) + disk_path = '%s/%s.raw' % (self.storage_dir, self.vm_name) disk_sizes = self.dha.get_disks() disk_size = disk_sizes['fuel'] - exec_cmd('qemu-img create -f qcow2 %s %s' % (disk_path, disk_size)) + self.create_image(disk_path, disk_size) + temp_vm_file = '%s/%s' % (self.temp_dir, self.vm_name) exec_cmd('cp %s %s' % (vm_template, temp_vm_file)) self.set_vm_nic(temp_vm_file) -- cgit 1.2.3-korg From 41d27cb3772d6528924eadea8ce2e99a7395496f Mon Sep 17 00:00:00 2001 From: Josep Puigdemont Date: Wed, 4 May 2016 14:27:23 +0200 Subject: virtual_fuel: make vm_template an attribute Signed-off-by: Josep Puigdemont --- deploy/environments/virtual_fuel.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'deploy/environments/virtual_fuel.py') diff --git a/deploy/environments/virtual_fuel.py b/deploy/environments/virtual_fuel.py index 82c4e471d..ac5fc5356 100644 --- a/deploy/environments/virtual_fuel.py +++ b/deploy/environments/virtual_fuel.py @@ -28,6 +28,10 @@ class VirtualFuel(ExecutionEnvironment): self.temp_dir = tempfile.mkdtemp() self.vm_name = self.dha.get_node_property(self.fuel_node_id, 'libvirtName') + self.vm_template = '%s/%s' % (self.root_dir, + self.dha.get_node_property( + self.fuel_node_id, 'libvirtTemplate')) + check_file_exists(self.vm_template) def __del__(self): delete(self.temp_dir) @@ -55,18 +59,13 @@ class VirtualFuel(ExecutionEnvironment): exec_cmd('qemu-img create -f qcow2 %s %s' % (disk_path, disk_size)) def create_vm(self): - vm_template = '%s/%s' % (self.root_dir, - self.dha.get_node_property( - self.fuel_node_id, 'libvirtTemplate')) - check_file_exists(vm_template) - disk_path = '%s/%s.raw' % (self.storage_dir, self.vm_name) disk_sizes = self.dha.get_disks() disk_size = disk_sizes['fuel'] self.create_image(disk_path, disk_size) temp_vm_file = '%s/%s' % (self.temp_dir, self.vm_name) - exec_cmd('cp %s %s' % (vm_template, temp_vm_file)) + exec_cmd('cp %s %s' % (self.vm_template, temp_vm_file)) self.set_vm_nic(temp_vm_file) vm_definition_overwrite = self.dha.get_vm_definition('fuel') self.define_vm(self.vm_name, temp_vm_file, disk_path, -- cgit 1.2.3-korg