diff --git a/nova/compute/manager.py b/nova/compute/manager.py index 237d9d94d3b9..fdf8d4e7756f 100644 --- a/nova/compute/manager.py +++ b/nova/compute/manager.py @@ -6470,10 +6470,11 @@ class ComputeManager(manager.Manager): utils.get_image_from_system_metadata( instance.system_metadata)) - self.network_api.setup_instance_network_on_host(context, instance, - self.host) - network_info = self.network_api.get_instance_nw_info(context, instance) try: + self.network_api.setup_instance_network_on_host(context, instance, + self.host) + network_info = self.network_api.get_instance_nw_info( + context, instance) with self.rt.instance_claim(context, instance, node, allocations, limits): self.driver.spawn(context, instance, image_meta, diff --git a/nova/tests/functional/regressions/test_bug_1862633.py b/nova/tests/functional/regressions/test_bug_1862633.py index 9990734b3614..5d3826a39110 100644 --- a/nova/tests/functional/regressions/test_bug_1862633.py +++ b/nova/tests/functional/regressions/test_bug_1862633.py @@ -82,11 +82,6 @@ class UnshelveNeutronErrorTest( 'OS-EXT-STS:task_state': None}) # As the instance went back to offloaded state we expect no allocation - # allocations = self.placement_api.get( - # '/allocations/%s' % server['id']).body['allocations'] - # self.assertEqual(0, len(allocations)) - # - # but the allocation is leaked this is bug 1862633 allocations = self.placement_api.get( '/allocations/%s' % server['id']).body['allocations'] - self.assertEqual(1, len(allocations)) + self.assertEqual(0, len(allocations))