Merge "Check the network burnin roles and partner"

This commit is contained in:
Zuul 2021-09-02 12:43:39 +00:00 committed by Gerrit Code Review
commit 667e83da0e
2 changed files with 29 additions and 0 deletions

View File

@ -183,8 +183,16 @@ def fio_network(node):
"'agent_burnin_fio_network_config' in driver_info")
raise errors.CleaningError(error_msg)
LOG.debug("agent_burnin_fio_network_config is %s", str(config))
role = config.get('role')
if role not in NETWORK_BURNIN_ROLES:
error_msg = ("fio (network) found an unknown role: %s", role)
raise errors.CleaningError(error_msg)
partner = config.get('partner')
if not partner:
error_msg = ("fio (network) failed to find partner")
raise errors.CleaningError(error_msg)
_do_fio_network(role == 'writer', runtime, partner)
LOG.debug("fio (network): first direction done, swapping roles ...")

View File

@ -198,6 +198,27 @@ class TestBurnin(base.IronicAgentTest):
self.assertRaises(errors.CommandExecutionError,
burnin.fio_network, node)
def test_fio_network_unknown_role(self, mock_execute):
node = {'driver_info': {'agent_burnin_fio_network_config':
{'partner': 'host-003', 'role': 'read'}}}
self.assertRaises(errors.CleaningError, burnin.fio_network, node)
def test_fio_network_no_role(self, mock_execute):
node = {'driver_info': {'agent_burnin_fio_network_config':
{'partner': 'host-003'}}}
self.assertRaises(errors.CleaningError, burnin.fio_network, node)
def test_fio_network_no_partner(self, mock_execute):
node = {'driver_info': {'agent_burnin_fio_network_config':
{'role': 'reader'}}}
self.assertRaises(errors.CleaningError, burnin.fio_network, node)
@mock.patch('time.sleep', autospec=True)
def test_fio_network_reader_loop(self, mock_time, mock_execute):