# HG changeset patch # User Cole Robinson # Date 1236630113 14400 # Node ID 6126a50801deafa155b17b66cfc3008ffe584b24 # Parent 3f37d0519b1750666e88e7eaef8d5dfaafc34237 Fix conn uri lookup for domain migration. diff -r 3f37d0519b17 -r 6126a50801de src/virtManager/details.py --- a/src/virtManager/details.py Mon Mar 09 16:21:32 2009 -0400 +++ b/src/virtManager/details.py Mon Mar 09 16:21:53 2009 -0400 @@ -719,12 +719,11 @@ 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") diff -r 3f37d0519b17 -r 6126a50801de src/virtManager/engine.py --- a/src/virtManager/engine.py Mon Mar 09 16:21:32 2009 -0400 +++ b/src/virtManager/engine.py Mon Mar 09 16:21:53 2009 -0400 @@ -527,7 +527,18 @@ 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) diff -r 3f37d0519b17 -r 6126a50801de src/virtManager/manager.py --- a/src/virtManager/manager.py Mon Mar 09 16:21:32 2009 -0400 +++ b/src/virtManager/manager.py Mon Mar 09 16:21:53 2009 -0400 @@ -1100,14 +1100,11 @@ 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) diff -rup virt-manager-0.6.1/src/virtManager/domain.py new/src/virtManager/domain.py --- virt-manager-0.6.1/src/virtManager/domain.py 2009-09-13 20:25:12.000000000 -0400 +++ new/src/virtManager/domain.py 2009-09-13 20:24:29.000000000 -0400 @@ -1293,11 +1293,15 @@ class vmmDomain(gobject.GObject): else: self._disk_io = self._sample_disk_io_dummy - - def migrate(self, dictcon): + def migrate(self, destconn): flags = 0 if self.lastStatus == libvirt.VIR_DOMAIN_RUNNING: flags = libvirt.VIR_MIGRATE_LIVE - self.vm.migrate(self.connection.vmm, flags, None, dictcon.get_short_hostname(), 0) + + newxml = self.get_xml() + + self.vm.migrate(destconn.vmm, flags, None, None, 0) + + destconn.define_domain(newxml) gobject.type_register(vmmDomain)