Skip to content

Commit d23f7e1

Browse files
committed
tests: try dracut on Debian too
It isn't default there, but it is available, so test it too. QubesOS/qubes-issues#8649
1 parent 039b7d3 commit d23f7e1

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

qubes/tests/integ/grub.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
class GrubBase(object):
3333
virt_mode = None
3434
kernel = None
35+
force_dracut = False
3536

3637
def setUp(self):
3738
super(GrubBase, self).setUp()
@@ -44,9 +45,12 @@ def setUp(self):
4445
self.skipTest(
4546
"Template {} not supported by this test".format(self.template)
4647
)
48+
if "dracut" in self.id() and not self.template.startswith("debian-"):
49+
self.skipTest("dracut already tested in default test for Fedora")
4750

4851
def install_packages(self, vm):
4952
if self.template.startswith("fedora-"):
53+
assert not self.force_dracut, "Fedora uses dracut by default already"
5054
cmd_install1 = (
5155
"dnf clean expire-cache && "
5256
"dnf install -y qubes-kernel-vm-support grub2-tools"
@@ -59,6 +63,9 @@ def install_packages(self, vm):
5963
"qubes-kernel-vm-support grub2-common"
6064
)
6165
cmd_install2 = "apt-get install -y linux-image-amd64"
66+
if self.force_dracut:
67+
cmd_install1 += " dracut"
68+
cmd_install2 += " && dracut -f"
6269
cmd_update_grub = "mkdir -p /boot/grub && update-grub2"
6370
else:
6471
assert False, "Unsupported template?!"
@@ -177,6 +184,14 @@ def test_010_template_based_vm(self):
177184

178185
self.assertXenScrubPagesEnabled(self.test_template)
179186

187+
def test_001_standalone_vm_dracut(self):
188+
self.force_dracut = True
189+
self.test_000_standalone_vm()
190+
191+
def test_011_template_based_vm_dracut(self):
192+
self.force_dracut = True
193+
self.test_010_template_based_vm()
194+
180195

181196
@unittest.skipUnless(
182197
os.path.exists("/var/lib/qubes/vm-kernels/pvgrub2"),

0 commit comments

Comments
 (0)