ironic.drivers.modules.ibmc.raid module

iBMC RAID configuration specific methods

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

Bases: ironic.drivers.base.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.