diff --git a/tripleoclient/tests/v1/baremetal/test_baremetal.py b/tripleoclient/tests/v1/baremetal/test_baremetal.py index 698f51469..9050a7b8b 100644 --- a/tripleoclient/tests/v1/baremetal/test_baremetal.py +++ b/tripleoclient/tests/v1/baremetal/test_baremetal.py @@ -640,6 +640,12 @@ class TestStartBaremetalIntrospectionBulk(fakes.TestBaremetal): "introspected_nodes": {}, } + self.websocket.wait_for_messages.return_value = iter([{ + "status": "SUCCESS", + "message": "Success", + "introspected_nodes": {}, + }]) + parsed_args = self.check_parser(self.cmd, [], []) self.cmd.take_action(parsed_args) @@ -655,10 +661,10 @@ class TestStartBaremetalIntrospectionBulk(fakes.TestBaremetal): } ) - self.websocket.wait_for_message.return_value = { + self.websocket.wait_for_messages.return_value = iter([{ "status": "ERROR", "message": "Failed", - } + }]) parsed_args = self.check_parser(self.cmd, [], []) diff --git a/tripleoclient/tests/v1/overcloud_node/test_overcloud_node.py b/tripleoclient/tests/v1/overcloud_node/test_overcloud_node.py index c888aa3a1..3a3b7e463 100644 --- a/tripleoclient/tests/v1/overcloud_node/test_overcloud_node.py +++ b/tripleoclient/tests/v1/overcloud_node/test_overcloud_node.py @@ -252,8 +252,12 @@ class TestIntrospectNode(fakes.TestOvercloudNode): self.websocket.wait_for_message.return_value = { "status": "SUCCESS", "message": "Success", - "introspected_nodes": {} } + self.websocket.wait_for_messages.return_value = iter([{ + "status": "SUCCESS", + "message": "Success", + "introspected_nodes": {} + }]) self.cmd.take_action(parsed_args) diff --git a/tripleoclient/tests/workflows/test_baremetal.py b/tripleoclient/tests/workflows/test_baremetal.py index 9e795649d..067c4df65 100644 --- a/tripleoclient/tests/workflows/test_baremetal.py +++ b/tripleoclient/tests/workflows/test_baremetal.py @@ -180,10 +180,11 @@ class TestBaremetalWorkflows(utils.TestCommand): def test_introspect_manageable_nodes_success(self): - self.websocket.wait_for_message.return_value = { + self.websocket.wait_for_messages.return_value = iter([{ + "execution": {"id": "IDID"}, "status": "SUCCESS", "introspected_nodes": {}, - } + }]) baremetal.introspect_manageable_nodes( self.app.client_manager, run_validations=False, @@ -198,10 +199,7 @@ class TestBaremetalWorkflows(utils.TestCommand): def test_introspect_manageable_nodes_error(self): - self.websocket.wait_for_message.return_value = { - "status": "FAIL", - "message": "Failed" - } + self.websocket.wait_for_messages.return_value = self.message_failed self.assertRaises( exceptions.IntrospectionError, @@ -219,11 +217,12 @@ class TestBaremetalWorkflows(utils.TestCommand): def test_introspect_manageable_nodes_mixed_status(self): - self.websocket.wait_for_message.return_value = { + self.websocket.wait_for_messages.return_value = iter([{ + "execution": {"id": "IDID"}, "status": "SUCCESS", "introspected_nodes": {'node1': {'error': None}, 'node2': {'error': 'Error'}} - } + }]) self.assertRaises( exceptions.IntrospectionError, diff --git a/tripleoclient/workflows/baremetal.py b/tripleoclient/workflows/baremetal.py index dbb812dcb..689ac4432 100644 --- a/tripleoclient/workflows/baremetal.py +++ b/tripleoclient/workflows/baremetal.py @@ -153,7 +153,9 @@ def introspect_manageable_nodes(clients, **workflow_input): successful_node_uuids = set() with tripleoclients.messaging_websocket(queue_name) as ws: - payload = ws.wait_for_message(execution.id) + for payload in base.wait_for_messages(workflow_client, ws, execution): + if 'message' in payload: + print(payload['message']) if payload['status'] == 'SUCCESS': introspected_nodes = payload['introspected_nodes'] or {}