Boot Interface for iLO drivers and its supporting methods.
ironic.drivers.modules.ilo.boot.
IloPXEBoot
[source]¶Bases: ironic.drivers.modules.pxe.PXEBoot
clean_up_instance
(task)[source]¶Cleans up the boot of instance.
This method cleans up the PXE environment that was setup for booting the instance. It unlinks the instance kernel/ramdisk in the node’s directory in tftproot and removes it’s PXE config. In case of UEFI iSCSI booting, it cleans up iSCSI target information from the node.
Parameters: | task – a task from TaskManager. |
---|---|
Returns: | None |
Raises: | IloOperationError, if some operation on iLO failed. |
prepare_instance
(task)[source]¶Prepares the boot of instance.
This method prepares the boot of the instance after reading relevant information from the node’s instance_info. In case of netboot, it updates the dhcp entries and switches the PXE config. In case of localboot, it cleans up the PXE config. In case of ‘boot from volume’, it updates the iSCSI info onto iLO and sets the node to boot from ‘UefiTarget’ boot device.
Parameters: | task – a task from TaskManager. |
---|---|
Returns: | None |
Raises: | IloOperationError, if some operation on iLO failed. |
prepare_ramdisk
(task, ramdisk_params)[source]¶Prepares the boot of Ironic ramdisk using PXE.
This method prepares the boot of the deploy or rescue ramdisk after reading relevant information from the node’s driver_info and instance_info.
Parameters: |
|
---|---|
Returns: | None |
Raises: | MissingParameterValue, if some information is missing in node’s driver_info or instance_info. |
Raises: | InvalidParameterValue, if some information provided is invalid. |
Raises: | IronicException, if some power or set boot boot device operation failed on the node. |
Raises: | IloOperationError, if some operation on iLO failed. |
ironic.drivers.modules.ilo.boot.
IloVirtualMediaBoot
[source]¶Bases: ironic.drivers.base.BootInterface
capabilities
= ['iscsi_volume_boot', 'ramdisk_boot']¶clean_up_instance
(task)[source]¶Cleans up the boot of instance.
This method cleans up the environment that was setup for booting the instance. It ejects virtual media. In case of UEFI iSCSI booting, it cleans up iSCSI target information from the node.
Parameters: | task – a task from TaskManager. |
---|---|
Returns: | None |
Raises: | IloOperationError, if some operation on iLO failed. |
clean_up_ramdisk
(task)[source]¶Cleans up the boot of ironic ramdisk.
This method cleans up virtual media devices setup for the deploy or rescue ramdisk.
Parameters: | task – a task from TaskManager. |
---|---|
Returns: | None |
Raises: | IloOperationError, if some operation on iLO failed. |
get_properties
()[source]¶Return the properties of the interface.
Returns: | dictionary of <property name>:<property description> entries. |
---|
prepare_instance
(task)[source]¶Prepares the boot of instance.
This method prepares the boot of the instance after reading relevant information from the node’s instance_info. It does the following depending on boot_option for deploy:
Parameters: | task – a task from TaskManager. |
---|---|
Returns: | None |
Raises: | IloOperationError, if some operation on iLO failed. |
Raises: | InstanceDeployFailure, if its try to boot iSCSI volume in ‘BIOS’ boot mode. |
prepare_ramdisk
(task, ramdisk_params)[source]¶Prepares the boot of deploy ramdisk using virtual media.
This method prepares the boot of the deploy or rescue ramdisk after reading relevant information from the node’s driver_info and instance_info.
Parameters: |
|
---|---|
Returns: | None |
Raises: | MissingParameterValue, if some information is missing in node’s driver_info or instance_info. |
Raises: | InvalidParameterValue, if some information provided is invalid. |
Raises: | IronicException, if some power or set boot boot device operation failed on the node. |
Raises: | IloOperationError, if some operation on iLO failed. |
validate
(task)[source]¶Validate the deployment information for the task’s node.
Parameters: | task – a TaskManager instance containing the node to act on. |
---|---|
Raises: | InvalidParameterValue, if some information is invalid. |
Raises: | MissingParameterValue if ‘kernel_id’ and ‘ramdisk_id’ are missing in the Glance image or ‘kernel’ and ‘ramdisk’ not provided in instance_info for non-Glance image. |
ironic.drivers.modules.ilo.boot.
disable_secure_boot_if_supported
(task)[source]¶Disables secure boot on node, does not throw if its not supported.
Parameters: | task – a TaskManager instance containing the node to act on. |
---|---|
Raises: | IloOperationError, if some operation on iLO failed. |
ironic.drivers.modules.ilo.boot.
parse_driver_info
(node, mode='deploy')[source]¶Gets the driver specific Node deployment info.
This method validates whether the ‘driver_info’ property of the supplied node contains the required information for this driver to deploy images to the node.
Parameters: |
|
---|---|
Returns: | A dict with the driver_info values. |
Raises: | MissingParameterValue, if any of the required parameters are missing. |
ironic.drivers.modules.ilo.boot.
prepare_node_for_deploy
(task)[source]¶Common preparatory steps for all iLO drivers.
This method performs common preparatory steps required for all drivers. 1. Power off node 2. Disables secure boot, if it is in enabled state. 3. Updates boot_mode capability to ‘uefi’ if secure boot is requested. 4. Changes boot mode of the node if secure boot is disabled currently.
Parameters: | task – a TaskManager instance containing the node to act on. |
---|---|
Raises: | IloOperationError, if some operation on iLO failed. |
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.