ironic.drivers.modules.drac.management module¶
DRAC management interface
- class ironic.drivers.modules.drac.management.DracManagement(*args, **kwargs)[source]¶
Bases:
DracWSManManagement
Class alias of class DracWSManManagement.
This class provides ongoing support of the deprecated ‘idrac’ management interface implementation entrypoint.
All bug fixes and new features should be implemented in its base class, DracWSManManagement. That makes them available to both the deprecated ‘idrac’ and new ‘idrac-wsman’ entrypoints. Such changes should not be made to this class.
- class ironic.drivers.modules.drac.management.DracRedfishManagement(*args, **kwargs)[source]¶
Bases:
RedfishManagement
iDRAC Redfish interface for management-related actions.
- EXPORT_CONFIGURATION_ARGSINFO = {'export_configuration_location': {'description': 'URL of location to save the configuration to.', 'required': True}}¶
- IMPORT_CONFIGURATION_ARGSINFO = {'import_configuration_location': {'description': 'URL of location to fetch desired configuration from.', 'required': True}}¶
- IMPORT_EXPORT_CONFIGURATION_ARGSINFO = {'export_configuration_location': {'description': 'URL of location to save the configuration to.', 'required': True}, 'import_configuration_location': {'description': 'URL of location to fetch desired configuration from.', 'required': True}}¶
- clear_job_queue(task)[source]¶
Clear iDRAC job queue.
- Parameters:
task – a TaskManager instance containing the node to act on.
- Raises:
RedfishError on an error.
- export_configuration(task, export_configuration_location)[source]¶
(Deprecated) Export the configuration of the server.
Exports the configuration of the server against which the step is run and stores it in specific format in indicated location.
Uses Dell’s Server Configuration Profile (SCP) from sushy-oem-idrac library to get ALL configuration for cloning.
- Parameters:
task – A task from TaskManager.
export_configuration_location – URL of location to save the configuration to.
- Raises:
MissingParameterValue if missing configuration name of a file to save the configuration to
- Raises:
DracOperatationError when no managagers for Redfish system found or configuration export from SCP failed
- Raises:
RedfishError when loading OEM extension failed
- import_configuration(task, import_configuration_location)[source]¶
(Deprecated) Import and apply the configuration to the server.
Gets pre-created configuration from storage by given location and imports that into given server. Uses Dell’s Server Configuration Profile (SCP).
- Parameters:
task – A task from TaskManager.
import_configuration_location – URL of location to fetch desired configuration from.
- Raises:
MissingParameterValue if missing configuration name of a file to fetch the configuration from
- import_export_configuration(task, import_configuration_location, export_configuration_location)[source]¶
Import and export configuration in one go.
Gets pre-created configuration from storage by given name and imports that into given server. After that exports the configuration of the server against which the step is run and stores it in specific format in indicated storage as configured by Ironic.
- Parameters:
import_configuration_location – URL of location to fetch desired configuration from.
export_configuration_location – URL of location to save the configuration to.
- class ironic.drivers.modules.drac.management.DracWSManManagement(*args, **kwargs)[source]¶
Bases:
ManagementInterface
- clear_job_queue(task)[source]¶
Clear the job queue.
- Parameters:
task – a TaskManager instance containing the node to act on.
- Returns:
None if it is completed.
- Raises:
DracOperationError on an error from python-dracclient.
- get_boot_device(task)[source]¶
Get the current boot device for a node.
Returns the current boot device of the node.
- Parameters:
task – a TaskManager instance containing the node to act on.
- Raises:
DracOperationError on an error from python-dracclient.
- Returns:
a dictionary containing:
- boot_device:
the boot device, one of
ironic.common.boot_devices
or None if it is unknown.- persistent:
whether the boot device will persist to all future boots or not, None if it is unknown.
- get_sensors_data(task)[source]¶
Get sensors data.
- Parameters:
task – a TaskManager instance.
- Raises:
FailedToGetSensorData when getting the sensor data fails.
- Raises:
FailedToParseSensorData when parsing sensor data fails.
- Returns:
returns a consistent format dict of sensor data grouped by sensor type, which can be processed by Ceilometer.
- get_supported_boot_devices(task)[source]¶
Get a list of the supported boot devices.
- Parameters:
task – a TaskManager instance containing the node to act on.
- Returns:
A list with the supported boot devices defined in
ironic.common.boot_devices
.
- known_good_state(task)[source]¶
Reset the iDRAC, Clear the job queue.
- Parameters:
task – a TaskManager instance containing the node to act on.
- Returns:
None if it is completed.
- Raises:
DracOperationError on an error from python-dracclient.
- reset_idrac(task)[source]¶
Reset the iDRAC.
- Parameters:
task – a TaskManager instance containing the node to act on.
- Returns:
None if it is completed.
- Raises:
DracOperationError on an error from python-dracclient.
- set_boot_device(task, device, persistent=False)[source]¶
Set the boot device for a node.
Set the boot device to use on next reboot of the node.
- Parameters:
task – a TaskManager instance containing the node to act on.
device – the boot device, one of
ironic.common.boot_devices
.persistent – Boolean value. True if the boot device will persist to all future boots, False if not. Default: False.
- Raises:
InvalidParameterValue if an invalid boot device is specified.
- 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]¶
Validate the driver-specific info supplied.
This method validates whether the ‘driver_info’ property of the supplied node contains the required information for this driver to manage the node.
- Parameters:
task – a TaskManager instance containing the node to act on.
- Raises:
InvalidParameterValue if required driver_info attribute is missing or invalid on the node.
- ironic.drivers.modules.drac.management.set_boot_device(node, device, persistent=False)[source]¶
Set the boot device for a node.
Set the boot device to use on next boot of the node.
- Parameters:
node – an ironic node object.
device – the boot device, one of
ironic.common.boot_devices
.persistent – Boolean value. True if the boot device will persist to all future boots, False if not. Default: False.
- Raises:
DracOperationError on an error from python-dracclient.