Merge "Fix get_network_details_v2 exception"

This commit is contained in:
Zuul 2018-10-17 15:47:34 +00:00 committed by Gerrit Code Review
commit dab0634bcf
2 changed files with 16 additions and 1 deletions

View File

@ -238,7 +238,11 @@ class BaseOpenStackService(base.BaseMetadataService):
return services
def get_network_details_v2(self):
network_data = self._get_network_data()
try:
network_data = self._get_network_data()
except base.NotExistingMetadataException:
LOG.info("V2 network metadata not found")
return
links = self._parse_network_data_links(
network_data.get("links", []))

View File

@ -488,3 +488,14 @@ class TestBaseOpenStackService(unittest.TestCase):
def test_get_network_details_v2_invalid_bond_lb_algo(self):
self._test_get_network_details_v2(invalid_bond_lb_algo=True)
@mock.patch(MODPATH + ".BaseOpenStackService._get_network_data")
@mock.patch(MODPATH + ".LOG.info")
def test_get_network_details_v2_no_metadata(self, mock_log_exception,
mock_get_network_data):
mock_get_network_data.side_effect = (
base.NotExistingMetadataException('failed to get metadata'))
network_details = self._service.get_network_details_v2()
self.assertIsNone(network_details)
self.assertTrue(mock_log_exception.called)