Hi all, create method on virt module doesn't work on xen domain based
machines because findByName connection method fails (XEN can see shutoff
virtual machines).
I add a simple code to use "xm create 'machinename'" to permit starting
machines by using machine name.
Here my patch :)
Luca
###########BEGIN
>From e62cb78e755f09f277b8ba5aa64cc79eaa739543 Mon Sep 17 00:00:00 2001
From: Luca Foppiano <[EMAIL PROTECTED]>
Date: Tue, 20 May 2008 12:20:17 +0200
Subject: [PATCH] Fix virt manager module to allow virtual machines
creation
on XEN.
---
func/minion/modules/virt.py | 18 +++++++++++++++++-
1 files changed, 17 insertions(+), 1 deletions(-)
diff --git a/func/minion/modules/virt.py b/func/minion/modules/virt.py
index 0828484..d2dd0a4 100644
--- a/func/minion/modules/virt.py
+++ b/func/minion/modules/virt.py
@@ -56,6 +56,8 @@ class FuncLibvirtConnection(object):
raise codes.FuncException("hypervisor connection failure")
self.conn = conn
+ self.type = conn.getType()
+
def find_vm(self, vmid):
"""
@@ -257,7 +259,21 @@ class Virt(func_module.FuncModule):
Start the machine via the given mac address.
"""
self.__get_conn()
- self.conn.create(vmid)
+
+ # If vmid is a virtualized XEN machine,
+ # is impossible to find it from a list of virtual machines
+ # if is of. So is necessary to create using xm command by
+ # command line.
+
+ if (self.conn.type == 'Xen'):
+ print "XEN command, using XM"
+ import command
+ comm = command.Command()
+ comm.run('xm create '+str(vmid))
+ else:
+ print "Qemu"
+ self.conn.create(vmid)
+
return 0
--
1.5.4.1
###########END
--
Today is Setting Orange, the 67th day of Discord in the YOLD 3174
The absurd is the essential concept and the first truth.
-- A. Camus
_______________________________________________
Func-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/func-list