diff --git a/tripleoclient/tests/test_utils.py b/tripleoclient/tests/test_utils.py index 903fa13ca..96a40155e 100644 --- a/tripleoclient/tests/test_utils.py +++ b/tripleoclient/tests/test_utils.py @@ -565,29 +565,6 @@ class TestWaitForStackUtil(TestCase): result = utils.wait_for_stack_ready(self.mock_orchestration, 'stack') self.assertEqual(False, result) - @mock.patch('tripleoclient.utils.wait_for_provision_state') - def test_set_nodes_state(self, wait_for_state_mock): - - wait_for_state_mock.return_value = True - bm_client = mock.Mock() - - # One node already deployed, one in the manageable state after - # introspection. - nodes = [ - mock.Mock(uuid="ABCDEFGH", provision_state="active"), - mock.Mock(uuid="IJKLMNOP", provision_state="manageable") - ] - - skipped_states = ('active', 'available') - uuids = list(utils.set_nodes_state(bm_client, nodes, 'provide', - 'available', skipped_states)) - - bm_client.node.set_provision_state.assert_has_calls([ - mock.call('IJKLMNOP', 'provide'), - ]) - - self.assertEqual(uuids, ['IJKLMNOP', ]) - def test_wait_for_provision_state(self): baremetal_client = mock.Mock() diff --git a/tripleoclient/utils.py b/tripleoclient/utils.py index 65e39c5cb..504ce7489 100644 --- a/tripleoclient/utils.py +++ b/tripleoclient/utils.py @@ -612,68 +612,6 @@ def wait_for_provision_state(baremetal_client, node_uuid, provision_state, ) -def set_nodes_state(baremetal_client, nodes, transition, target_state, - skipped_states=()): - """Make all nodes available in the baremetal service for a deployment - - For each node, make it available unless it is already available or active. - Available nodes can be used for a deployment and an active node is already - in use. - - :param baremetal_client: Instance of Ironic client - :type baremetal_client: ironicclient.v1.client.Client - - :param nodes: List of Baremetal Nodes - :type nodes: [ironicclient.v1.node.Node] - - :param transition: The state to set for a node. The full list of states - can be found in ironic.common.states. - :type transition: string - - :param target_state: The expected result state for a node. For example when - transitioning to 'manage' the result is 'manageable' - :type target_state: string - - :param skipped_states: A set of states to skip, for example 'active' nodes - are already deployed and the state can't always be - changed. - :type skipped_states: iterable of strings - - :param error_states: Node states treated as error for this transition - :type error_states: collection of strings - - :param error_message: Optional message to append to an error message - :param error_message: str - - :raises exceptions.StateTransitionFailed: if a node enters any of the - states in error_states - - :raises exceptions.Timeout: if a node takes too long to reach target state - """ - - log = logging.getLogger(__name__ + ".set_nodes_state") - - for node in nodes: - - if node.provision_state in skipped_states: - continue - - log.debug(_( - "Setting provision state from '{0}' to '{1}' for Node {2}") - .format(node.provision_state, transition, node.uuid)) - - baremetal_client.node.set_provision_state(node.uuid, transition) - try: - wait_for_provision_state(baremetal_client, node.uuid, target_state) - except exceptions.StateTransitionFailed as e: - log.error(_("FAIL: State transition failed for Node {0}. {1}") - .format(node.uuid, e)) - except exceptions.Timeout as e: - log.error(_("FAIL: Timeout waiting for Node {0}. {1}") - .format(node.uuid, e)) - yield node.uuid - - def get_stack_output_item(stack, item): if not stack: return None