ironic.drivers.modules.inspector.interface module

Modules required to work with ironic_inspector:

https://pypi.org/project/ironic-inspector

class ironic.drivers.modules.inspector.interface.Common(*args, **kwargs)[source]

Bases: InspectInterface

default_require_managed_boot = False
get_properties()[source]

Return the properties of the interface.

Returns:

dictionary of <property name>:<property description> entries.

inspect_hardware(task)[source]

Inspect hardware to obtain the hardware properties.

This particular implementation only starts inspection using ironic-inspector. Results will be checked in a periodic task.

Parameters:

task – a task from TaskManager.

Returns:

states.INSPECTWAIT

Raises:

HardwareInspectionFailure on failure

validate(task)[source]

Validate the driver-specific inspection information.

If invalid, raises an exception; otherwise returns None.

Parameters:

task – a task from TaskManager.

Raises:

UnsupportedDriverExtension

class ironic.drivers.modules.inspector.interface.Inspector(*args, **kwargs)[source]

Bases: Common

In-band inspection via ironic-inspector project.

abort(task)[source]

Abort hardware inspection.

Parameters:

task – a task from TaskManager.

continue_inspection(task, inventory, plugin_data=None)[source]

Continue in-band hardware inspection.

This implementation simply defers to ironic-inspector. It only exists to simplify the transition to Ironic-native in-band inspection.

Parameters:
  • task – a task from TaskManager.

  • inventory – hardware inventory from the node.

  • plugin_data – optional plugin-specific data.

ironic.drivers.modules.inspector.interface.clean_up(task, finish=True)[source]
ironic.drivers.modules.inspector.interface.inspection_error_handler(task, error, raise_exc=False, clean_up=True)[source]
ironic.drivers.modules.inspector.interface.ironic_manages_boot(task, raise_exc=False)[source]

Whether ironic should manage boot for this node.

ironic.drivers.modules.inspector.interface.prepare_managed_inspection(task, endpoint)[source]

Prepare the boot interface for managed inspection.

ironic.drivers.modules.inspector.interface.tear_down_managed_boot(task)[source]