d8a0cf5815
As the size of our deploy ramdisk would continue to increase (Ironic Python Agent) we need a more reliable way to transfer such data via the network without relying on TFTP. The problem with TFTP is that it's unreliable and any transmission error will result consequently in boot problems. This patch adds support for iPXE so that we have the ability to transfer data through HTTP which is a reliable protocol. New configuration options added to the 'pxe' group: - ipxe_enabled: Whether iPXE is enabled or not - ipxe_boot_script: The path to the main iPXE script file - http_url: The HTTP server URL - http_root: The HTTP root path Two functions from pxe.py were renamed because they are not related only to tftp anymore: - _get_tftp_image_info renamed to _get_image_info - _cache_tftp_images renamed to _cache_ramdisk_kernel (because that's what this function is about, it fetchs the kernels and ramdisks associated with the image, not the image itself) Implements: blueprint ipxe-boot Change-Id: I8dc7640a19374a9c4d687877ea6c0ff1ebc13979