From d632e9883ef2fecb74b3bfdc62b8871a2c74ff93 Mon Sep 17 00:00:00 2001 From: Trey Morris Date: Wed, 15 Jun 2011 11:29:07 -0500 Subject: updated finish_resize to accept network_info, updated compute and tests in accordance --- nova/compute/manager.py | 4 +++- nova/tests/network/base.py | 2 +- nova/tests/test_xenapi.py | 17 ++++++++++++++++- nova/virt/xenapi/vmops.py | 4 ++-- 4 files changed, 22 insertions(+), 5 deletions(-) (limited to 'nova') diff --git a/nova/compute/manager.py b/nova/compute/manager.py index cf9a97b4c..d29c4348c 100644 --- a/nova/compute/manager.py +++ b/nova/compute/manager.py @@ -597,7 +597,9 @@ class ComputeManager(manager.SchedulerDependentManager): # reload the updated instance ref # FIXME(mdietz): is there reload functionality? instance_ref = self.db.instance_get(context, instance_id) - self.driver.finish_resize(instance_ref, disk_info) + network_info = self.network_api.get_instance_nw_info(context, + instance) + self.driver.finish_resize(instance_ref, disk_info, network_info) self.db.migration_update(context, migration_id, {'status': 'finished', }) diff --git a/nova/tests/network/base.py b/nova/tests/network/base.py index 30dbc3278..eceb384f2 100644 --- a/nova/tests/network/base.py +++ b/nova/tests/network/base.py @@ -48,7 +48,7 @@ class NetworkTestCase(test.TestCase): def tearDown(self): super(NetworkTestCase, self).tearDown() - self.manager.delete_user(self.user['id']) + self.manager.delete_user(self.user.id) reload(db) diff --git a/nova/tests/test_xenapi.py b/nova/tests/test_xenapi.py index 98d77fe86..8b71a1d76 100644 --- a/nova/tests/test_xenapi.py +++ b/nova/tests/test_xenapi.py @@ -687,7 +687,22 @@ class XenAPIMigrateInstance(test.TestCase): stubs.stubout_session(self.stubs, stubs.FakeSessionForMigrationTests) stubs.stubout_loopingcall_start(self.stubs) conn = xenapi_conn.get_connection(False) - conn.finish_resize(instance, dict(base_copy='hurr', cow='durr')) + network_info = [({'bridge': 'fa0', 'id': 0}, + {'broadcast': '192.168.0.255', + 'dns': ['192.168.0.1'], + 'gateway': '192.168.0.1', + 'gateway6': 'dead:beef::1', + 'ip6s': [{'enabled': '1', + 'ip': 'dead:beef::dcad:beff:feef:0', + 'netmask': '64'}], + 'ips': [{'enabled': '1', + 'ip': '192.168.0.100', + 'netmask': '255.255.255.0'}], + 'label': 'fake', + 'mac': 'DE:AD:BE:EF:00:00', + 'rxtx_cap': 3})] + conn.finish_resize(instance, dict(base_copy='hurr', cow='durr'), + network_info) class XenAPIDetermineDiskImageTestCase(test.TestCase): diff --git a/nova/virt/xenapi/vmops.py b/nova/virt/xenapi/vmops.py index 6b2287cab..5bbbb52e1 100644 --- a/nova/virt/xenapi/vmops.py +++ b/nova/virt/xenapi/vmops.py @@ -88,13 +88,13 @@ class VMOps(object): vm_ref = VMHelper.lookup(self._session, instance.name) self._start(instance, vm_ref) - def finish_resize(self, instance, disk_info): + def finish_resize(self, instance, disk_info, network_info): vdi_uuid = self.link_disks(instance, disk_info['base_copy'], disk_info['cow']) vm_ref = self._create_vm(instance, [dict(vdi_type='os', vdi_uuid=vdi_uuid)]) self.resize_instance(instance, vdi_uuid) - self._spawn(instance, vm_ref) + self._spawn(instance, vm_ref, network_info) def _start(self, instance, vm_ref=None): """Power on a VM instance""" -- cgit