From c921c077d482eba20ff1864b52eafe5b26d0caa2 Mon Sep 17 00:00:00 2001 From: Julia Kreger Date: Tue, 26 Jul 2022 07:40:24 -0700 Subject: [PATCH] Fix ilo boot interface order This change aligns the boot interface order of the ilo hardware type to match the other hardware type interface order lists. This change is a result of an operator reporting inconsistent behavior of ironic when they are adding nodes using the ilo hardware type, where they would default to use the "pxe" boot interface, where as the other interfaces would end up defaulting to "ipxe". Change-Id: I3d848af284545a7a1fb1e065f09fe2df6a9114ac --- ironic/drivers/ilo.py | 2 +- ...boot-interface-order-238a2da9933cf28c.yaml | 26 +++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 releasenotes/notes/fix-ilo-boot-interface-order-238a2da9933cf28c.yaml diff --git a/ironic/drivers/ilo.py b/ironic/drivers/ilo.py index 10676b4112..d8bbafb9ee 100644 --- a/ironic/drivers/ilo.py +++ b/ironic/drivers/ilo.py @@ -37,7 +37,7 @@ class IloHardware(generic.GenericHardware): @property def supported_boot_interfaces(self): """List of supported boot interfaces.""" - return [boot.IloVirtualMediaBoot, boot.IloPXEBoot, boot.IloiPXEBoot] + return [boot.IloVirtualMediaBoot, boot.IloiPXEBoot, boot.IloPXEBoot] @property def supported_bios_interfaces(self): diff --git a/releasenotes/notes/fix-ilo-boot-interface-order-238a2da9933cf28c.yaml b/releasenotes/notes/fix-ilo-boot-interface-order-238a2da9933cf28c.yaml new file mode 100644 index 0000000000..586ea6b825 --- /dev/null +++ b/releasenotes/notes/fix-ilo-boot-interface-order-238a2da9933cf28c.yaml @@ -0,0 +1,26 @@ +--- +fixes: + - | + Fixes the default boot interface order for the ``ilo`` hardware type + where previously it would prefer ``pxe`` over ``ipxe``. This created + inconsistencies for operators using multiple hardware types, where + both interfaces were enabled in the deployment. +upgrade: + - | + Operators who are upgrading should be aware that a bug was discovered + with the automatic selection of ``boot_interface`` for users of the + ``ilo`` and ``ilo5`` hardware types. This was an inconsistency, + resulting in ``pxe`` being selected instead of ``ipxe`` if both + boot interfaces were enabled. Depending on the local configuration, + this may, or may not have happened and will remain static on + preexisting baremetal nodes. Some users may have been relying + upon this incorrect behavior by having misalligned defaults by trying + to use the ``pxe`` interface for ``ipxe``. Users wishing to continue + this usage as it was previously will need to explicitly set a + ``boot_interface`` value to either ``pxe`` or ``ilo-ipxe`` by default, + depending on the local configuration. Most operators have leveraged + the default examples, and thus did not explicitly encounter this + condition. Operators explicitly wishing to use ``pxe`` boot interfaces + with the ``ipxe`` templates and defaults set to override the defaults + for ``ironic.conf`` will need to either continue to leverage default + override configurations in their ``ironic.conf`` file.