aboutsummaryrefslogtreecommitdiffstats
path: root/patches/opnfv-fuel/0003-VirtualFuel-Add-temp_dir-and-vm_name-attributes.patch
blob: 83d6e2927de7845bed845626fbf8e4230285a724 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
From: Josep Puigdemont <josep.puigdemont@enea.com>
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 <josep.puigdemont@enea.com>
---
 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()