From: Josep Puigdemont Date: Wed, 4 May 2016 14:27:23 +0200 Subject: [PATCH] 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(-) diff --git a/deploy/environments/virtual_fuel.py b/deploy/environments/virtual_fuel.py index cb3bc6c..966bb91 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()