public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: "'Cedric Hombourger' via isar-users" <isar-users@googlegroups.com>
To: isar-users@googlegroups.com
Cc: Cedric Hombourger <cedric.hombourger@siemens.com>
Subject: [PATCH 2/4] CI: add smoke-tests for switch to dracut in isar-image-ci
Date: Sat,  1 Nov 2025 12:13:15 +0100	[thread overview]
Message-ID: <20251101111326.600581-3-cedric.hombourger@siemens.com> (raw)
In-Reply-To: <20251101111326.600581-1-cedric.hombourger@siemens.com>

Use IMAGE_PREINSTALL to install dracut in the isar-image-ci
image and verify that it builds and boots. We also check that
a dracut-shutdown service is active (as an indication that
the system was booted using a dracut initrd). A single test
is provided as well as cross-{machine,distro} tests.

Signed-off-by: Cedric Hombourger <cedric.hombourger@siemens.com>
---
 testsuite/citest.py | 58 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 58 insertions(+)

diff --git a/testsuite/citest.py b/testsuite/citest.py
index a1214e9c..23900a6c 100755
--- a/testsuite/citest.py
+++ b/testsuite/citest.py
@@ -278,6 +278,64 @@ class KernelTests(CIBaseTest):
         self.perform_build_test(targets, image_install=' '.join(modules), lines=lines)
 
 
+class InitRdBaseTest(CIBaseTest):
+    """
+    Helper class for InitRd build tests
+    """
+
+    DRACUT_CONF = [
+        "IMAGE_PREINSTALL:append = ' dracut'",
+        "IMAGE_INSTALL:remove = 'enable-fsck'",
+    ]
+
+    def dracut_in_image(self, targets):
+        machine = 'qemuamd64'
+        distro = 'bookworm'
+        image = 'isar-image-ci'
+        self.init()
+        self.perform_build_test(targets, lines=InitRdBaseTest.DRACUT_CONF)
+
+        for target in targets:
+            config = target.split(':')
+            machine = config[1].split('-')[0]
+            distro = config[1].split('-')[1]
+            image = config[2]
+
+            # systems booted via a dracut initrd have a dracut-shutdown service
+            # check its presence
+            self.vm_start(
+                machine.removeprefix('qemu'), distro, image=image,
+                cmd="systemctl is-active dracut-shutdown"
+            )
+
+
+class InitRdTest(InitRdBaseTest):
+    """
+    Tests for initrd generation
+    :avocado: tags=initrd,single,full
+    """
+
+    def test_dracut_in_image(self):
+        """Test switch to dracut in an image recipe."""
+        self.dracut_in_image(['mc:qemuamd64-bookworm:isar-image-ci'])
+
+
+class InitRdCrossTests(InitRdBaseTest):
+    """
+    Tests for initrd generation
+    :avocado: tags=initrd,full
+    """
+
+    def test_dracut_in_image(self):
+        """Test switch to dracut in an image recipe."""
+        self.dracut_in_image([
+            'mc:qemuamd64-bookworm:isar-image-ci',
+            'mc:qemuamd64-trixie:isar-image-ci',
+            'mc:qemuarm64-bookworm:isar-image-ci',
+            'mc:qemuarm64-trixie:isar-image-ci'
+        ])
+
+
 class WicTest(CIBaseTest):
 
     """
-- 
2.47.3

-- 
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/20251101111326.600581-3-cedric.hombourger%40siemens.com.

  parent reply	other threads:[~2025-11-01 11:13 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-01 11:13 [PATCH 0/4] Add test-cases for dracut-based initrds 'Cedric Hombourger' via isar-users
2025-11-01 11:13 ` [PATCH 1/4] CI: support negative build tests 'Cedric Hombourger' via isar-users
2025-11-01 11:13 ` 'Cedric Hombourger' via isar-users [this message]
2025-11-01 11:13 ` [PATCH 3/4] CI: add build tests for isar-dracut initrd images 'Cedric Hombourger' via isar-users
2025-11-01 11:13 ` [PATCH 4/4] CI: check if the build fails when dracut fails 'Cedric Hombourger' via isar-users

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251101111326.600581-3-cedric.hombourger@siemens.com \
    --to=isar-users@googlegroups.com \
    --cc=cedric.hombourger@siemens.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox