virt-manager/virt-manager-virtinst-rework-get_boot_order.patch
Pavel Hrdina e349f3e9b2 virt-manager-5.1.0-2.el10
- virtinst: interface: add support for backend.hostname and backend.fqdn (RHEL-95370)
- maint: use constants instead of strings for boot devices (RHEL-71842)
- virtinst: rework get_boot_order (RHEL-71842)
- virtinst: guest: introduce can_use_device_boot_order (RHEL-71842)
- virtinst: remove legacy attribute from set_boot_order/get_boot_order (RHEL-71842)
- installer: add support to use device boot order (RHEL-71842)

Resolves: RHEL-71842, RHEL-95370
2025-12-04 19:19:39 +01:00

63 lines
2.1 KiB
Diff

From 1b9a11574c1f613d706a610dfa81ef511b65e4ed Mon Sep 17 00:00:00 2001
Message-ID: <1b9a11574c1f613d706a610dfa81ef511b65e4ed.1764872379.git.phrdina@redhat.com>
From: Pavel Hrdina <phrdina@redhat.com>
Date: Thu, 30 Oct 2025 15:38:26 +0100
Subject: [PATCH] virtinst: rework get_boot_order
From: Pavel Hrdina <phrdina@redhat.com>
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
(cherry picked from commit 25670b2ee8a31f4d66c75a5bd7f27bc742d1e545)
https://issues.redhat.com/browse/RHEL-71842
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
---
virtinst/guest.py | 15 +++------------
1 file changed, 3 insertions(+), 12 deletions(-)
diff --git a/virtinst/guest.py b/virtinst/guest.py
index b790a9c8d..a9fbecaec 100644
--- a/virtinst/guest.py
+++ b/virtinst/guest.py
@@ -439,15 +439,11 @@ class Guest(XMLBuilder):
# Bootorder helpers #
#####################
- def _get_old_boot_order(self):
- return self.os.bootorder
-
- def _convert_old_boot_order(self):
+ def _convert_old_boot_order(self, boot_order):
"""Converts the old boot order (e.g. <boot dev='hd'/>) into the
per-device boot order format.
"""
- boot_order = self._get_old_boot_order()
ret = []
disk = None
cdrom = None
@@ -486,18 +482,13 @@ class Guest(XMLBuilder):
continue
order.append((dev.get_xml_id(), dev.boot.order))
- if not order:
- # No devices individually marked bootable, convert traditional
- # boot XML to fine grained
- return self._convert_old_boot_order()
-
order.sort(key=lambda p: p[1])
return [p[0] for p in order]
def get_boot_order(self, legacy=False):
if legacy:
- return self._get_old_boot_order()
- return self._get_device_boot_order()
+ return self.os.bootorder
+ return self._get_device_boot_order() or self._convert_old_boot_order(self.os.bootorder)
def _set_device_boot_order(self, boot_order):
"""Sets the new device boot order for the domain"""
--
2.52.0