ironic.drivers.modules.ibmc.management module

iBMC Management Interface

class ironic.drivers.modules.ibmc.management.IBMCManagement(*args, **kwargs)[source]

Bases: ManagementInterface

get_boot_device(task)[source]

Get the current boot device for a node.

Parameters:

task – A task from TaskManager.

Raises:

InvalidParameterValue on malformed parameter(s)

Raises:

MissingParameterValue on missing parameter(s)

Raises:

IBMCConnectionError when it fails to connect to iBMC

Raises:

IBMCError when iBMC responses an error information

Returns:

a dictionary containing:

boot_device:

the boot device, one of ironic.common.boot_devices or None if it is unknown.

persistent:

Boolean value or None, True if the boot device persists, False otherwise. None if it’s disabled.

get_boot_mode(task)[source]

Get the current boot mode for a node.

Provides the current boot mode of the node.

Parameters:

task – A task from TaskManager.

Raises:

InvalidParameterValue on malformed parameter(s)

Raises:

MissingParameterValue on missing parameter(s)

Raises:

IBMCConnectionError when it fails to connect to iBMC

Raises:

IBMCError when iBMC responses an error information

Returns:

The boot mode, one of ironic.common.boot_mode or None if it is unknown.

get_properties()[source]

Return the properties of the interface.

Returns:

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

get_sensors_data(task)[source]

Get sensors data.

Not implemented for this driver.

Raises:

NotImplementedError

get_supported_boot_devices(task)[source]

Get a list of the supported boot devices.

Parameters:

task – a task from TaskManager.

Raises:

InvalidParameterValue on malformed parameter(s)

Raises:

MissingParameterValue on missing parameter(s)

Raises:

IBMCConnectionError when it fails to connect to iBMC

Raises:

IBMCError when iBMC responses an error information

Returns:

A list with the supported boot devices defined in ironic.common.boot_devices.

get_supported_boot_modes(task)[source]

Get a list of the supported boot modes.

Parameters:

task – A task from TaskManager.

Returns:

A list with the supported boot modes defined in ironic.common.boot_modes. If boot mode support can’t be determined, empty list is returned.

inject_nmi(task)[source]

Inject NMI, Non Maskable Interrupt.

Inject NMI (Non Maskable Interrupt) for a node immediately.

Parameters:

task – A TaskManager instance containing the node to act on.

Raises:

InvalidParameterValue on malformed parameter(s)

Raises:

MissingParameterValue on missing parameter(s)

Raises:

IBMCConnectionError when it fails to connect to iBMC

Raises:

IBMCError when iBMC responses an error information

set_boot_device(task, device, persistent=False)[source]

Set the boot device for a node.

Parameters:
  • task – A task from TaskManager.

  • device – The boot device, one of ironic.common.boot_device.

  • persistent – Boolean value. True if the boot device will persist to all future boots, False if not. Default: False.

Raises:

InvalidParameterValue on malformed parameter(s)

Raises:

MissingParameterValue on missing parameter(s)

Raises:

IBMCConnectionError when it fails to connect to iBMC

Raises:

IBMCError when iBMC responses an error information

set_boot_mode(task, mode)[source]

Set the boot mode for a node.

Set the boot mode to use on next reboot of the node.

Parameters:
Raises:

InvalidParameterValue on malformed parameter(s)

Raises:

MissingParameterValue on missing parameter(s)

Raises:

IBMCConnectionError when it fails to connect to iBMC

Raises:

IBMCError when iBMC responses an error information

supported = False

Indicates if an interface is supported.

This will be set to False for interfaces which are untested in first- or third-party CI, or in the process of being deprecated.

validate(task)[source]

Validates the driver information needed by the iBMC driver.

Parameters:

task – A TaskManager instance containing the node to act on.

Raises:

InvalidParameterValue on malformed parameter(s)

Raises:

MissingParameterValue on missing parameter(s)