Fix conn uri lookup for domain migration.

This commit is contained in:
Cole Robinson 2009-03-09 16:21:53 -04:00
parent ebe91d6ce2
commit 933d0130e4
3 changed files with 21 additions and 14 deletions

View File

@ -719,12 +719,11 @@ class vmmDetails(gobject.GObject):
def control_vm_migrate(self, src):
# get selected submenu(destination hostname)
hostname = self.window.get_widget("details-menu-migrate_menu").get_active().get_image().get_stock()[0]
for key in self.engine.connections.keys():
if self.engine.get_connection(key).get_hostname() == hostname:
host_uri = key
break
self.emit("action-migrate-domain", self.vm.get_connection().get_uri(), self.vm.get_uuid(), host_uri)
info = self.window.get_widget("details-menu-migrate_menu").get_active().get_image().get_stock()[0]
hostname = info.split(" ")[0]
self.emit("action-migrate-domain", self.vm.get_connection().get_uri(),
self.vm.get_uuid(), hostname)
def set_migrate_menu(self):
menu = self.window.get_widget("details-menu-migrate_menu")

View File

@ -527,7 +527,18 @@ class vmmEngine(gobject.GObject):
else:
logging.warning("Reboot requested, but machine is already shutting down / shutoff")
def migrate_domain(self, uri, uuid, desturi):
def migrate_domain(self, uri, uuid, desthost):
desturi = None
for key in self.connections.keys():
if self.get_connection(key).get_hostname() == desthost:
desturi = key
break
if desturi == None:
logging.debug("Could not find dest uri for migrate hostname: %s"
% desthost)
return
conn = self.get_connection(uri, False)
vm = conn.get_vm(uuid)
destconn = self.get_connection(desturi, False)

View File

@ -1100,14 +1100,11 @@ class vmmManager(gobject.GObject):
def migrate(self, ignore):
vm = self.current_vm()
# get selected submenu(destination hostname)
hostname = self.vmmenumigrate.get_active().get_image().get_stock()[0]
for key in self.engine.connections.keys():
if self.engine.get_connection(key).get_hostname() == hostname:
host_uri = key
break
label = self.vmmenumigrate.get_active().get_image().get_stock()[0]
hostname = label.split(" ")[0]
if vm is not None:
self.emit("action-migrate-domain", vm.get_connection().get_uri(), vm.get_uuid(), host_uri)
self.emit("action-migrate-domain", vm.get_connection().get_uri(),
vm.get_uuid(), hostname)
def set_migrate_submenu(self, src):
self.engine.populate_migrate_menu(self.vmmenumigrate, self.migrate)