]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Add binding:host_id when creating port for probe
authorJakub Libosvar <libosvar@redhat.com>
Thu, 9 Jan 2014 19:38:37 +0000 (20:38 +0100)
committerJakub Libosvar <libosvar@redhat.com>
Tue, 14 Jan 2014 08:32:27 +0000 (09:32 +0100)
When probe is created it needs to have correct bindings otherwise port
is marked as dead.

Change-Id: I64441fbe802aab068c129c9647c7144fcd4c50a1
Partial-Bug: #1262785

neutron/debug/debug_agent.py
neutron/tests/unit/test_debug_commands.py

index 5c0265f59c68c4c119adbe3624260e780c860bc8..718475572952575dfc52206eb229d3ac82d27a42 100644 (file)
@@ -65,7 +65,6 @@ class NeutronDebugAgent():
             bridge = self.conf.external_network_bridge
 
         port = self._create_port(network, device_owner)
-        port.network = network
         interface_name = self.driver.get_device_name(port)
         namespace = None
         if self.conf.use_namespaces:
@@ -186,13 +185,15 @@ class NeutronDebugAgent():
         return result
 
     def _create_port(self, network, device_owner):
-        body = dict(port=dict(
-            admin_state_up=True,
-            network_id=network.id,
-            device_id='%s' % socket.gethostname(),
-            device_owner='%s:probe' % device_owner,
-            tenant_id=network.tenant_id,
-            fixed_ips=[dict(subnet_id=s.id) for s in network.subnets]))
+        host = self.conf.host
+        body = {'port': {'admin_state_up': True,
+                         'network_id': network.id,
+                         'device_id': '%s' % socket.gethostname(),
+                         'device_owner': '%s:probe' % device_owner,
+                         'tenant_id': network.tenant_id,
+                         'binding:host_id': host,
+                         'fixed_ips': [dict(subnet_id=s.id)
+                                       for s in network.subnets]}}
         port_dict = self.client.create_port(body)['port']
         port = DictModel(port_dict)
         port.network = network
index 9410d1a8986c19e16e7839f3d2add278a436658a..de60b0adc9db01d0dd9484908ab373d2d751bcf0 100644 (file)
@@ -119,6 +119,7 @@ class TestDebugCommands(base.BaseTestCase):
                      'admin_state_up': True,
                      'network_id': 'fake_net',
                      'tenant_id': 'fake_tenant',
+                     'binding:host_id': cfg.CONF.host,
                      'fixed_ips': [{'subnet_id': 'fake_subnet'}],
                      'device_id': socket.gethostname()}}
         namespace = 'qprobe-fake_port'
@@ -138,7 +139,7 @@ class TestDebugCommands(base.BaseTestCase):
                                                         namespace=namespace
                                                         )])
 
-    def test_create_newwork_probe(self):
+    def test_create_network_probe(self):
         self._test_create_probe(DEVICE_OWNER_NETWORK_PROBE)
 
     def test_create_nova_probe(self):
@@ -163,6 +164,7 @@ class TestDebugCommands(base.BaseTestCase):
                      'admin_state_up': True,
                      'network_id': 'fake_net',
                      'tenant_id': 'fake_tenant',
+                     'binding:host_id': cfg.CONF.host,
                      'fixed_ips': [{'subnet_id': 'fake_subnet'}],
                      'device_id': socket.gethostname()}}
         namespace = 'qprobe-fake_port'
@@ -313,6 +315,7 @@ class TestDebugCommands(base.BaseTestCase):
                      'admin_state_up': True,
                      'network_id': 'fake_net',
                      'tenant_id': 'fake_tenant',
+                     'binding:host_id': cfg.CONF.host,
                      'fixed_ips': [{'subnet_id': 'fake_subnet'}],
                      'device_id': socket.gethostname()}}
         expected = [mock.call.show_network('fake_net'),