From 93d0208417fa504f722b55500199fce8e265e9da Mon Sep 17 00:00:00 2001
From: Josep Puigdemont <josep.puigdemont@enea.com>
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 <josep.puigdemont@enea.com>
---
 deploy/environments/virtual_fuel.py | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

(limited to 'deploy/environments')

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