Fixes port status hanging to build status
ML2 plugin changes the port status to "build" when get_device_details is called. For this reason, the port status must be updated once the port details are processed. Fixes bug: #1224991 Change-Id: I2c0321073cc07e1764fedbfbecbc844557ac6bc9
This commit is contained in:
parent
ad31688119
commit
662d9618d8
@ -281,6 +281,10 @@ class HyperVNeutronAgent(object):
|
||||
device_details['physical_network'],
|
||||
device_details['segmentation_id'],
|
||||
device_details['admin_state_up'])
|
||||
self.plugin_rpc.update_device_up(self.context,
|
||||
device,
|
||||
self.agent_id,
|
||||
cfg.CONF.host)
|
||||
return resync
|
||||
|
||||
def _treat_devices_removed(self, devices):
|
||||
|
@ -90,8 +90,20 @@ class TestHyperVNeutronAgent(base.BaseTestCase):
|
||||
def test_treat_devices_added_updates_known_port(self):
|
||||
details = mock.MagicMock()
|
||||
details.__contains__.side_effect = lambda x: True
|
||||
with mock.patch.object(self.agent.plugin_rpc,
|
||||
"update_device_up") as func:
|
||||
self.assertTrue(self.mock_treat_devices_added(details,
|
||||
'_treat_vif_port'))
|
||||
self.assertTrue(func.called)
|
||||
|
||||
def test_treat_devices_added_missing_port_id(self):
|
||||
details = mock.MagicMock()
|
||||
details.__contains__.side_effect = lambda x: False
|
||||
with mock.patch.object(self.agent.plugin_rpc,
|
||||
"update_device_up") as func:
|
||||
self.assertFalse(self.mock_treat_devices_added(details,
|
||||
'_treat_vif_port'))
|
||||
self.assertFalse(func.called)
|
||||
|
||||
def test_treat_devices_removed_returns_true_for_missing_device(self):
|
||||
attrs = {'update_device_down.side_effect': Exception()}
|
||||
|
Loading…
Reference in New Issue
Block a user