iBMC RAID configuration specific methods
ironic.drivers.modules.ibmc.raid.
IbmcRAID
[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: |
|
---|---|
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: |
|
---|---|
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. |
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.