ironic.conductor.servicing module

Functionality related to servicing.

ironic.conductor.servicing.continue_node_service(task)[source]

Continue servicing after finishing an async service step.

This function calculates which step has to run next and passes control into do_next_service_step.

Parameters:

task – a TaskManager instance with an exclusive lock

ironic.conductor.servicing.do_next_service_step(task, step_index, disable_ramdisk=None)[source]

Do service, starting from the specified service step.

Parameters:
  • task – a TaskManager instance with an exclusive lock

  • step_index – The first service step in the list to execute. This is the index (from 0) into the list of service steps in the node’s driver_internal_info[‘service_steps’]. Is None if there are no steps to execute.

  • disable_ramdisk – Whether to skip booting ramdisk for service.

ironic.conductor.servicing.do_node_service(task, service_steps=None, disable_ramdisk=False)[source]

Internal RPC method to perform servicing of a node.

Parameters:
  • task – a TaskManager instance with an exclusive lock on its node

  • service_steps – The list of service steps to perform. If none, step validation will fail.

  • disable_ramdisk – Whether to skip booting ramdisk for servicing.

ironic.conductor.servicing.do_node_service_abort(task)[source]

Internal method to abort an ongoing operation.

Parameters:

task – a TaskManager instance with an exclusive lock

ironic.conductor.servicing.execute_step_on_child_nodes(task, step)[source]

Execute a requested step against a child node.

Parameters:
  • task – The TaskManager object for the parent node.

  • step – The requested step to be executed.

Returns:

None on Success, the resulting error message if a failure has occurred.

ironic.conductor.servicing.get_last_error(node)[source]