diff options
| author | Jenkins <jenkins@review.openstack.org> | 2013-03-02 04:36:24 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2013-03-02 04:36:24 +0000 |
| commit | f55182e21496dfcfc599d8075cedc428eecd33d1 (patch) | |
| tree | f9083bd93f86a0dce34b351549194b77dd8422c3 /nova/compute | |
| parent | 8296533147b3a974a94c443a4164a97d9434fd8b (diff) | |
| parent | 394c693e359ed4f19cc2f7d975b1f9ee5500b7f6 (diff) | |
Merge "Make allocate_for_instance() return only info about ports allocated"
Diffstat (limited to 'nova/compute')
| -rwxr-xr-x | nova/compute/manager.py | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/nova/compute/manager.py b/nova/compute/manager.py index ef93e9e83..02f103dbc 100755 --- a/nova/compute/manager.py +++ b/nova/compute/manager.py @@ -2791,13 +2791,15 @@ class ComputeManager(manager.SchedulerDependentManager): network_info = self.network_api.allocate_port_for_instance( context, instance, port_id, network_id, requested_ip, self.conductor_api) + if len(network_info) != 1: + LOG.error(_('allocate_port_for_instance returned %(port)s ports') % + dict(ports=len(network_info))) + raise exception.InterfaceAttachFailed(instance=instance) image_meta = _get_image_meta(context, instance['image_ref']) legacy_net_info = self._legacy_nw_info(network_info) - for (network, mapping) in legacy_net_info: - if mapping['vif_uuid'] == port_id: - self.driver.attach_interface(instance, image_meta, - [(network, mapping)]) - return (network, mapping) + (network, mapping) = legacy_net_info[0] + self.driver.attach_interface(instance, image_meta, legacy_net_info) + return legacy_net_info[0] def detach_interface(self, context, instance, port_id): """Detach an network adapter from an instance.""" |
