ironic.drivers.modules.pxe module

ironic.drivers.modules.pxe module

PXE Boot Interface

class ironic.drivers.modules.pxe.PXEBoot[source]

Bases: ironic.drivers.modules.pxe_base.PXEBaseMixin, ironic.drivers.base.BootInterface

capabilities = ['iscsi_volume_boot', 'ramdisk_boot', 'ipxe_boot', 'pxe_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 unlinks the instance kernel/ramdisk in node’s directory in tftproot and removes the PXE config.

Parameters:task – a task from TaskManager.
Returns:None
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.

Parameters:task – a task from TaskManager.
Returns:None
prepare_ramdisk(task, ramdisk_params)[source]

Prepares the boot of Ironic ramdisk using PXE.

This method prepares the boot of the deploy or rescue kernel/ramdisk after reading relevant information from the node’s driver_info and instance_info.

Parameters:
  • task – a task from TaskManager.
  • ramdisk_params – the parameters to be passed to the ramdisk. pxe driver passes these parameters as kernel command-line arguments.
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.

validate(task)[source]

Validate the PXE-specific info for booting deploy/instance images.

This method validates the PXE-specific info for booting the ramdisk and instance on the node. If invalid, raises an exception; otherwise returns None.

Parameters:task – a task from TaskManager.
Returns:None
Raises:InvalidParameterValue, if some parameters are invalid.
Raises:MissingParameterValue, if some required parameters are missing.
class ironic.drivers.modules.pxe.PXERamdiskDeploy[source]

Bases: ironic.drivers.modules.agent.AgentDeploy

deploy(task)[source]

Perform a deployment to a node.

Perform the necessary work to deploy an image onto the specified node. This method will be called after prepare(), which may have already performed any preparatory steps, such as pre-caching some data for the node.

Parameters:task – a TaskManager instance.
Returns:status of the deploy. One of ironic.common.states.
prepare(task)[source]

Prepare the deployment environment for this node.

Parameters:task – a TaskManager instance.
Raises:NetworkError: if the previous cleaning ports cannot be removed or if new cleaning ports cannot be created.
Raises:InvalidParameterValue when the wrong power state is specified or the wrong driver info is specified for power management.
Raises:StorageError If the storage driver is unable to attach the configured volumes.
Raises:other exceptions by the node’s power driver if something wrong occurred during the power action.
Raises:exception.ImageRefValidationFailed if image_source is not Glance href and is not HTTP(S) URL.
Raises:exception.InvalidParameterValue if network validation fails.
Raises:any boot interface’s prepare_ramdisk exceptions.
validate(task)[source]

Validate the driver-specific Node deployment info.

This method validates whether the properties of the supplied node contain the required information for this driver to deploy images to the node.

Parameters:task – a TaskManager instance
Raises:MissingParameterValue, if any of the required parameters are missing.
Raises:InvalidParameterValue, if any of the parameters have invalid value.
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.