ironic.drivers.modules.ibmc.raid module

iBMC RAID configuration specific methods

class ironic.drivers.modules.ibmc.raid.IbmcRAID(*args, **kwargs)[source]

Bases: RAIDInterface

Implementation of RAIDInterface for iBMC.

RAID_APPLY_CONFIGURATION_ARGSINFO = {'create_nonroot_volumes': {'description': "Setting this to 'False' indicates not to create non-root volumes (all except the root volume) in 'raid_config'. Default value is 'True'.", 'required': False}, 'create_root_volume': {'description': "Setting this to 'False' indicates not to create root volume that is specified in 'raid_config'. Default value is 'True'.", 'required': False}, 'delete_existing': {'description': "Setting this to 'True' indicates to delete existing RAID configuration prior to creating the new configuration. Default value is 'True'.", 'required': False}, 'raid_config': {'description': 'The RAID configuration to apply.', 'required': True}}
apply_configuration(task, raid_config, create_root_volume=True, create_nonroot_volumes=False)[source]

Applies RAID configuration on the given node.

Parameters:
  • task – A TaskManager instance.

  • raid_config – The RAID configuration to apply.

  • create_root_volume – Setting this to False indicates not to create root volume that is specified in raid_config. Default value is True.

  • create_nonroot_volumes – Setting this to False indicates not to create non-root volumes (all except the root volume) in raid_config. Default value is True.

  • delete_existing – Setting this to True indicates to delete RAID configuration prior to creating the new configuration.

Raises:

InvalidParameterValue, if the RAID configuration is invalid.

Returns:

states.DEPLOYWAIT if RAID configuration is in progress asynchronously or None if it is complete.

create_configuration(task, create_root_volume=True, create_nonroot_volumes=True, delete_existing=False)[source]

Create a RAID configuration.

This method creates a RAID configuration on the given node.

Parameters:
  • task – a TaskManager instance.

  • create_root_volume – If True, a root volume is created during RAID configuration. Otherwise, no root volume is created. Default is True.

  • create_nonroot_volumes – If True, non-root volumes are created. If False, no non-root volumes are created. Default is True.

  • delete_existing – Setting this to True indicates to delete RAID configuration prior to creating the new configuration. Default is False.

Raises:

MissingParameterValue, if node.target_raid_config is missing or empty after skipping root volume and/or non-root volumes.

Raises:

IBMCError, on failure to execute step.

delete_configuration(task)[source]

Delete the RAID configuration.

Parameters:

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

Returns:

states.CLEANWAIT if cleaning operation in progress asynchronously or states.DEPLOYWAIT if deploy operation in progress synchronously or None if it is completed.

Raises:

IBMCError, on failure to execute step.

get_properties()[source]

Return the properties of the interface.

Returns:

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

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.