From patchwork Thu Jan 23 09:52:17 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felix Moessbauer X-Patchwork-Id: 4025 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 23 Jan 2025 10:53:05 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-lf1-f61.google.com (mail-lf1-f61.google.com [209.85.167.61]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50N9r4T3006423 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 23 Jan 2025 10:53:04 +0100 Received: by mail-lf1-f61.google.com with SMTP id 2adb3069b0e04-5412ceadaa3sf351260e87.3 for ; Thu, 23 Jan 2025 01:53:04 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737625978; cv=pass; d=google.com; s=arc-20240605; b=jTodGpptGB0a+kLDIATbkwW7TJlcBXpIp/1VQrEfps/TeH15kM7U3I4Dp+PKDh8Zvp lp1dU69i6mSNGICcyaLc/7SzDPr2GDSSRdikoVpXybr8r0SoNNox6R8f/jBcw4WI1alA VW5dWplPZaLVgTA1DCL99l977ZSmm4WJLwKMvQvJb0iU27rx8f/p9uWlHknW3zFw5Uq6 v4K6h0Lv7F39L3dYmPI7OwsPPnwzfjsJwIUuHpRYpp2sGaOGAtwOncVz+wShkgU9lSW9 etjHvys3Uott9mCDv31uhxPr6nwEL1qqFY0VcEDd8M4UtPFtKcCs3Uh3eQZOpTgdhp8A XfrQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=UEN8MwJuTpWxauR3DNJOburJd6sjm8i183TRwo1IHM0=; fh=XoPRqOAxH/CP4snufdabujDyq+t1U3hjexb3uYvo164=; b=gcXCKgbdOiQmqL4r35ZCDz/07YFKXN2s9yEqXQJMn3MQI/8rbfFcO7Vo3OPvSnwZ/R MHgt1VanLnZiHUpH7IY2J2/YPppBbpVe1yvj8HCbWO8b24gQAehjp72qxO0fIspWcjQJ pnUZAmXllSg8wxp5RK6uS9aHgcKSq1u7KwW916RVNAld/1avj0Qne03YKEHrOVkFxjcn hlZ2NeGs/QB2GGacQzhxTeHMR+nR4mJ5O3/a3NdP6LTfsiQAHeCGWKtz9Sc5zYWTmZ7w OrQ5bDNeb22fHN7hEitz8SeR8oFG5ISl6lej9G25UvlP0S9SIqltYIWBjiSdWhKzByPU aGrQ==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=Zg3GoOhx; spf=pass (google.com: domain of fm-1321639-202501230952532f30dda32fcdeb4b56-_j6nvc@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) smtp.mailfrom=fm-1321639-202501230952532f30dda32fcdeb4b56-_J6NVc@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1737625978; x=1738230778; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=UEN8MwJuTpWxauR3DNJOburJd6sjm8i183TRwo1IHM0=; b=eRRfl5Dhw88Xg9gw45Ipi92O9DKkxRqnMpBV3U9+TxHSAXEgS3SPU2DfRiIbslbVd/ 0kYsJxU/2UMdzt0CJR8OmxUs85YqvI2fz7Zo7zVQ+jQtqbPZaz8iHg71Co/ZCB8qGHd2 rz814FTbhxIajRl6zFzQqj0by1LQFaGwSIyooyp7WMn9QSQ/NSPqe5KO8ROAO2HkaPG5 jNRTUCmVYCnHJu/cgonD/XGAEYGSPAFBDBjv8EH5wfEBzXciA4JrHdZFr0gQytf9AIwl 6aVQ4EJx4AthverGOYXZD+Nzf2QN+cXXzB4hBTowxMU05LfxPShla01hcBd0iQ1oBF3E nbOg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737625978; x=1738230778; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=UEN8MwJuTpWxauR3DNJOburJd6sjm8i183TRwo1IHM0=; b=X8OPP4ztarzDpkzGrF9S1c1lzgAPXnwEbz2h+0ym3mRacwKUO28ANJUVnbrNnZQjso 889rTP3uEXt+MK+rsA2LeSEvYV1JR3HxyUBZgMAXpEy9E+MsMZchKkduJknHmlwqwF+O pzOU72vOFUYi9aXjTVHj5Gmam/KTzVvVIF6+pFvyBap5lXCNFjA7875OZdRw+pPExA1f cjPDIt8j8klR07lzPaV+9TTr0CDYcre6TDW9F8NRKIyucTS4oS5UST2gpG0aQSBYnyWv BaaI+QTY4iisexyyZljcFFl9kzIyOluKopLh2qOu6EWoDMk3/9JcZrAjBVpUetjyuzPg 1hsw== X-Forwarded-Encrypted: i=2; AJvYcCXn/eHSJj7cQPCqr0dMpN8laLwEj4LH0DEvHtPMx2PLj/uVDfTroYXZuWpyRQI5bS6AKfd0EsE=@isar-build.org X-Gm-Message-State: AOJu0YyWFvqBBQbiQq3boFCKEtoR/Y6V+b3AQbaBUje0kWwkbpONQHLq pJlW1RBq67dtA4Xx0EjGlt7YE2C7ARYaQZ2d2r4TKnkUYDeD7uCn X-Google-Smtp-Source: AGHT+IHBbJg2qvstcX2ZVCFOvT7Dh23C7mHkjbSOqZPCzwNZZ0qQF+trbU8JH+eydY5J5lozpz1G/g== X-Received: by 2002:a05:6512:12ca:b0:542:24c8:e062 with SMTP id 2adb3069b0e04-5439c2877d2mr9481664e87.44.1737625977969; Thu, 23 Jan 2025 01:52:57 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:ac2:4e6b:0:b0:541:1c48:8c0a with SMTP id 2adb3069b0e04-543c23dff88ls47747e87.0.-pod-prod-05-eu; Thu, 23 Jan 2025 01:52:55 -0800 (PST) X-Received: by 2002:a05:651c:896:b0:306:10d6:28b3 with SMTP id 38308e7fff4ca-3072ca5da94mr100850521fa.1.1737625974964; Thu, 23 Jan 2025 01:52:54 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737625974; cv=none; d=google.com; s=arc-20240605; b=b3mQxlo0LaRz0TM5f6iJteNa9s8c8hKIlCPsqUbt4I4HPZjC0KEMTJmWDSBoDLlci+ t0Qhenlw7jb1p2HhxTl7fl69bP99WddHB0bQB90+SlLn8nWv3rV5zOePSUN4jtHOJvLu j2Fsd5GX4+yF6Uzwu5VgFYJ04x2pmLTCY2BuoR+aED6/w+IhSR7YE9o+ExScTkX2s7LM 2pBbJTVdwO9IdWeU0eXsD6p8rYPWoK8/4puhGt4ezHsfQ1mW9Ys1c2XdifOmlSBPQvQR /5Vkdrm7hhjLlZsfDJyeSKwyKt3Cv1PmaQ6LAmVzl+O2hBCx22wGAzp7V94ZUAvcd689 5apw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=Vs3Qj/nDeJBb10g5eS8UIX3z8arm/0gf4ijoqNpaK4M=; fh=Bo8ZbdhPy/JbmTSxHxcgeG9JPAXIanSEMBVfErZw+70=; b=H2rsP/TXF7BKbygrcdAGTNaOfGuhQPMNDTER7TF0f+uzoI9P2g82vYjvSQorcs4yaL Y7wyKbIMZXjvsXj3TVJuccOLyvtpMeQcibwNaTYSBMhraPDSYAuUEMl7rwIM1OOIUnJl F/WqHkwIAanfeYLMaw0NcGuizGaltuqxHWvWoooNfIPILKy0nh3tUIeAWQFUpuyLZpnU JsvxcA9jcC7Uzy8oxKZOZ13Nxto0G8RvFkR1VLnat4PJYpIqqSAuFW46U00o1TmiTtK1 cLcq2i5qy5g1XBfEOwtoQIIe5UDaYlDStK7m3TeddEN3PVhlPQha3WOoW2tTJdWumoXw OTKg==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=Zg3GoOhx; spf=pass (google.com: domain of fm-1321639-202501230952532f30dda32fcdeb4b56-_j6nvc@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) smtp.mailfrom=fm-1321639-202501230952532f30dda32fcdeb4b56-_J6NVc@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-227.siemens.flowmailer.net (mta-65-227.siemens.flowmailer.net. [185.136.65.227]) by gmr-mx.google.com with ESMTPS id 38308e7fff4ca-3072a4b31c6si2862721fa.8.2025.01.23.01.52.54 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 23 Jan 2025 01:52:54 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1321639-202501230952532f30dda32fcdeb4b56-_j6nvc@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) client-ip=185.136.65.227; Received: by mta-65-227.siemens.flowmailer.net with ESMTPSA id 202501230952532f30dda32fcdeb4b56 for ; Thu, 23 Jan 2025 10:52:54 +0100 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: Felix Moessbauer To: isar-users@googlegroups.com Cc: clara.kowalsky@siemens.com, florian.bezdeka@siemens.com, jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH v2 1/7] Import isoimage-isohybrid from oe Date: Thu, 23 Jan 2025 10:52:17 +0100 Message-Id: <20250123095223.2928575-2-felix.moessbauer@siemens.com> In-Reply-To: <20250123095223.2928575-1-felix.moessbauer@siemens.com> References: <20250123095223.2928575-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1321639:519-21489:flowmailer X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=Zg3GoOhx; spf=pass (google.com: domain of fm-1321639-202501230952532f30dda32fcdeb4b56-_j6nvc@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) smtp.mailfrom=fm-1321639-202501230952532f30dda32fcdeb4b56-_J6NVc@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= OE-core Revision: b85a09ea450a5e8f49418f4a930805fbb88dc83b Signed-off-by: Felix Moessbauer --- .../plugins/source/isoimage-isohybrid-isar.py | 461 ++++++++++++++++++ 1 file changed, 461 insertions(+) create mode 100644 meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py diff --git a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py new file mode 100644 index 00000000..afc9ea0f --- /dev/null +++ b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py @@ -0,0 +1,461 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# +# DESCRIPTION +# This implements the 'isoimage-isohybrid' source plugin class for 'wic' +# +# AUTHORS +# Mihaly Varga + +import glob +import logging +import os +import re +import shutil + +from wic import WicError +from wic.engine import get_custom_config +from wic.pluginbase import SourcePlugin +from wic.misc import exec_cmd, exec_native_cmd, get_bitbake_var + +logger = logging.getLogger('wic') + +class IsoImagePlugin(SourcePlugin): + """ + Create a bootable ISO image + + This plugin creates a hybrid, legacy and EFI bootable ISO image. The + generated image can be used on optical media as well as USB media. + + Legacy boot uses syslinux and EFI boot uses grub or gummiboot (not + implemented yet) as bootloader. The plugin creates the directories required + by bootloaders and populates them by creating and configuring the + bootloader files. + + Example kickstart file: + part /boot --source isoimage-isohybrid --sourceparams="loader=grub-efi, \\ + image_name= IsoImage" --ondisk cd --label LIVECD + bootloader --timeout=10 --append=" " + + In --sourceparams "loader" specifies the bootloader used for booting in EFI + mode, while "image_name" specifies the name of the generated image. In the + example above, wic creates an ISO image named IsoImage-cd.direct (default + extension added by direct imeger plugin) and a file named IsoImage-cd.iso + """ + + name = 'isoimage-isohybrid' + + @classmethod + def do_configure_syslinux(cls, creator, cr_workdir): + """ + Create loader-specific (syslinux) config + """ + splash = os.path.join(cr_workdir, "ISO/boot/splash.jpg") + if os.path.exists(splash): + splashline = "menu background splash.jpg" + else: + splashline = "" + + bootloader = creator.ks.bootloader + + syslinux_conf = "" + syslinux_conf += "PROMPT 0\n" + syslinux_conf += "TIMEOUT %s \n" % (bootloader.timeout or 10) + syslinux_conf += "\n" + syslinux_conf += "ALLOWOPTIONS 1\n" + syslinux_conf += "SERIAL 0 115200\n" + syslinux_conf += "\n" + if splashline: + syslinux_conf += "%s\n" % splashline + syslinux_conf += "DEFAULT boot\n" + syslinux_conf += "LABEL boot\n" + + kernel = get_bitbake_var("KERNEL_IMAGETYPE") + if get_bitbake_var("INITRAMFS_IMAGE_BUNDLE") == "1": + if get_bitbake_var("INITRAMFS_IMAGE"): + kernel = "%s-%s.bin" % \ + (get_bitbake_var("KERNEL_IMAGETYPE"), get_bitbake_var("INITRAMFS_LINK_NAME")) + + syslinux_conf += "KERNEL /" + kernel + "\n" + syslinux_conf += "APPEND initrd=/initrd LABEL=boot %s\n" \ + % bootloader.append + + logger.debug("Writing syslinux config %s/ISO/isolinux/isolinux.cfg", + cr_workdir) + + with open("%s/ISO/isolinux/isolinux.cfg" % cr_workdir, "w") as cfg: + cfg.write(syslinux_conf) + + @classmethod + def do_configure_grubefi(cls, part, creator, target_dir): + """ + Create loader-specific (grub-efi) config + """ + configfile = creator.ks.bootloader.configfile + if configfile: + grubefi_conf = get_custom_config(configfile) + if grubefi_conf: + logger.debug("Using custom configuration file %s for grub.cfg", + configfile) + else: + raise WicError("configfile is specified " + "but failed to get it from %s", configfile) + else: + splash = os.path.join(target_dir, "splash.jpg") + if os.path.exists(splash): + splashline = "menu background splash.jpg" + else: + splashline = "" + + bootloader = creator.ks.bootloader + + grubefi_conf = "" + grubefi_conf += "serial --unit=0 --speed=115200 --word=8 " + grubefi_conf += "--parity=no --stop=1\n" + grubefi_conf += "default=boot\n" + grubefi_conf += "timeout=%s\n" % (bootloader.timeout or 10) + grubefi_conf += "\n" + grubefi_conf += "search --set=root --label %s " % part.label + grubefi_conf += "\n" + grubefi_conf += "menuentry 'boot'{\n" + + kernel = get_bitbake_var("KERNEL_IMAGETYPE") + if get_bitbake_var("INITRAMFS_IMAGE_BUNDLE") == "1": + if get_bitbake_var("INITRAMFS_IMAGE"): + kernel = "%s-%s.bin" % \ + (get_bitbake_var("KERNEL_IMAGETYPE"), get_bitbake_var("INITRAMFS_LINK_NAME")) + + grubefi_conf += "linux /%s rootwait %s\n" \ + % (kernel, bootloader.append) + grubefi_conf += "initrd /initrd \n" + grubefi_conf += "}\n" + + if splashline: + grubefi_conf += "%s\n" % splashline + + cfg_path = os.path.join(target_dir, "grub.cfg") + logger.debug("Writing grubefi config %s", cfg_path) + + with open(cfg_path, "w") as cfg: + cfg.write(grubefi_conf) + + @staticmethod + def _build_initramfs_path(rootfs_dir, cr_workdir): + """ + Create path for initramfs image + """ + + initrd = get_bitbake_var("INITRD_LIVE") or get_bitbake_var("INITRD") + if not initrd: + initrd_dir = get_bitbake_var("DEPLOY_DIR_IMAGE") + if not initrd_dir: + raise WicError("Couldn't find DEPLOY_DIR_IMAGE, exiting.") + + image_name = get_bitbake_var("IMAGE_BASENAME") + if not image_name: + raise WicError("Couldn't find IMAGE_BASENAME, exiting.") + + image_type = get_bitbake_var("INITRAMFS_FSTYPES") + if not image_type: + raise WicError("Couldn't find INITRAMFS_FSTYPES, exiting.") + + machine = os.path.basename(initrd_dir) + + pattern = '%s/%s*%s.%s' % (initrd_dir, image_name, machine, image_type) + files = glob.glob(pattern) + if files: + initrd = files[0] + + if not initrd or not os.path.exists(initrd): + # Create initrd from rootfs directory + initrd = "%s/initrd.cpio.gz" % cr_workdir + initrd_dir = "%s/INITRD" % cr_workdir + shutil.copytree("%s" % rootfs_dir, \ + "%s" % initrd_dir, symlinks=True) + + if os.path.isfile("%s/init" % rootfs_dir): + shutil.copy2("%s/init" % rootfs_dir, "%s/init" % initrd_dir) + elif os.path.lexists("%s/init" % rootfs_dir): + os.symlink(os.readlink("%s/init" % rootfs_dir), \ + "%s/init" % initrd_dir) + elif os.path.isfile("%s/sbin/init" % rootfs_dir): + shutil.copy2("%s/sbin/init" % rootfs_dir, \ + "%s" % initrd_dir) + elif os.path.lexists("%s/sbin/init" % rootfs_dir): + os.symlink(os.readlink("%s/sbin/init" % rootfs_dir), \ + "%s/init" % initrd_dir) + else: + raise WicError("Couldn't find or build initrd, exiting.") + + exec_cmd("cd %s && find . | cpio -o -H newc -R root:root >%s/initrd.cpio " \ + % (initrd_dir, cr_workdir), as_shell=True) + exec_cmd("gzip -f -9 %s/initrd.cpio" % cr_workdir, as_shell=True) + shutil.rmtree(initrd_dir) + + return initrd + + @classmethod + def do_configure_partition(cls, part, source_params, creator, cr_workdir, + oe_builddir, bootimg_dir, kernel_dir, + native_sysroot): + """ + Called before do_prepare_partition(), creates loader-specific config + """ + isodir = "%s/ISO/" % cr_workdir + + if os.path.exists(isodir): + shutil.rmtree(isodir) + + install_cmd = "install -d %s " % isodir + exec_cmd(install_cmd) + + # Overwrite the name of the created image + logger.debug(source_params) + if 'image_name' in source_params and \ + source_params['image_name'].strip(): + creator.name = source_params['image_name'].strip() + logger.debug("The name of the image is: %s", creator.name) + + @staticmethod + def _install_payload(source_params, iso_dir): + """ + Copies contents of payload directory (as specified in 'payload_dir' param) into iso_dir + """ + + if source_params.get('payload_dir'): + payload_dir = source_params['payload_dir'] + + logger.debug("Payload directory: %s", payload_dir) + shutil.copytree(payload_dir, iso_dir, symlinks=True, dirs_exist_ok=True) + + @classmethod + def do_prepare_partition(cls, part, source_params, creator, cr_workdir, + oe_builddir, bootimg_dir, kernel_dir, + rootfs_dir, native_sysroot): + """ + Called to do the actual content population for a partition i.e. it + 'prepares' the partition to be incorporated into the image. + In this case, prepare content for a bootable ISO image. + """ + + isodir = "%s/ISO" % cr_workdir + + cls._install_payload(source_params, isodir) + + if part.rootfs_dir is None: + if not 'ROOTFS_DIR' in rootfs_dir: + raise WicError("Couldn't find --rootfs-dir, exiting.") + rootfs_dir = rootfs_dir['ROOTFS_DIR'] + else: + if part.rootfs_dir in rootfs_dir: + rootfs_dir = rootfs_dir[part.rootfs_dir] + elif part.rootfs_dir: + rootfs_dir = part.rootfs_dir + else: + raise WicError("Couldn't find --rootfs-dir=%s connection " + "or it is not a valid path, exiting." % + part.rootfs_dir) + + if not os.path.isdir(rootfs_dir): + rootfs_dir = get_bitbake_var("IMAGE_ROOTFS") + if not os.path.isdir(rootfs_dir): + raise WicError("Couldn't find IMAGE_ROOTFS, exiting.") + + part.rootfs_dir = rootfs_dir + deploy_dir = get_bitbake_var("DEPLOY_DIR_IMAGE") + img_iso_dir = get_bitbake_var("ISODIR") + + # Remove the temporary file created by part.prepare_rootfs() + if os.path.isfile(part.source_file): + os.remove(part.source_file) + + # Support using a different initrd other than default + if source_params.get('initrd'): + initrd = source_params['initrd'] + if not deploy_dir: + raise WicError("Couldn't find DEPLOY_DIR_IMAGE, exiting") + cp_cmd = "cp %s/%s %s" % (deploy_dir, initrd, cr_workdir) + exec_cmd(cp_cmd) + else: + # Prepare initial ramdisk + initrd = "%s/initrd" % deploy_dir + if not os.path.isfile(initrd): + initrd = "%s/initrd" % img_iso_dir + if not os.path.isfile(initrd): + initrd = cls._build_initramfs_path(rootfs_dir, cr_workdir) + + install_cmd = "install -m 0644 %s %s/initrd" % (initrd, isodir) + exec_cmd(install_cmd) + + # Remove the temporary file created by _build_initramfs_path function + if os.path.isfile("%s/initrd.cpio.gz" % cr_workdir): + os.remove("%s/initrd.cpio.gz" % cr_workdir) + + kernel = get_bitbake_var("KERNEL_IMAGETYPE") + if get_bitbake_var("INITRAMFS_IMAGE_BUNDLE") == "1": + if get_bitbake_var("INITRAMFS_IMAGE"): + kernel = "%s-%s.bin" % \ + (get_bitbake_var("KERNEL_IMAGETYPE"), get_bitbake_var("INITRAMFS_LINK_NAME")) + + install_cmd = "install -m 0644 %s/%s %s/%s" % \ + (kernel_dir, kernel, isodir, kernel) + exec_cmd(install_cmd) + + #Create bootloader for efi boot + try: + target_dir = "%s/EFI/BOOT" % isodir + if os.path.exists(target_dir): + shutil.rmtree(target_dir) + + os.makedirs(target_dir) + + if source_params['loader'] == 'grub-efi': + # Builds bootx64.efi/bootia32.efi if ISODIR didn't exist or + # didn't contains it + target_arch = get_bitbake_var("TARGET_SYS") + if not target_arch: + raise WicError("Coludn't find target architecture") + + if re.match("x86_64", target_arch): + grub_src_image = "grub-efi-bootx64.efi" + grub_dest_image = "bootx64.efi" + elif re.match('i.86', target_arch): + grub_src_image = "grub-efi-bootia32.efi" + grub_dest_image = "bootia32.efi" + else: + raise WicError("grub-efi is incompatible with target %s" % + target_arch) + + grub_target = os.path.join(target_dir, grub_dest_image) + if not os.path.isfile(grub_target): + grub_src = os.path.join(deploy_dir, grub_src_image) + if not os.path.exists(grub_src): + raise WicError("Grub loader %s is not found in %s. " + "Please build grub-efi first" % (grub_src_image, deploy_dir)) + shutil.copy(grub_src, grub_target) + + if not os.path.isfile(os.path.join(target_dir, "boot.cfg")): + cls.do_configure_grubefi(part, creator, target_dir) + + else: + raise WicError("unrecognized bootimg-efi loader: %s" % + source_params['loader']) + except KeyError: + raise WicError("bootimg-efi requires a loader, none specified") + + # Create efi.img that contains bootloader files for EFI booting + # if ISODIR didn't exist or didn't contains it + if os.path.isfile("%s/efi.img" % img_iso_dir): + install_cmd = "install -m 0644 %s/efi.img %s/efi.img" % \ + (img_iso_dir, isodir) + exec_cmd(install_cmd) + else: + # Default to 100 blocks of extra space for file system overhead + esp_extra_blocks = int(source_params.get('esp_extra_blocks', '100')) + + du_cmd = "du -bks %s/EFI" % isodir + out = exec_cmd(du_cmd) + blocks = int(out.split()[0]) + blocks += esp_extra_blocks + logger.debug("Added 100 extra blocks to %s to get to %d " + "total blocks", part.mountpoint, blocks) + + # dosfs image for EFI boot + bootimg = "%s/efi.img" % isodir + + esp_label = source_params.get('esp_label', 'EFIimg') + + dosfs_cmd = 'mkfs.vfat -n \'%s\' -S 512 -C %s %d' \ + % (esp_label, bootimg, blocks) + exec_native_cmd(dosfs_cmd, native_sysroot) + + mmd_cmd = "mmd -i %s ::/EFI" % bootimg + exec_native_cmd(mmd_cmd, native_sysroot) + + mcopy_cmd = "mcopy -i %s -s %s/EFI/* ::/EFI/" \ + % (bootimg, isodir) + exec_native_cmd(mcopy_cmd, native_sysroot) + + chmod_cmd = "chmod 644 %s" % bootimg + exec_cmd(chmod_cmd) + + # Prepare files for legacy boot + syslinux_dir = get_bitbake_var("STAGING_DATADIR") + if not syslinux_dir: + raise WicError("Couldn't find STAGING_DATADIR, exiting.") + + if os.path.exists("%s/isolinux" % isodir): + shutil.rmtree("%s/isolinux" % isodir) + + install_cmd = "install -d %s/isolinux" % isodir + exec_cmd(install_cmd) + + cls.do_configure_syslinux(creator, cr_workdir) + + install_cmd = "install -m 444 %s/syslinux/ldlinux.sys " % syslinux_dir + install_cmd += "%s/isolinux/ldlinux.sys" % isodir + exec_cmd(install_cmd) + + install_cmd = "install -m 444 %s/syslinux/isohdpfx.bin " % syslinux_dir + install_cmd += "%s/isolinux/isohdpfx.bin" % isodir + exec_cmd(install_cmd) + + install_cmd = "install -m 644 %s/syslinux/isolinux.bin " % syslinux_dir + install_cmd += "%s/isolinux/isolinux.bin" % isodir + exec_cmd(install_cmd) + + install_cmd = "install -m 644 %s/syslinux/ldlinux.c32 " % syslinux_dir + install_cmd += "%s/isolinux/ldlinux.c32" % isodir + exec_cmd(install_cmd) + + #create ISO image + iso_img = "%s/tempiso_img.iso" % cr_workdir + iso_bootimg = "isolinux/isolinux.bin" + iso_bootcat = "isolinux/boot.cat" + efi_img = "efi.img" + + mkisofs_cmd = "mkisofs -V %s " % part.label + mkisofs_cmd += "-o %s -U " % iso_img + mkisofs_cmd += "-J -joliet-long -r -iso-level 2 -b %s " % iso_bootimg + mkisofs_cmd += "-c %s -no-emul-boot -boot-load-size 4 " % iso_bootcat + mkisofs_cmd += "-boot-info-table -eltorito-alt-boot " + mkisofs_cmd += "-eltorito-platform 0xEF -eltorito-boot %s " % efi_img + mkisofs_cmd += "-no-emul-boot %s " % isodir + + logger.debug("running command: %s", mkisofs_cmd) + exec_native_cmd(mkisofs_cmd, native_sysroot) + + shutil.rmtree(isodir) + + du_cmd = "du -Lbks %s" % iso_img + out = exec_cmd(du_cmd) + isoimg_size = int(out.split()[0]) + + part.size = isoimg_size + part.source_file = iso_img + + @classmethod + def do_install_disk(cls, disk, disk_name, creator, workdir, oe_builddir, + bootimg_dir, kernel_dir, native_sysroot): + """ + Called after all partitions have been prepared and assembled into a + disk image. In this case, we insert/modify the MBR using isohybrid + utility for booting via BIOS from disk storage devices. + """ + + iso_img = "%s.p1" % disk.path + full_path = creator._full_path(workdir, disk_name, "direct") + full_path_iso = creator._full_path(workdir, disk_name, "iso") + + isohybrid_cmd = "isohybrid -u %s" % iso_img + logger.debug("running command: %s", isohybrid_cmd) + exec_native_cmd(isohybrid_cmd, native_sysroot) + + # Replace the image created by direct plugin with the one created by + # mkisofs command. This is necessary because the iso image created by + # mkisofs has a very specific MBR is system area of the ISO image, and + # direct plugin adds and configures an another MBR. + logger.debug("Replaceing the image created by direct plugin\n") + os.remove(disk.path) + shutil.copy2(iso_img, full_path_iso) + shutil.copy2(full_path_iso, full_path) From patchwork Thu Jan 23 09:52:18 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felix Moessbauer X-Patchwork-Id: 4024 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 23 Jan 2025 10:53:05 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-lf1-f58.google.com (mail-lf1-f58.google.com [209.85.167.58]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50N9r4m7006430 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 23 Jan 2025 10:53:04 +0100 Received: by mail-lf1-f58.google.com with SMTP id 2adb3069b0e04-53f167e95e6sf354977e87.1 for ; Thu, 23 Jan 2025 01:53:04 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737625979; cv=pass; d=google.com; s=arc-20240605; b=KPWJYamOpiP8/v8YIg/XDu4wkoF/wSngOqtT1f3sncQ/JFq4zQ4CTCdwv0Jo8cCae3 mZpJszveT4rUT6bb7qE24R7qGGsZYnK1rSVnqH5qCyH00ZhhgROdAeEfM6Yockoj1Tnc DhiT/i52gzFkzDRdMtDjZcgSuFAWwauHcqzny1YCARqsGdtlSC53y3cJD0eMoahC3qZm PYI0tinAYRHAbrahrGnCPtMxY4pjjMX1sX3HmuG5Svng1t5xU0A3bXJMMHejwqSqSu1t 8pVoyM9jl/z1SoBuKns6SKErYpvSJt9uoitDXG8Lh6+zhFCfuQBBAzw446/VOTEw84ii AQjA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=S6v3l3SAB/HSHqAbMjXlhcj2G2IKDERDFv7gNVrjCnQ=; fh=tlinZKX7US6tm41pJ29bpYNDJOkjX4T7eygwWmggMVA=; b=cw3a/okOFhIuhM2U+A1+HFiuKIWe30nwBgq5u2jIBUDHGxVGA+Knj7YEVqNbs8DF40 eHa9dmQg2+hTFGrwBCZUeRxa67jFI3oTAteeP0Gr9C0cEXe7EjlH035tdXhh6XbYSQnH wv9eRhb9RqDGjwiVzlLh2lIPufEm+ntdKy1gIHgnKcNVO8uVpiK6jBehqJlB6/IS9B1B /Z7oXbKdxis/niUS1hhkfDosF7MKWZNeppRntiWlcX2UlXbCTyoER0rl6wl+wcaF7v4e V+ONr7MisnMiAXPPZIjquq/3hrQx/fyHWadZ+2nZ14g7zVC9xVnPkrtA3kA3j5c0jPIP yvyg==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=IUbDi8Ix; spf=pass (google.com: domain of fm-1321639-202501230952543ebc5d2d231fee7be0-rs8ysc@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1321639-202501230952543ebc5d2d231fee7be0-Rs8ySC@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1737625979; x=1738230779; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=S6v3l3SAB/HSHqAbMjXlhcj2G2IKDERDFv7gNVrjCnQ=; b=XD12Ms+lC9sTQG/ZzB0+7XGmn0yWG1jrr+ItyoVlIcku1tvgHKk9X/1Nx46owetr+F gB/TwbnvtWYsKh+Nn+Q08XaPzrtNjr9LAy4UdTk8wCSTeuuMRmLWtwAoC7eArL3jIGJ7 48pg7z9dnd5QlYosojq5VrEjpn/lNkmrLlKEun4AbxfazzkiAYBrZdGlmFqgMbd/sb/P /HIYitalfagzgW8KsHfNZuUk3MeEK1zJYMb8u4+aXBNRBoRTNp4kY/oxKzwn81SxYO31 u6d1PcTulIE+KBGSVe4EoeIMsvvyBkEh3RopyUJNCVkP/2a/jInGPTUTHIgOmtlLpzdP FLbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737625979; x=1738230779; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=S6v3l3SAB/HSHqAbMjXlhcj2G2IKDERDFv7gNVrjCnQ=; b=eUyd43WG1IOo3Bu9oeLYM62ymmkX2otnzAosORFO9/Hw5/nLLI6xXsZvj+WbEdZ7a9 1lAzGXB1k+5X5r81Kwq2C2t8lUzpBo/3AwWsWOKN8jE4uLAZ3ACELL1ctWrs2k2z3JFB WPZ8W+kZroPg4gOYUUiZtDeG5teb1Tie87bODilxBoI63PREi5i6AMaJsJPI7gPD5+jz x60/uAVmSQHPKtG8cIrALB0x9MCLDgqoQAzvanDiR++BbK/kkRHwaOFTbpDgXT51s8uD VSYWY4i/TNY30XENxnyukcf1eU/vDuEK3QuvdIUt7FrDFc45d7YEJ82cwGDTTfohgt70 Epcw== X-Forwarded-Encrypted: i=2; AJvYcCW/lP6Z6R2DieoegnQ4AZGsWphMB8uMCa4JB1IJDJrxkk12Y3ZZCkSRJE12LYwVsnPmXQpfa7Q=@isar-build.org X-Gm-Message-State: AOJu0YxAVd6E/z8ZQNlZTHcxLc/6bAFT6FDXyBD7Ck9p6Zgk+ASevASY nM69FLpSjl6hlKdArf6ocQ8SOQju+b94clt2a9BHMbKji2xiAKGj X-Google-Smtp-Source: AGHT+IE9kN+FyHsIZQW6o65XV6a5sPlsxLBEGzY8udsmcqZApCbNsD+UvkE/pnOJ97rfc0tC/laFsQ== X-Received: by 2002:a05:6512:908:b0:542:2e05:313b with SMTP id 2adb3069b0e04-543c2248e44mr795592e87.21.1737625977627; Thu, 23 Jan 2025 01:52:57 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a19:6456:0:b0:543:9a60:e55e with SMTP id 2adb3069b0e04-543c23e5c03ls118311e87.0.-pod-prod-00-eu; Thu, 23 Jan 2025 01:52:55 -0800 (PST) X-Received: by 2002:ac2:414e:0:b0:542:28af:816 with SMTP id 2adb3069b0e04-543c22302d7mr786952e87.20.1737625975030; Thu, 23 Jan 2025 01:52:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737625975; cv=none; d=google.com; s=arc-20240605; b=fNSIKJk00pwL3qzHTSwpu1SnBSmSIfJyiYDCfs6ji1uhOzDGwao6t02SCY7Qlu7pjI Mm+WzVJndw8hKFBQ6bH8GWyCsQlzINNB30R4oW0wR37RHqRi7SInuZk8T9QCWN7N9ngb 6pVwzCv4mfdfYngzy7BLxzeIeai9jsiwv2ZlSfaAPxmbXJMN71/MLOAJ40NVbq7gilYB WEL+r56XvL0HvcfcLqysr0m4rYAYIEDF9YzQpyY6boXoT+4vVVVk1dV33+d3o9lw01qO 1u+5g+uAFrk8yIShzU5QQEIPPNXqrBL1kqKsjNMvZ/jCTKw8hrwKAujHsYYsDopk5Qu4 KRpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=ZbLOhl80gbV2bSiuY9N4dAptMeBobewG3bgfOi83Q14=; fh=Bo8ZbdhPy/JbmTSxHxcgeG9JPAXIanSEMBVfErZw+70=; b=ljTMzgF5s1XF3pm6fXQGYbVaCS2nqgffCKyMztawLQkMwbm/J0Gtp/Hrz04/0at42H NovdQm1fiy9u0lITowgwajfctHxp7/s3suDAmcm8Koq9JVpre84aAxITiY/8mqGoB2PR r0xCiLNdnMrWmnmoEgF1G/AKeXktgb5b2Vr2Qgz1d9JWrnBmGqQzAl/Qvg+1uz0o6fnm O3ZKMYA9pWKYKsulvgu6r4D6KhkorKDOgn89X8nHikrwNNHCtHEGSglUA2e7EJPMmrv1 CD5SEsgBRCOE6MJJSeoKvpUbTd7FUS2H/hVqa2yqMlUtln7RBMJtn/eX83sLYDski45g 1u/Q==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=IUbDi8Ix; spf=pass (google.com: domain of fm-1321639-202501230952543ebc5d2d231fee7be0-rs8ysc@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1321639-202501230952543ebc5d2d231fee7be0-Rs8ySC@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-227.siemens.flowmailer.net (mta-64-227.siemens.flowmailer.net. [185.136.64.227]) by gmr-mx.google.com with ESMTPS id 2adb3069b0e04-5439af04b4bsi361903e87.1.2025.01.23.01.52.54 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 23 Jan 2025 01:52:54 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1321639-202501230952543ebc5d2d231fee7be0-rs8ysc@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) client-ip=185.136.64.227; Received: by mta-64-227.siemens.flowmailer.net with ESMTPSA id 202501230952543ebc5d2d231fee7be0 for ; Thu, 23 Jan 2025 10:52:54 +0100 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: Felix Moessbauer To: isar-users@googlegroups.com Cc: clara.kowalsky@siemens.com, florian.bezdeka@siemens.com, jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH v2 2/7] wic: add ISAR version of isohybrid-efi plugin Date: Thu, 23 Jan 2025 10:52:18 +0100 Message-Id: <20250123095223.2928575-3-felix.moessbauer@siemens.com> In-Reply-To: <20250123095223.2928575-1-felix.moessbauer@siemens.com> References: <20250123095223.2928575-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1321639:519-21489:flowmailer X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=IUbDi8Ix; spf=pass (google.com: domain of fm-1321639-202501230952543ebc5d2d231fee7be0-rs8ysc@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-1321639-202501230952543ebc5d2d231fee7be0-Rs8ySC@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= This adds support to generate a hybrid grub-efi + syslinux ISO9660 image. The patch is written in an add-only style to simplify updates of the upstream plugin. Signed-off-by: Felix Moessbauer --- .../plugins/source/isoimage-isohybrid-isar.py | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py index afc9ea0f..b46527b8 100644 --- a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py +++ b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py @@ -18,6 +18,12 @@ from wic.engine import get_custom_config from wic.pluginbase import SourcePlugin from wic.misc import exec_cmd, exec_native_cmd, get_bitbake_var +# allow plugins to import from isarpluginbase +if '__file__' in globals(): + import sys + sys.path.append(os.path.dirname(os.path.abspath(__file__)) + "/..") +from isarpluginbase import (isar_get_filenames, isar_populate_boot_cmd) + logger = logging.getLogger('wic') class IsoImagePlugin(SourcePlugin): @@ -44,6 +50,7 @@ class IsoImagePlugin(SourcePlugin): """ name = 'isoimage-isohybrid' + name = 'isoimage-isohybrid-isar' @classmethod def do_configure_syslinux(cls, creator, cr_workdir): @@ -71,6 +78,9 @@ class IsoImagePlugin(SourcePlugin): syslinux_conf += "LABEL boot\n" kernel = get_bitbake_var("KERNEL_IMAGETYPE") + kernel, initrd = isar_get_filenames( + get_bitbake_var("IMAGE_ROOTFS"), get_bitbake_var("KERNEL_FILE") + ) if get_bitbake_var("INITRAMFS_IMAGE_BUNDLE") == "1": if get_bitbake_var("INITRAMFS_IMAGE"): kernel = "%s-%s.bin" % \ @@ -80,6 +90,13 @@ class IsoImagePlugin(SourcePlugin): syslinux_conf += "APPEND initrd=/initrd LABEL=boot %s\n" \ % bootloader.append + # replace initrd with correct one + if initrd: + syslinux_conf = syslinux_conf.replace( + "initrd=/initrd", "initrd=/%s" % initrd) + else: + raise WicError("Couldn't find initrd, exiting.") + logger.debug("Writing syslinux config %s/ISO/isolinux/isolinux.cfg", cr_workdir) @@ -125,9 +142,23 @@ class IsoImagePlugin(SourcePlugin): kernel = "%s-%s.bin" % \ (get_bitbake_var("KERNEL_IMAGETYPE"), get_bitbake_var("INITRAMFS_LINK_NAME")) + kernel, initrd = isar_get_filenames( + get_bitbake_var("IMAGE_ROOTFS"), get_bitbake_var("KERNEL_FILE") + ) + + bootloader.append = bootloader.append or "" grubefi_conf += "linux /%s rootwait %s\n" \ % (kernel, bootloader.append) grubefi_conf += "initrd /initrd \n" + grubefi_conf = '\n'.join(grubefi_conf.splitlines()[:-1]) + '\n' + + if initrd: + initrds = initrd.split(';') + grubefi_conf += "initrd" + for rd in initrds: + grubefi_conf += " /%s" % rd + grubefi_conf += "\n" + grubefi_conf += "}\n" if splashline: @@ -156,12 +187,14 @@ class IsoImagePlugin(SourcePlugin): raise WicError("Couldn't find IMAGE_BASENAME, exiting.") image_type = get_bitbake_var("INITRAMFS_FSTYPES") + image_type = image_type or "img" if not image_type: raise WicError("Couldn't find INITRAMFS_FSTYPES, exiting.") machine = os.path.basename(initrd_dir) pattern = '%s/%s*%s.%s' % (initrd_dir, image_name, machine, image_type) + pattern = '%s/%s-%s-initrd.%s' % (initrd_dir, image_name, machine, image_type) files = glob.glob(pattern) if files: initrd = files[0] @@ -227,6 +260,12 @@ class IsoImagePlugin(SourcePlugin): logger.debug("Payload directory: %s", payload_dir) shutil.copytree(payload_dir, iso_dir, symlinks=True, dirs_exist_ok=True) + if source_params.get('payload'): + payload = source_params.get('payload') + + logger.debug("Payload: %s", payload) + os.mkdir('%s/live' % iso_dir) + shutil.copy(payload, '%s/live' % iso_dir) @classmethod def do_prepare_partition(cls, part, source_params, creator, cr_workdir, @@ -299,6 +338,7 @@ class IsoImagePlugin(SourcePlugin): install_cmd = "install -m 0644 %s/%s %s/%s" % \ (kernel_dir, kernel, isodir, kernel) + install_cmd = isar_populate_boot_cmd(rootfs_dir, isodir) exec_cmd(install_cmd) #Create bootloader for efi boot @@ -313,19 +353,46 @@ class IsoImagePlugin(SourcePlugin): # Builds bootx64.efi/bootia32.efi if ISODIR didn't exist or # didn't contains it target_arch = get_bitbake_var("TARGET_SYS") + distro_arch = get_bitbake_var("DISTRO_ARCH") + if distro_arch == "amd64": + target_arch = "x86_64" + else: + target_arch = distro_arch + if not target_arch: raise WicError("Coludn't find target architecture") if re.match("x86_64", target_arch): + grub_target = "x86_64-efi" grub_src_image = "grub-efi-bootx64.efi" grub_dest_image = "bootx64.efi" + grub_modules = "multiboot efi_uga iorw ata " + if get_bitbake_var("DISTRO").startswith("ubuntu") and \ + os.path.exists('/usr/lib/grub/x86_64-efi/linuxefi.mod'): + grub_modules += "linuxefi " elif re.match('i.86', target_arch): + grub_target = "i386-efi" grub_src_image = "grub-efi-bootia32.efi" grub_dest_image = "bootia32.efi" + grub_modules = "multiboot efi_uga iorw ata " else: raise WicError("grub-efi is incompatible with target %s" % target_arch) + if not os.path.isfile("%s/%s" \ + % (target_dir, grub_dest_image)): + grub_cmd = "grub-mkimage -p /EFI/BOOT " + grub_cmd += "-O %s -o %s/%s " \ + % (grub_target, target_dir, grub_dest_image) + grub_cmd += "part_gpt part_msdos ntfs ntfscomp fat ext2 " + grub_cmd += "normal chain boot configfile linux " + grub_cmd += "search efi_gop font gfxterm gfxmenu " + grub_cmd += "terminal minicmd test loadenv echo help " + grub_cmd += "reboot serial terminfo iso9660 loopback tar " + grub_cmd += "memdisk ls search_fs_uuid udf btrfs xfs lvm " + grub_cmd += "reiserfs regexp " + grub_modules + exec_cmd(grub_cmd) + grub_target = os.path.join(target_dir, grub_dest_image) if not os.path.isfile(grub_target): grub_src = os.path.join(deploy_dir, grub_src_image) @@ -393,18 +460,23 @@ class IsoImagePlugin(SourcePlugin): cls.do_configure_syslinux(creator, cr_workdir) install_cmd = "install -m 444 %s/syslinux/ldlinux.sys " % syslinux_dir + # different name in Debian + install_cmd = "install -m 444 %s/syslinux/modules/bios/ldlinux.c32 " % syslinux_dir install_cmd += "%s/isolinux/ldlinux.sys" % isodir exec_cmd(install_cmd) install_cmd = "install -m 444 %s/syslinux/isohdpfx.bin " % syslinux_dir + install_cmd = install_cmd.replace('/syslinux/', '/ISOLINUX/') install_cmd += "%s/isolinux/isohdpfx.bin" % isodir exec_cmd(install_cmd) install_cmd = "install -m 644 %s/syslinux/isolinux.bin " % syslinux_dir + install_cmd = install_cmd.replace('/syslinux/', '/ISOLINUX/') install_cmd += "%s/isolinux/isolinux.bin" % isodir exec_cmd(install_cmd) install_cmd = "install -m 644 %s/syslinux/ldlinux.c32 " % syslinux_dir + install_cmd = install_cmd.replace('/syslinux/', '/syslinux/modules/bios/') install_cmd += "%s/isolinux/ldlinux.c32" % isodir exec_cmd(install_cmd) @@ -415,6 +487,8 @@ class IsoImagePlugin(SourcePlugin): efi_img = "efi.img" mkisofs_cmd = "mkisofs -V %s " % part.label + # use xorriso from Debian + mkisofs_cmd = "xorriso -as mkisofs -V %s " % part.label mkisofs_cmd += "-o %s -U " % iso_img mkisofs_cmd += "-J -joliet-long -r -iso-level 2 -b %s " % iso_bootimg mkisofs_cmd += "-c %s -no-emul-boot -boot-load-size 4 " % iso_bootcat From patchwork Thu Jan 23 09:52:19 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felix Moessbauer X-Patchwork-Id: 4028 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 23 Jan 2025 10:53:11 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-lf1-f60.google.com (mail-lf1-f60.google.com [209.85.167.60]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50N9rAGe006616 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 23 Jan 2025 10:53:11 +0100 Received: by mail-lf1-f60.google.com with SMTP id 2adb3069b0e04-5401a22a82bsf356420e87.0 for ; Thu, 23 Jan 2025 01:53:11 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737625984; cv=pass; d=google.com; s=arc-20240605; b=kFR4Vsb2Fx7D4VoDmhU86SGy4dcg+y3Y3y/32e1gS8Zt8Oodkuu2QvJr/1XVm/yWLq bpzOuXdWOsBZprPGwqC6PrJDcR3YIjOYbHHjfdoMxdIctekCCxniGRnjCMY2BpcuYMy+ BZ9uBIQvmCBI4NM2XXXinzCni0McwOJjCihUnJTbmf1ldE7qb1Lv58DoaTFTf40clLdf IhzuubjGk1wwBf8cni5kIH0EBms6k6G43SHV2Y1FzdmbWEWAaHd/bSb4zIXIWPYSMmsO o4C31ri52I0dTmULbWZT/xnXAY2kCLbKrdRp+vAW3KakYth/uvX85ZNlZC+PE2yxlZ8k I5Rw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=fUuLPLQbmrmPzyovuaGuOip2PIBe0tsWh9YmD14G2lo=; fh=rXVQzrn5LvlL3XlVKKbNPYHeLG1XJJVXjCKZeGgnP9I=; b=PqvQabArSmQc7ThQCO3SubuL0i5UAQ5v+SjLQ6MYCYJMWHSPcp/IhO7VyS5h/0L8b4 NfE0LCwSqObCTEpCdxVGRgl+gGw+RzOYnZxx9gWoKLa0/qbw3tJQGtXcRUNzTZaHuVC/ dhfXQeQQzy2HqNyCDA9POgrgoD4ky1XV5W4KRLV0yjyMq7U9zQwjlFNsVa0b2iA/mUdU sIm8Obbj8xLIIMkj/zj+Gox2It81+8Up8fNwc+7SHrnYWj5LZKXz0FKMn0PVtYG1pTV6 RRr8gzURGKSFdRBaQfl6TUCT7TgbiBrn+Zego3vXiO6m89zvm+8e/lEfcsERb1qjUJVY EPBA==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=aiqr5RaY; spf=pass (google.com: domain of fm-1321639-2025012309525969e0efb871c48b3a98-iwjfsw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1321639-2025012309525969e0efb871c48b3a98-iWJfSW@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1737625984; x=1738230784; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=fUuLPLQbmrmPzyovuaGuOip2PIBe0tsWh9YmD14G2lo=; b=w4uAeYepza1kunKF7rjvBhcQSL2VJsKVmQiBYLpm4TLqJr8CoVCN9sBqoqn7eG/FlS LQkH+hy8Doa5g1kJ2OBSyJxQgGsNWF63zdKK2lXYYkALVeGcLfbOHv14sAP1Ee6Hdy1+ sim85Xt8SSEplkTWSF3045Jsew6khUfnG8JmVB4hxvZTmBmR7H5/3v/5k2vK5nNS4e2K bRiniC1HKvkZlYV7z0drDpNeaphpxay9SpUjTikdWymwXOdEE2tqneJNqyMEZ4WQs3HB YiepZExIZdK8xHqgwr5agSsPYC3PyOssjYn4h4GiFQlS6+qGwyTaq/8P0+M3qrrSYamH XoYA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737625984; x=1738230784; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=fUuLPLQbmrmPzyovuaGuOip2PIBe0tsWh9YmD14G2lo=; b=jjMyFOr+y8I0xwuHD0IBxOyxJnXP4Vmz2IPkxJ8ch3RTF6aKt754Vo1AadTORlPAXs 6n5AIiMQDkDbIEEC0LmBa0G9DfHSJ37Q6LfwO7+v1UVH1ZYQLLEHWajeUlt6fE8hyyai uLnzu8qqZq757oyZmxGGMnf5wup12uDtU9rJ5zf3yxgZ3g67YXwndd9JBeEtwLhHzhce T/imRYsgyWnUuw6Ih71/j+xpnDUawertl10wY6uCnHXiZ9nUMGrgGLubW13uy+U9HoP7 F+sBn/8wYK+v/JG5OYYerkgBs6eu4RcaYLloUgUcs0+nA5aJ6g8dPhlC5U6txDsAtRFS +VKg== X-Forwarded-Encrypted: i=2; AJvYcCWuoqUEZEZtwit8PbBov3qTtyUHZJUNGdhJFPAsvYAr9p1ozBZquLLV7WcxbtgRewZ2j4AsNPQ=@isar-build.org X-Gm-Message-State: AOJu0YyGn2Ciy4ZkJ3pi0GCmGhJz81KTjT1X8VxU8P3cMs0w1Pg+D2/J esq/BbOtR/fEtRUMsFBQFIodWg84D6B8leCedoR1Cb7kBfRr7EzU X-Google-Smtp-Source: AGHT+IEbu0GoNkkz3s7RteU7thExBeIT3i31VyZxYPbWcjf86ljWvBwcRMj9MtfFR7c2LY3foa14cg== X-Received: by 2002:ac2:5541:0:b0:542:1137:611a with SMTP id 2adb3069b0e04-5439c2461bamr7232608e87.17.1737625983325; Thu, 23 Jan 2025 01:53:03 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a19:9113:0:b0:540:1bb1:781a with SMTP id 2adb3069b0e04-543c23dc834ls162780e87.0.-pod-prod-09-eu; Thu, 23 Jan 2025 01:53:01 -0800 (PST) X-Received: by 2002:a05:6512:3d90:b0:540:251b:fe09 with SMTP id 2adb3069b0e04-5439c2462b5mr8916095e87.19.1737625980635; Thu, 23 Jan 2025 01:53:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737625980; cv=none; d=google.com; s=arc-20240605; b=Qz9IssxJbn8v7MIb8ccUHRE8bo+rgkpOvZGwAVoIpmahWvMlWh/1PHK2oPSCkox7E9 EwKv7AIEyrf+NEYKbcN/YA+1vHpjAO+SacqJsmGplD3l31VMIwHQB2obHjoT29dZ1lC3 1aRr4UDBjlqf7MkyMzBfOMrZUOhv0sIR+7Jxx4vBmubbYw4C2JTW1KkAon+UNiEIg/U8 LsUWyXxF2I30uhDcgipDUug4MRz/x3Clbmm1qebJ8pRCRTRUB1RE86EjOVDXxX7hgfl5 tnEa67Q/m8nc8roKr0aaqJ9C3KmNKshmoAtCPfVDZQARH7ienWZoggSpGuL8LCNgFofF R8dQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=tJmIxvEtLArcxaSvByPmQqHuMZ9WIYVSQSctXgJ+GDk=; fh=Bo8ZbdhPy/JbmTSxHxcgeG9JPAXIanSEMBVfErZw+70=; b=heDbtIOOjWd7aqPusd2ef/oDdyD9xKd07izCILg0i2x/NSnUHZ0SD5MrWktJJsu5hg ZBBv1JkQusYieYMfMWlC9tDuwb5U47OA/1qngUbydIV0FedgPKGMMYhAM8fTs3ND/ycA ibG/Km4eVJarhmz1eWwKqwZn4h8mzO7sxdne0uI+nV8HDMJmXRVUIoC031yV/wYgzkrW Jxcvl2MEOV6LzlkNfkszOMcnJ5yrouGCfhLT+iWlMdrSw/xdKnFFyEMTR50o4VPeZw9i V3u9Rw+Nn8vf4Qf9fDYBFUaQGXO+/+xEKCYVEBhO62BhvWloPIHRtlLPxc6NKobarTgW rVyQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=aiqr5RaY; spf=pass (google.com: domain of fm-1321639-2025012309525969e0efb871c48b3a98-iwjfsw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1321639-2025012309525969e0efb871c48b3a98-iWJfSW@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-225.siemens.flowmailer.net (mta-65-225.siemens.flowmailer.net. [185.136.65.225]) by gmr-mx.google.com with ESMTPS id 2adb3069b0e04-5439adca9dcsi349789e87.0.2025.01.23.01.53.00 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 23 Jan 2025 01:53:00 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1321639-2025012309525969e0efb871c48b3a98-iwjfsw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) client-ip=185.136.65.225; Received: by mta-65-225.siemens.flowmailer.net with ESMTPSA id 2025012309525969e0efb871c48b3a98 for ; Thu, 23 Jan 2025 10:52:59 +0100 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: Felix Moessbauer To: isar-users@googlegroups.com Cc: clara.kowalsky@siemens.com, florian.bezdeka@siemens.com, jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH v2 3/7] move squashfs imagetype class from CIP to ISAR Date: Thu, 23 Jan 2025 10:52:19 +0100 Message-Id: <20250123095223.2928575-4-felix.moessbauer@siemens.com> In-Reply-To: <20250123095223.2928575-1-felix.moessbauer@siemens.com> References: <20250123095223.2928575-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1321639:519-21489:flowmailer X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=aiqr5RaY; spf=pass (google.com: domain of fm-1321639-2025012309525969e0efb871c48b3a98-iwjfsw@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1321639-2025012309525969e0efb871c48b3a98-iWJfSW@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= As a preparation for live images, we move the squashfs class from isar-cip-core to ISAR and register it as always included. ISAR-cip-core revision: 0e85378341fb7b37cf95b1c910ca0260cf4f5cf4 Signed-off-by: Felix Moessbauer --- meta-isar/classes/squashfs.bbclass | 47 ++++++++++++++++++++++++++++++ meta/classes/image.bbclass | 2 +- 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 meta-isar/classes/squashfs.bbclass diff --git a/meta-isar/classes/squashfs.bbclass b/meta-isar/classes/squashfs.bbclass new file mode 100644 index 00000000..9cd7ed3d --- /dev/null +++ b/meta-isar/classes/squashfs.bbclass @@ -0,0 +1,47 @@ +# squashfs image rootfs +# +# This software is a part of ISAR. +# Copyright (C) Siemens AG, 2021-2025 +# +# SPDX-License-Identifier: MIT + +def get_free_mem(): + try: + with open('/proc/meminfo') as meminfo: + lines = meminfo.readlines() + for line in lines: + if line.startswith('MemAvailable:'): + return int(line.split()[1]) * 1024 + except FileNotFoundError: + pass + return 4*1024*1024*1024 # 4G + +IMAGER_INSTALL:squashfs += "squashfs-tools" + +SQUASHFS_EXCLUDE_DIRS ?= "" +SQUASHFS_CONTENT ?= "${PP_ROOTFS}" +SQUASHFS_CREATION_ARGS ?= "" + +SQUASHFS_THREADS ?= "${@oe.utils.cpu_count(at_least=2)}" +SQUASHFS_MEMLIMIT ?= "${@int(get_free_mem() * 3/4)}" +SQUASHFS_CREATION_LIMITS = "-mem ${SQUASHFS_MEMLIMIT} -processors ${SQUASHFS_THREADS}" + +python __anonymous() { + exclude_directories = d.getVar('SQUASHFS_EXCLUDE_DIRS').split() + if len(exclude_directories) == 0: + return + # Use wildcard to exclude only content of the directory. + # This allows to use the directory as a mount point. + args = " -wildcards" + for dir in exclude_directories: + args += " -e '{dir}/*' ".format(dir=dir) + d.appendVar('SQUASHFS_CREATION_ARGS', args) +} + +IMAGE_CMD:squashfs[depends] = "${PN}:do_transform_template" +IMAGE_CMD:squashfs[vardepsexclude] += "SQUASHFS_CREATION_LIMITS" +IMAGE_CMD:squashfs() { + ${SUDO_CHROOT} /bin/mksquashfs \ + '${SQUASHFS_CONTENT}' '${IMAGE_FILE_CHROOT}' \ + -noappend ${SQUASHFS_CREATION_LIMITS} ${SQUASHFS_CREATION_ARGS} +} diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index db21cc76..49861b75 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -129,7 +129,7 @@ IMAGE_BASETYPES = "${@get_image_basetypes(d)}" # image types IMAGE_CLASSES ??= "" -IMGCLASSES = "imagetypes imagetypes_wic imagetypes_vm imagetypes_container" +IMGCLASSES = "imagetypes imagetypes_wic imagetypes_vm imagetypes_container squashfs" IMGCLASSES += "${IMAGE_CLASSES}" inherit ${IMGCLASSES} From patchwork Thu Jan 23 09:52:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felix Moessbauer X-Patchwork-Id: 4026 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 23 Jan 2025 10:53:10 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-lf1-f63.google.com (mail-lf1-f63.google.com [209.85.167.63]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50N9r9ke006501 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 23 Jan 2025 10:53:09 +0100 Received: by mail-lf1-f63.google.com with SMTP id 2adb3069b0e04-5401af85378sf352259e87.2 for ; Thu, 23 Jan 2025 01:53:09 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737625984; cv=pass; d=google.com; s=arc-20240605; b=bFhk08yDIGxlCaSfEw/3F1lr8p+lLLLQJ09/eiCWzzmfsa5MPRu/KcSUlEGvqbt81b VlqzeA++4xFMjiTR6Jj03SLCC/41O+Ui50EMqHaNqnasDPXKkaO/HmkH0xYynizHP/cv P/D/+IXqbHZXRWoLUJX12wB8I7FqsNThFf/iTkh9Ch2vJoUlospnGKQQYloKmnG6SY8O 1nw8SSD8D53GhMywtwRW2bm9Qkr9gKV4G05jYgnXpiRHweiOpS5QzMFqA+G8L18wr0SU 6UESSZz85Bpy4407gPrZoAE2UOBxyq3Z/yOP+fUbAn0xw3+H7f+qXZpI5c5+c3QdAUZu AQcw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=fY1WL1y8M52Dsx/vKROPiowcPjRzdoHB/mxP1JIgsEs=; fh=IMzMp6AQkM37DD87oGtVXJSm5uQBFt0Ojj1eYqPC45k=; b=DubVKkFD+1r4SR/FS+hnZ0bpgtZNsm14mj+ahTh2BjcprAUJJsQiMLM1ANhjDjVOrl kPrDCgs2achPRz+2Mc/72oA+odl4CAZS4imk1awZ3QM3U1f4qfGHhEeMKg8tyXccwjbb AjmsgHJTm7+bAAV2d5bbSKi1etsmKMsk+EvNthxSDwEvlZ5tnX5Fxj5T0b7I+hYZXrVC g2wfgC9IbqV+diWtq0tj/vsj9arpKfr3k0AAITeW/b5Zm9TiR56e0Y1aC3gS/TK8n2Wa tL2pbg0Y/LU7zhCV4M3HLAhjUHvcB02XilFArgLf0JWjuIlK0qJmss/zYjGqXxyREL4N uvwA==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=AInjv8DA; spf=pass (google.com: domain of fm-1321639-20250123095300de95cb9b0d2313aef1-atzwx5@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1321639-20250123095300de95cb9b0d2313aef1-AtzWx5@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1737625984; x=1738230784; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=fY1WL1y8M52Dsx/vKROPiowcPjRzdoHB/mxP1JIgsEs=; b=FEnOrlh8XSk2a7ulE1PCxE3N911mLkWKuvwOUdvATfQCilMVCL3vOxnJLptNuNQD1r gcXrGg/lp/HMMcBrp95uVSd2mNfSfl8wFJywrcyTWf+z6VKFF2T93kK55RxI1w4GGr8n RaVqr5P+KsfT2UwjwJ++DZ5uJfknoi5yTF9ijoaIm1r9Ap6NFijJa8J5snO03Iy+ZLu6 bWihQBriFPFHnMH5k/UeSFz3EFaGj8cc/IrVtxKK4JQATn211vwK6nCMiiu5XGuFBR51 zKDWIB8a16bXxRMH9Rj0ZaDvYw4H7cN/nL42jTPHcqk1/Jw8uYCR6TwQso+S+s1wTn7p ZQjQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737625984; x=1738230784; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=fY1WL1y8M52Dsx/vKROPiowcPjRzdoHB/mxP1JIgsEs=; b=LnUSCtRpHGfX+Rkf+0mhIEqhHlmZ0DclOf6R0wIXyewd9whO45ymlFEBDND/Q1a/Td 89xh2GG7OXqt9sZjbU/OLy1BbUFPKrd0UToqKxXEeXBYOsoEtN+Sul85IUYoxUX/FwAI 5i/4sq7H93uuFwfAwWL1jUXIQLJPlDoAHHbJcxqcWZZLp7CpWnqwU88wdS+oz7VWaVDN iKduL9rYePlTKj/PLrjErOEfcPrFirl7OfKT48/nysHC6lCG+X5VkN4k9x6rxU9W5OIu e2kjdxCOKzWPhtF3mgJkXTGixs5rf6FAqmny5yt1OLlNa+KjcaYvjSDn7XYiEOhJJfZN dO7Q== X-Forwarded-Encrypted: i=2; AJvYcCXlQm0o4tGyD1OSfn+K4moz9UK6MspM8CaEzfIwE3jn0silG1QvFRBu1mg3GqKUTB51h/0t/y0=@isar-build.org X-Gm-Message-State: AOJu0YykshcnWppzPm0MvIgGrRtwWc5HZV1RyCVB7A5Hwb3pT0UOjGvk F2TDDLzvHU9/XJJY6jzDTbkZuH9NbNyEV6P6ESLjydSVMtkIp4el X-Google-Smtp-Source: AGHT+IG4cSl7eKU77HRMba6YcfZSdIBK3Vqm3QrSouq9JjT/RthKsX16HMDGUUTMd7T1oHRfcaTX5g== X-Received: by 2002:a05:6512:1183:b0:543:c3d9:418d with SMTP id 2adb3069b0e04-543c3d944damr545175e87.22.1737625983423; Thu, 23 Jan 2025 01:53:03 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a19:5e5a:0:b0:540:c34b:91f6 with SMTP id 2adb3069b0e04-543c24906bdls47279e87.1.-pod-prod-05-eu; Thu, 23 Jan 2025 01:53:01 -0800 (PST) X-Received: by 2002:a05:6512:3d0:b0:542:6d01:f548 with SMTP id 2adb3069b0e04-5439c22d6bamr7493380e87.5.1737625980715; Thu, 23 Jan 2025 01:53:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737625980; cv=none; d=google.com; s=arc-20240605; b=G/3yaT6DJ/GDc5bBhNcuhoAnp2fI1ZDG7vS4aXPdbnnAzjc335FK8yU/3D7RmOmIXr 37xMFRyhKFyTZg4w85oB16n31Bo0C/uE/BI/86eqaJIpr+YySbXUrzmzWm5AKC9k6fMV koiuFm+CTjNrR3nuwJWNJ4UAiutQQIt56m4arSr9MMy55Ejkw3yxjhT6HIaQpTkN3CM0 LQPLsy8fSkJA8oVDRxuGVUKfqCYbGD+67chkYR/dmHa6pp5bMt00fBWothQPTqp/hmVK AappiD4VIu6k+0A7yvSETwvUhB1G9TPM5ggEDF8MmbzbR1a+nc2H0sC3hzD9XvItasXV NtvA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=5+mRsQ30tArOta7g1abganrPaHw3ykKskv9WoL3h55s=; fh=Bo8ZbdhPy/JbmTSxHxcgeG9JPAXIanSEMBVfErZw+70=; b=Sr47sZd0vnK38LM5h9Yw4tKQeFdK1atPDmrk40ASTM/aROLGVXwi1z3qi9ew27MGSn 4uEk2YxH0hNd/j94SjYB1KSGZELKQslVhE/j1yHGrOBIV14sNBgIY6PNLe3wbRTHILuK ppN/sckKkSuaKam7UDBGf4L1Ggs2qBiJk+sHm5pssXk1JYnC3s0AnHN9Bl1ai577o2ia uRY4xETFSxFtIlcL6sWfkRmsj/HeqnHRUiVRyHY+j7U8OiWPszsFvgGDkMxCyvWm7GG5 jx6KQbnGSXTloShvQ3WnH+Kvwl99d4srLtvKTWi1eD1GVKqmAkEZOTA0kWtn+MUIMSgh +Avg==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=AInjv8DA; spf=pass (google.com: domain of fm-1321639-20250123095300de95cb9b0d2313aef1-atzwx5@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1321639-20250123095300de95cb9b0d2313aef1-AtzWx5@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-225.siemens.flowmailer.net (mta-65-225.siemens.flowmailer.net. [185.136.65.225]) by gmr-mx.google.com with ESMTPS id 2adb3069b0e04-5439af0e771si110435e87.4.2025.01.23.01.53.00 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 23 Jan 2025 01:53:00 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1321639-20250123095300de95cb9b0d2313aef1-atzwx5@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) client-ip=185.136.65.225; Received: by mta-65-225.siemens.flowmailer.net with ESMTPSA id 20250123095300de95cb9b0d2313aef1 for ; Thu, 23 Jan 2025 10:53:00 +0100 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: Felix Moessbauer To: isar-users@googlegroups.com Cc: clara.kowalsky@siemens.com, florian.bezdeka@siemens.com, jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH v2 4/7] add qemuamd64 target for hybrid iso9660 image Date: Thu, 23 Jan 2025 10:52:20 +0100 Message-Id: <20250123095223.2928575-5-felix.moessbauer@siemens.com> In-Reply-To: <20250123095223.2928575-1-felix.moessbauer@siemens.com> References: <20250123095223.2928575-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1321639:519-21489:flowmailer X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=AInjv8DA; spf=pass (google.com: domain of fm-1321639-20250123095300de95cb9b0d2313aef1-atzwx5@rts-flowmailer.siemens.com designates 185.136.65.225 as permitted sender) smtp.mailfrom=fm-1321639-20250123095300de95cb9b0d2313aef1-AtzWx5@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= Signed-off-by: Felix Moessbauer --- meta-isar/conf/machine/qemuamd64-iso.conf | 29 +++++++++++++++++++ meta-isar/conf/mc.conf | 1 + .../multiconfig/qemuamd64-iso-bookworm.conf | 4 +++ .../lib/wic/canned-wks/isohybrid-efi.wks.in | 2 ++ 4 files changed, 36 insertions(+) create mode 100644 meta-isar/conf/machine/qemuamd64-iso.conf create mode 100644 meta-isar/conf/multiconfig/qemuamd64-iso-bookworm.conf create mode 100644 meta-isar/scripts/lib/wic/canned-wks/isohybrid-efi.wks.in diff --git a/meta-isar/conf/machine/qemuamd64-iso.conf b/meta-isar/conf/machine/qemuamd64-iso.conf new file mode 100644 index 00000000..36cbdf54 --- /dev/null +++ b/meta-isar/conf/machine/qemuamd64-iso.conf @@ -0,0 +1,29 @@ +# This software is a part of ISAR. +# Copyright (C) 2025 Siemens AG + +DISTRO_ARCH ?= "amd64" + +KERNEL_NAME ?= "amd64" + +IMAGE_FSTYPES ?= "wic" +WKS_FILE ?= "isohybrid-efi.wks.in" +IMAGER_INSTALL:wic += " \ + ${GRUB_BOOTLOADER_INSTALL} \ + ${SYSLINUX_BOOTLOADER_INSTALL} \ + syslinux-utils \ + isolinux \ + xorriso \ +" + +IMAGE_PREINSTALL += "live-boot" +IMAGE_INSTALL:remove = "expand-on-first-boot" +IMAGE_TYPEDEP:wic += "squashfs" +SQUASHFS_EXCLUDE_DIRS = "boot" + +QEMU_ARCH ?= "x86_64" +QEMU_MACHINE ?= "q35" +QEMU_CPU ?= "" +QEMU_DISK_ARGS ?= "-cdrom ##ROOTFS_IMAGE## -bios /usr/share/ovmf/OVMF.fd" + +MACHINE_SERIAL ?= "ttyS0" +BAUDRATE_TTY ?= "115200" diff --git a/meta-isar/conf/mc.conf b/meta-isar/conf/mc.conf index 2a7b69f3..7c190b67 100644 --- a/meta-isar/conf/mc.conf +++ b/meta-isar/conf/mc.conf @@ -22,6 +22,7 @@ BBMULTICONFIG = " \ qemuamd64-sb-bullseye \ qemuamd64-bookworm \ qemuamd64-cip-bookworm \ + qemuamd64-iso-bookworm \ qemuamd64-trixie \ container-amd64-buster \ container-amd64-bullseye \ diff --git a/meta-isar/conf/multiconfig/qemuamd64-iso-bookworm.conf b/meta-isar/conf/multiconfig/qemuamd64-iso-bookworm.conf new file mode 100644 index 00000000..a2597131 --- /dev/null +++ b/meta-isar/conf/multiconfig/qemuamd64-iso-bookworm.conf @@ -0,0 +1,4 @@ +# This software is a part of ISAR. + +MACHINE ?= "qemuamd64-iso" +DISTRO ?= "debian-bookworm" diff --git a/meta-isar/scripts/lib/wic/canned-wks/isohybrid-efi.wks.in b/meta-isar/scripts/lib/wic/canned-wks/isohybrid-efi.wks.in new file mode 100644 index 00000000..514f756c --- /dev/null +++ b/meta-isar/scripts/lib/wic/canned-wks/isohybrid-efi.wks.in @@ -0,0 +1,2 @@ +part /boot --source isoimage-isohybrid-isar --sourceparams="loader=grub-efi,payload=${DEPLOY_DIR_IMAGE}/${IMAGE_FULLNAME}.squashfs" --ondisk cd --label LIVECD +bootloader --timeout=10 --append "console=ttyS0,115200 console=tty0 boot=live toram=${IMAGE_FULLNAME}.squashfs" From patchwork Thu Jan 23 09:52:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felix Moessbauer X-Patchwork-Id: 4027 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 23 Jan 2025 10:53:10 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-ed1-f60.google.com (mail-ed1-f60.google.com [209.85.208.60]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50N9r9QP006544 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 23 Jan 2025 10:53:09 +0100 Received: by mail-ed1-f60.google.com with SMTP id 4fb4d7f45d1cf-5d0b5036394sf1037755a12.3 for ; Thu, 23 Jan 2025 01:53:09 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737625984; cv=pass; d=google.com; s=arc-20240605; b=OJ0NPmUmo0Ubp+ujRmPsluQ29P4oSn0IrVP1L0oDRt8OR5tvbiHZgA80hBJKjAo+pq KI5AwoQQSGuIwf7NOukNXrfIg8HuTzecS76zYduxrTiEL7Ugpy44Mr00gQQexDYR5rGz nSRjqeK9PVvJdjtbjoX5L5Oeio/4N3PfblTg0rGkVmc51oZCeJZMM7wwowIrG881xjYG ZGVLknfx6496g21VHzzcRN1cLZIELzMbL93+bYUNTMaUmvrsnmSpJjfJis9JCoceWm1R /p+6rBHJjPElIPstIe0HVoeZVDY8vtzQCWeB9bu7BGhwTJW125eluPOH4yohfONP9Upq bz4g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=ApHEeuasgpi4NNgtWT2xN7dF2NK6ZS95tJtQqs9gNmQ=; fh=3P/UFHwQ4rKsHyEw4oLFmQVMXHBbwQ40Etghwjic5pE=; b=MfOMgJZzsOOJHzBH6WbPN8yqxetXzem4c4Gztumh6gVzGeeJS73gzHs2VrK2ID57DQ U6fKbPirgB4qjiqSOD/o7WQEiMypQnSBnm72S8w/1ASRqjMz7w3S34GrFV2k15PI7yg1 uNApZFrGZgMdlEaXmAQdIyLcu7TjGNxqIvJ8gUMWI8mOn9XrtJsrzMIxff7m7N15ghHq AuXMKruH6Tr6d9xdbQ0CCu4iMO5aOadus4nQm/ZVr4TDmhqQhP7IeMhbsNxMdZgsgQkY a20z/VRpxSNP+rdnuKSYpeoNzPqsfOzW7zNktvk1M3erI7SbxQiT/vG8dwTvovSiZZnd 0fpw==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b="IZ/9NXAd"; spf=pass (google.com: domain of fm-1321639-20250123095300bbd8ac2a4d996fdb01-lhpc2c@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1321639-20250123095300bbd8ac2a4d996fdb01-lHpC2c@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1737625984; x=1738230784; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=ApHEeuasgpi4NNgtWT2xN7dF2NK6ZS95tJtQqs9gNmQ=; b=Nr5a1xSPfzi10xC944yfEz7+1nq3xZgA+UXJuKtMofXpiOcRckC7BfPtplTJo/bgQ6 ilaG+co87PgXk3EUQ7svYtzj2pQbb5VtWC31uoSHzsHE0IpHJ4Fz5qpXBZnFifXexZd0 NFg/fFLSTEoGC86Bq6wUB0cOs7PGB6uz+dc4vbmnBFTHUFZ0mV+Q8uRVYaSWgw/kKxMz REuRU5GLQ5alXs/YAOuTZeaGfozby2qBpllpxlNpxPCvOC1uAHy6iA/0eVnRfYWrO6Ob ++nHVBjAG9vpt+urhK+F8nM41EAriQ7tHmo4FYOXc8fNbmn+VyFFJf/MS0aKetxb0eXK hG4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737625984; x=1738230784; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ApHEeuasgpi4NNgtWT2xN7dF2NK6ZS95tJtQqs9gNmQ=; b=VuzpbJFlsL/jKiL7ny3pUNGKtmgZh4g9PRIoDH01wCy/YnN0oDGgCSuojkIJLAovcz PdZqiGfOOGrL/VuJoT2iehfZV6lU4IHwAX66znYnWGLDS3WslozECk+stNWS7rCNR3I5 igr6wD8KmzrYGdy9S+EKeRimbocCowF6jAOawIeCs+BwhMMfAO3xHOcqVpwCzXWXMhLI EDYpZCrSSL9ViuEnpCEhVcFzyV7drtvWHfrChAGVLBjYFZBLVzRq6UHw94TXJWRmPop9 7DD7zXCTkPNVV8xIp3ozB9gMvPJvxd5nc+r/sKn5br/JJpUQXXOUc60BPDWNnEY+nO6H N2aw== X-Forwarded-Encrypted: i=2; AJvYcCXdD//jkJwL7CmzBat3f0NZ4EFnED8Wd4KVOgtW3+UTTqB4b083k2AtakgOSs+biea2RRmzuxw=@isar-build.org X-Gm-Message-State: AOJu0YzYrJV/dAX2GcEnHgBZj+X1dL2qUIiKJzbi3Y620/tlDAzVibJx GIsoi1w2/8coVbPJKwhQM7KVsERfVeIZu2LtONMe8e6yV8Kc7pIb X-Google-Smtp-Source: AGHT+IGDg3U430ur5XHu4QXeZJIIY6kWZhi+RePepXNVwDjzx54WCYNWCzicJv/0yIDfT4RUjKd3Ug== X-Received: by 2002:a05:6402:2347:b0:5d0:e2c8:dc8d with SMTP id 4fb4d7f45d1cf-5db7d3392d6mr23434171a12.20.1737625983222; Thu, 23 Jan 2025 01:53:03 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a50:8d06:0:b0:5d3:ecaf:6210 with SMTP id 4fb4d7f45d1cf-5dc07174a9bls41936a12.0.-pod-prod-08-eu; Thu, 23 Jan 2025 01:53:00 -0800 (PST) X-Received: by 2002:a05:6402:849:b0:5d0:d91d:c195 with SMTP id 4fb4d7f45d1cf-5db7db06f81mr21897019a12.32.1737625980550; Thu, 23 Jan 2025 01:53:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737625980; cv=none; d=google.com; s=arc-20240605; b=WsPz1oTEoc9CCR3UxzsYe/77vbeEJe8fWko+nlh7sti1ECcfrr7FbU4zdug4571s7V 35wEBn5AnWBRgzOTDMuR8sapC0lfBokmpJonx5z50S09h6Ts0f6Y6NvnUwR5f9F1kuCy hr/+xwZNocUu4j6zaCUckL2H7s+WcSEUPCyiCOysuS12GSt1UwlqMhtsUx56kvCYnbps CFFoSuG4bKda+U5G4aw++q9Zxg6XyBidBVbftzHwvVflyE3kHEe0xKQpmi+XrFARTSEe fxJXiw3vGNIvOi61DbWPx5uQoeg40uNBIYfm52EDtL+4zg1H8Gr1qppwp+f98rxp37Qv +Phg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=pSuJ5GSrGex5MLJu/QxL+Xu6VeA7d9XqGIoAD0OBWZ4=; fh=Bo8ZbdhPy/JbmTSxHxcgeG9JPAXIanSEMBVfErZw+70=; b=Hw2yZSB/peH6MBk8pZdXS79hTRuK3DIpwVWHjjs+m05HbBNwgTE1Tifynv83PjAEGM CNwXB9ls+tAJCstduwUQ6xv3m5UQ251M11/yBo4opGXJHcVglGIpDhniMiZS4zJlzjWe vhpBTg6tZLy0488BJqPP2MpQTYzYukrD/LY7Q/+zV6CNnCTWaUi20GPo4mPdf8R2UGWh owHhF4wXlG1nZye6zjIg5vEetPiG+jdX+7eajly76toVRmHcDMvoIrfmsdcbg1qxrBPn 65PTdjtWYlxcZ/AzEFdocaWsuwobPE1A3yKajY9Tiac/C5lwjSnWNpLYoOnpekncOBcr /8Ww==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b="IZ/9NXAd"; spf=pass (google.com: domain of fm-1321639-20250123095300bbd8ac2a4d996fdb01-lhpc2c@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1321639-20250123095300bbd8ac2a4d996fdb01-lHpC2c@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-228.siemens.flowmailer.net (mta-64-228.siemens.flowmailer.net. [185.136.64.228]) by gmr-mx.google.com with ESMTPS id 4fb4d7f45d1cf-5db735658e0si253711a12.0.2025.01.23.01.53.00 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 23 Jan 2025 01:53:00 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1321639-20250123095300bbd8ac2a4d996fdb01-lhpc2c@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) client-ip=185.136.64.228; Received: by mta-64-228.siemens.flowmailer.net with ESMTPSA id 20250123095300bbd8ac2a4d996fdb01 for ; Thu, 23 Jan 2025 10:53:00 +0100 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: Felix Moessbauer To: isar-users@googlegroups.com Cc: clara.kowalsky@siemens.com, florian.bezdeka@siemens.com, jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH v2 5/7] add kas menu target for qemuamd64-iso machine Date: Thu, 23 Jan 2025 10:52:21 +0100 Message-Id: <20250123095223.2928575-6-felix.moessbauer@siemens.com> In-Reply-To: <20250123095223.2928575-1-felix.moessbauer@siemens.com> References: <20250123095223.2928575-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1321639:519-21489:flowmailer X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b="IZ/9NXAd"; spf=pass (google.com: domain of fm-1321639-20250123095300bbd8ac2a4d996fdb01-lhpc2c@rts-flowmailer.siemens.com designates 185.136.64.228 as permitted sender) smtp.mailfrom=fm-1321639-20250123095300bbd8ac2a4d996fdb01-lHpC2c@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= As this target is incompatible with container runtimes (rootfs uses an overlay), we also disable the prepbuilt image examples for docker and podman. Signed-off-by: Felix Moessbauer --- kas/machine/Kconfig | 7 +++++++ kas/machine/qemuamd64-iso.yaml | 7 +++++++ kas/package/Kconfig | 3 +++ 3 files changed, 17 insertions(+) create mode 100644 kas/machine/qemuamd64-iso.yaml diff --git a/kas/machine/Kconfig b/kas/machine/Kconfig index 1740bd56..8c334a8f 100644 --- a/kas/machine/Kconfig +++ b/kas/machine/Kconfig @@ -107,6 +107,12 @@ config MACHINE_QEMU_AMD64_SB select CODENAME_BULLSEYE select ARCH_AMD64 +config MACHINE_QEMU_AMD64_ISO + bool "qemuamd64-iso" + select DISTRO_DEBIAN + select CODENAME_BOOKWORM + select ARCH_AMD64 + config MACHINE_QEMU_AMD64 bool "qemuamd64" select DISTRO_DEBIAN @@ -252,6 +258,7 @@ config KAS_INCLUDE_MACHINE default "kas/machine/phyboard-mira.yaml" if MACHINE_PHYBOARD_MIRA default "kas/machine/qemuamd64-cip.yaml" if MACHINE_QEMU_AMD64_CIP default "kas/machine/qemuamd64-sb.yaml" if MACHINE_QEMU_AMD64_SB + default "kas/machine/qemuamd64-iso.yaml" if MACHINE_QEMU_AMD64_ISO default "kas/machine/qemuamd64.yaml" if MACHINE_QEMU_AMD64 default "kas/machine/qemuarm.yaml" if MACHINE_QEMU_ARM default "kas/machine/qemuarm64.yaml" if MACHINE_QEMU_ARM64 diff --git a/kas/machine/qemuamd64-iso.yaml b/kas/machine/qemuamd64-iso.yaml new file mode 100644 index 00000000..f58a1217 --- /dev/null +++ b/kas/machine/qemuamd64-iso.yaml @@ -0,0 +1,7 @@ +# This software is a part of ISAR. +# Copyright (C) 2025 Siemens AG + +header: + version: 14 + +machine: qemuamd64-iso diff --git a/kas/package/Kconfig b/kas/package/Kconfig index bea2b121..a49041e8 100644 --- a/kas/package/Kconfig +++ b/kas/package/Kconfig @@ -61,6 +61,7 @@ config KAS_INCLUDE_PACKAGE_EXAMPLE_PREBUILT config PACKAGE_EXPAND_ON_FIRST_BOOT bool "expand-on-first-boot" default y + depends on !MACHINE_QEMU_AMD64_ISO config KAS_INCLUDE_PACKAGE_EXPAND_ON_FIRST_BOOT string @@ -151,6 +152,7 @@ config PACKAGE_PREBUILT_DOCKER_IMG bool "prebuilt-docker-img" default y depends on ARCH_AMD64 || ARCH_ARM64 || ARCH_ARM + depends on !MACHINE_QEMU_AMD64_ISO config KAS_INCLUDE_PACKAGE_PREBUILT_DOCKER_IMG string @@ -162,6 +164,7 @@ config PACKAGE_PREBUILT_PODMAN_IMG default y depends on DEBIAN_BULLSEYE || DEBIAN_BOOKWORM || DEBIAN_TRIXIE || UBUNTU_JAMMY || UBUNTU_NOBLE depends on ARCH_AMD64 || ARCH_ARM64 || ARCH_ARM + depends on !MACHINE_QEMU_AMD64_ISO config KAS_INCLUDE_PACKAGE_PREBUILT_PODMAN_IMG string From patchwork Thu Jan 23 09:52:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felix Moessbauer X-Patchwork-Id: 4030 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 23 Jan 2025 10:53:18 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-ed1-f63.google.com (mail-ed1-f63.google.com [209.85.208.63]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50N9rHOd006844 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 23 Jan 2025 10:53:17 +0100 Received: by mail-ed1-f63.google.com with SMTP id 4fb4d7f45d1cf-5d3ded861f5sf622724a12.2 for ; Thu, 23 Jan 2025 01:53:17 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737625992; cv=pass; d=google.com; s=arc-20240605; b=I8a3DPJvT1eEPTogUjlHN0At6Jlq9l99iRtgWXvFYzISKRponkm2OsnBcMztjgNnVg jmmzifG/ncB9j4iYdyc5h67NfV+m+o0H28DYY0Svb8bxi6cOi3tffmGkuozhBdg9hF4F AUCZhKEugTRke59hIk1f/rgBy2HTU69yaV2L8mn0vz3erFXLXUUCJocW86q0q7AVi3Dt 08bpd80PpZzw+dFGslJBnaKhPySlEt8vu6VaVF9ppj9PNNvMh6ZRjwmurRLYSmuJ+9vx 0veEInypI+m5F40ppOSks/oSVXEXXyT6/H812RhCoF1EhAeaU8SY2j8sw5ClN2hBM2RD jR0g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=YAnWIaaGTiv//YI2C1md56vPnIzsmTqOgFqKungiuoM=; fh=coLxv8KkJQBsbhxSObEdh/EzTKvH2Z8iofWej7udcPw=; b=T9luhZ1p1oC6wPi92H2vDQlNFiVtDVz8EaAnhgkAEwKrny4hINXWTJqPHENssvi3zz CUsUlz0J56QT1gOf9+AECjKSm0t8nS6S3qw0CPFU3mwOMw7/mXd+Q+zVmvdQREgvG610 49TE/bukbf/d43oDHDmo4iesEvgp6LuOAImVTzX9ifJUZK+ImAxZWSRvT5umJlCzSxle PRSOhMe8NIUXOozyKZrhTYBp+O+L/rSLLYAPaFZ5OIxx4W+rI4qo/UMdeHBojhiZQLei CxZT+nDeYsbTyAVmEyRdKqWHj1rmDTGDNhg68huYckWVceCJaW4Qyzx6qb6xLCFzdMHj XSWw==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=RI5OUUH5; spf=pass (google.com: domain of fm-1321639-20250123095308bf2865c77248b2a4fd-btxlqr@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) smtp.mailfrom=fm-1321639-20250123095308bf2865c77248b2a4fd-btXLqr@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1737625992; x=1738230792; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=YAnWIaaGTiv//YI2C1md56vPnIzsmTqOgFqKungiuoM=; b=GC4th1eJT9kltlkl7VAWodWM0t6KA4vPW1N7uWpUXK6TTWdW5nTsqUJXNC9lyZaudo LUV0TfpWrEz8ClvT7IE/jX3bD3VbyqcwsWxHM3DFIkAPyBp0jDLpQaAl/0zLikseDWhi Ou5OPRsK5N5h/G6dyyjJvxtE4NKS80xnwBWxjJN+f6Mk+DQ/xrV5toEwrT60/5KKfL+9 84jIFMMMQ9ho7532iCM7D/gn6UJU9tWKOE6aVDzrv69T+XBPhR/4/RV2EBNf26nrbAUn KkjY5eRQq+Gv4cAYmKM3rYlnWAVCSslCwDpRjGv6j7RMWkVcC893I0+ncmOs0XzSCi+u QYxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737625992; x=1738230792; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=YAnWIaaGTiv//YI2C1md56vPnIzsmTqOgFqKungiuoM=; b=QQ1DhNWiLRhHTWVE+ACB+VW4fCMGf+ISt4gJ2h0Sro2084nToJ7OpqLfHx1X6SSP9b AcKpoKH+Ox40LVAdSJlj0p0INwbLZPSJbUve17F5dwfehpk4tZozUDmSzhnNblGvthjN +FLtFpOtkiprVNYqXHj6sBRG8KtZ/19zWF8EjfhkOhzC5tlpYH4s915+D/CcTejWfY7w mZO1XoDaV91GegpwWOABvJBvuRj7iNOBg7f6aqPUXSzhFe7WP2FHvaB8AQ0fC5Zb1Ymd IbtrjPEKVeO4v1mYya7O/O8Gu+Itd4iHEnT/tClqSVVuSCwTer/a41Tt+WPRxCHjQ9JA RoXQ== X-Forwarded-Encrypted: i=2; AJvYcCXS/WydNqzBWoGEpYjQyEv+hixDbej+ncMUfJ/gp8Dk8Kcn/AKcTaHbVkOf8tfxvz+GoZcpFi8=@isar-build.org X-Gm-Message-State: AOJu0Yy9cncg9w7VWPQ+/wxeZnhrDQwI3f+xRW45cPi5MOqzRxfseLWn TgQCHXoIUcNk+D+ltnavLZBih60DdgKbc3kz0V+K7zg+jC6Mc6HP X-Google-Smtp-Source: AGHT+IGvDMmPW2WbXF9pa3Cz2lE5UjsLN/XjdKogMjnZnuP3smRywRfmQNL+n7VzncGqdPUiI0fAbw== X-Received: by 2002:a05:6402:35c3:b0:5d2:729f:995f with SMTP id 4fb4d7f45d1cf-5db7db2cf54mr23505079a12.29.1737625990907; Thu, 23 Jan 2025 01:53:10 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a50:cc8f:0:b0:5d0:b549:b21 with SMTP id 4fb4d7f45d1cf-5dc07194b4bls39893a12.0.-pod-prod-09-eu; Thu, 23 Jan 2025 01:53:08 -0800 (PST) X-Received: by 2002:a17:906:4fcb:b0:aa6:90a8:f5ff with SMTP id a640c23a62f3a-ab38b3fbfe3mr2477202766b.50.1737625988481; Thu, 23 Jan 2025 01:53:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737625988; cv=none; d=google.com; s=arc-20240605; b=Cl6suWRDDrTvvdfBFNeZQAUHuJKeqEW1zsYGPdYAEm1Oar0Wc6rPWruZtLHHlK5DT7 t+Wuhe39GsqS5Zjy0+mEalGABPfE0OT7rnfR49fpo+pco5IEmNoAgDIyYhocDZHnB4Hp P7t3o4DxmI5vwM34GBIYhJ/ka8iSvdhr1cUs2KgpHE0KGacla3q+y9lsWsWRThfhQKAE lJgnuPL1V1JKkK+Itk1haPQdQ/nTcBCdkI/FmEvEqxvZmD0bwvUdcXtwgOtQcq8i7WnZ fbOZSYD9xGMvdPorq9NzkEfJpWvsj5eZ/JPLQb0MA+Me7CoY/xLOeKsYZ6vR8EjyUbhp Elcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=ZjIZrYbL4HLdAvY1glpSc1eBEOiCvIdNNJP/ryYnmVE=; fh=Bo8ZbdhPy/JbmTSxHxcgeG9JPAXIanSEMBVfErZw+70=; b=P5v+oJKaQStThla1N1F/znUEf+qwq+NxN7WMSK9dUhn0Mpq2rXLR8ko3TV9TgO/QGF RE8DjBfY95z2KNfxb6bMrx148LZ75L5DDEKtCxZ8mib91m40+x0N2VGbfrVFT28Kwb8q vuJyb84KXg2+Boj8fkNXE6n55kc2Sc6IBYynN24hLXViE4VTDuUrOTqTRx4WPHBAOLWS sqFqZ4O4vLE6pX9kJsIV3VKqAXyvJFIdtzuLaH868WmP7Ojs/2fE3qpHl4xwzTKY0k5i 1coNX9YosTgMrfiHj4gLSF4tM6ktgrRNlE6pk9Blh4Wrc4Fk5fyv0fs911ev9rYmb9kt TeTQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=RI5OUUH5; spf=pass (google.com: domain of fm-1321639-20250123095308bf2865c77248b2a4fd-btxlqr@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) smtp.mailfrom=fm-1321639-20250123095308bf2865c77248b2a4fd-btXLqr@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-65-227.siemens.flowmailer.net (mta-65-227.siemens.flowmailer.net. [185.136.65.227]) by gmr-mx.google.com with ESMTPS id a640c23a62f3a-ab384d45195si23862366b.2.2025.01.23.01.53.08 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 23 Jan 2025 01:53:08 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1321639-20250123095308bf2865c77248b2a4fd-btxlqr@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) client-ip=185.136.65.227; Received: by mta-65-227.siemens.flowmailer.net with ESMTPSA id 20250123095308bf2865c77248b2a4fd for ; Thu, 23 Jan 2025 10:53:08 +0100 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: Felix Moessbauer To: isar-users@googlegroups.com Cc: clara.kowalsky@siemens.com, florian.bezdeka@siemens.com, jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH v2 6/7] testsuite: add qemuamd64-iso machine to start_vm script Date: Thu, 23 Jan 2025 10:52:22 +0100 Message-Id: <20250123095223.2928575-7-felix.moessbauer@siemens.com> In-Reply-To: <20250123095223.2928575-1-felix.moessbauer@siemens.com> References: <20250123095223.2928575-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1321639:519-21489:flowmailer X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=RI5OUUH5; spf=pass (google.com: domain of fm-1321639-20250123095308bf2865c77248b2a4fd-btxlqr@rts-flowmailer.siemens.com designates 185.136.65.227 as permitted sender) smtp.mailfrom=fm-1321639-20250123095308bf2865c77248b2a4fd-btXLqr@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= Signed-off-by: Felix Moessbauer --- testsuite/start_vm.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/testsuite/start_vm.py b/testsuite/start_vm.py index 76814ee3..d3621ec3 100755 --- a/testsuite/start_vm.py +++ b/testsuite/start_vm.py @@ -148,7 +148,7 @@ def start_qemu(arch, build, distro, image, out, pid, enforce_pcbios): def parse_args(): parser = argparse.ArgumentParser() - arch_names = ['arm', 'arm64', 'amd64', 'amd64-sb', 'amd64-cip', 'i386', 'mipsel'] + arch_names = ['arm', 'arm64', 'amd64', 'amd64-sb', 'amd64-cip', 'amd64-iso', 'i386', 'mipsel'] distro_names = [ 'buster', 'bullseye', From patchwork Thu Jan 23 09:52:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Felix Moessbauer X-Patchwork-Id: 4029 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Thu, 23 Jan 2025 10:53:17 +0100 X-Sieve: CMU Sieve 2.4 Received: from mail-wm1-f63.google.com (mail-wm1-f63.google.com [209.85.128.63]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 50N9rHfM006833 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 23 Jan 2025 10:53:17 +0100 Received: by mail-wm1-f63.google.com with SMTP id 5b1f17b1804b1-43582d49dacsf4508935e9.2 for ; Thu, 23 Jan 2025 01:53:17 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1737625992; cv=pass; d=google.com; s=arc-20240605; b=Ds4ztKqWhA/+QicmqNY4kI+qjmLfW0bXPoTA+6rt+WzK+AcoOBAhGTJ0SP7qp7p2fI tYnQq+58FVlN8rna4t5CWaNBH7fsUvhFrmkvNmX1xdB2bb2PI/gfdEDfF7PV/GRSbPs2 MV11ByUa10Vhsesr5rCOcNkz1L/NccwXFjqkApRjzmpgFXhVf2IDY60U98a2sHDi5G7p 5t0o3nHw7gQcbD1yj3RKTbsIImt7xyzuxlt8ph0tq1t3UVDcDSVU8LoqogbAW8o6eFhb el2iYMHagdRCuY/DGMgc50gTd4XBaDxzSBgmC/v56+tCA/4h6efmKEkch8e2jZoTFxiH aJaQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=ToVbUFMA8yENoqYcMwcgEP3t8oxgN6t4IAJjliWQ4eU=; fh=UmRtUQkJWPgm4J5JVZslLk87tctPqDWbh3dEgvbW0Pw=; b=PxH7iFcT09QEqwOYlMyBUczfrR/lCUQ3Eb9H9+EybD3llnpLDP2Y8YDhWyeJiFvs9P OhaealD8Ub7K26QuL51tipgKtJ5gh1oraXyvMVzp746zAo2b46RSmp/lkA9S6jhsei8X heybtyOerwaVj7mBEFFnfBt7BpHaCO+rsMYm8LwuGP6H43GB2kOCtYHg8+QZRmZM5zRS My+6ASsCcXjdbPviOyGXnrv7sL0t0r5KS3vR/W6T97pAntBHfa1i9TpYmZDn2TP4wqNs IJCt0jLovgPaNjLMBO/49swkZCc18wMthB2O7Oi0xFBSBp9G//Ti0Gbu3r7lq/6bOhKa a3jw==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=SyAEBsW1; spf=pass (google.com: domain of fm-1321639-20250123095308d4bbe4c1dc4f41be81-vgoavo@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-1321639-20250123095308d4bbe4c1dc4f41be81-VgoAVO@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1737625992; x=1738230792; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=ToVbUFMA8yENoqYcMwcgEP3t8oxgN6t4IAJjliWQ4eU=; b=R1Q8Zu7SunKz6NwEZXnBsCwyfOOG+yVvoZ4TwYtXn/KmYo6M5gFiI7j6doRbtWlCF+ /RqDXDGIo8WhecPPiEsklqbq5TTHpYqAPfpvkoVI1Zv9+qQ8Es+N725zsib4G9zMjaxt qIOL8a0sH7L4SVzaz1DCDHDGak1XVxrCof9BNbaBoTAHiUiqPo6/oUn8FSMyQHvps7FO NSNyuNuhPzaNO04pPoGUozAfw5aZrxgzTAweqjmFwNpRNCYpTSTcI8bjom1L/fdz08Ut t4K1bmtTtqopb/vCtfwtjOX6Bv7uc3B8EZaCBx7e954p3OuqVi5bvM/0QfSOx4NjmjZm TdMA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737625992; x=1738230792; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ToVbUFMA8yENoqYcMwcgEP3t8oxgN6t4IAJjliWQ4eU=; b=l+wGej1ylnxHTCn2wDOgRfItU21E6OFYQvCJ8r4KcSM9/wn1C/4x3CtiaSQoFtGrBG 9D7kq4RnwvgmoYAtF13d3hs1EiJpeKQp1Eb/xUMoVUqFpZn7eXfNdSo1LncFJMyp9Uvq TC6ElpXnskXWSgn4QDe9ZWpr9yIfRXf3fJv8vzVDyIAvQT2C6xNtG4cZlaz4W4BzZOwD malpZjWJDCRmifZRae3Kcgqgo3uz1RcOMHuWorezib5pD8mWC1y5CljQn+rBM/PAMmNn IcnRJrXXw/bVTE7IjcdfpPqfPA+5TZ6lMhNb/4s1QjNDCLBOptswiGdWFKy5LsIps80T VGSw== X-Forwarded-Encrypted: i=2; AJvYcCVDXGsN0w97p+h8XRWzy3XqZtZHfgFe/ZmOk+lIWGzGUb0YhngpcanvoYpIy3OyjiibWaQEYtg=@isar-build.org X-Gm-Message-State: AOJu0YxjSwOtF+f8kqRyAeW/+p7dUVTntaDQ/ucp89kSPmzKkCMH43R0 CfKeWpfxbAx4r+MBxop9f+IZYNB1WnIs6e/rbDUpGc3ORPMqFr46 X-Google-Smtp-Source: AGHT+IEXf5OfIAma8Afj9DVd6p6OwfSf3/f97q1hEVzBjoQhMsCDHAuIiauIaLMcUv/IWvTSLAH8qw== X-Received: by 2002:a5d:64a1:0:b0:38a:8ace:85e8 with SMTP id ffacd0b85a97d-38bf57a98fdmr27366871f8f.44.1737625991073; Thu, 23 Jan 2025 01:53:11 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:adf:b34f:0:b0:374:c0b6:44c0 with SMTP id ffacd0b85a97d-38c2227adb2ls259428f8f.0.-pod-prod-09-eu; Thu, 23 Jan 2025 01:53:09 -0800 (PST) X-Received: by 2002:a05:600c:a07:b0:434:f9c4:a850 with SMTP id 5b1f17b1804b1-438913cb16emr254619485e9.10.1737625988830; Thu, 23 Jan 2025 01:53:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1737625988; cv=none; d=google.com; s=arc-20240605; b=BBD+RPfXJW6du/MOTpPTxUHsKjVz7t1Glc94dEWIfxLF4+zS4LMsJO8miGytvjqf3/ 8oCgrk7cUf33C8BS4SAF9Cgoa2SoVemDFMKN5f4+gB1Pe5laqRO2dTAenyuCHrH/3Ou2 srAGXHewS25bdKURff18K3iDTT9GoOK1BWpqvE9nkJE/eJRbU5JbWNn4Vgv6UpeWFu0H I49FRmmJ9q4NdH0vWBm3fWOYx1QPOUP0V+b62mNCj50fkMvDdwWKdivI57LJU44VxBua 1x0Z26KNNoDRzXkX5R9I1tzj9KoiaV0WRn2BQAxd3Mg7feLBHyYFgzluKrETw9xhAQex nURA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=i7Zse6H/zWdoX7s7aBL5+N4tLWrzACJ5hvznlHKX16M=; fh=Bo8ZbdhPy/JbmTSxHxcgeG9JPAXIanSEMBVfErZw+70=; b=hXQJAaqOkCa/OZpnQOzSZCv01eq/WpCigQ0VljijuWEAp1wn4beT2Le1MPjpIrPeLH +IWObo0XeQYnDN6xtySoCQTuZ6lCHnn8tlaOVy1C0gZAyWT6oWha3j2j8TwfDkLq0CTL 1Uwn1e9kazq/61UUEvYzjyyNlXceCpjPhLus2IbQ4MoxR6Lf0Yr79Rkgymm+4dzmA0E9 vVIdgdmsGMo8YGSCjKd7MPg4azuOyoRIhIbrPsf3wsO5I5NwtOnsYL83se2AWm1CC4yQ 4Wq6LAmngzvPcMb1+FuVR1EIn7E4idaj9f1267Whf23vtp80tgCY7W7oOWfUaMgOnAM5 pyRQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=SyAEBsW1; spf=pass (google.com: domain of fm-1321639-20250123095308d4bbe4c1dc4f41be81-vgoavo@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-1321639-20250123095308d4bbe4c1dc4f41be81-VgoAVO@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-226.siemens.flowmailer.net (mta-64-226.siemens.flowmailer.net. [185.136.64.226]) by gmr-mx.google.com with ESMTPS id 5b1f17b1804b1-438b1cc92afsi528735e9.1.2025.01.23.01.53.08 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 23 Jan 2025 01:53:08 -0800 (PST) Received-SPF: pass (google.com: domain of fm-1321639-20250123095308d4bbe4c1dc4f41be81-vgoavo@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) client-ip=185.136.64.226; Received: by mta-64-226.siemens.flowmailer.net with ESMTPSA id 20250123095308d4bbe4c1dc4f41be81 for ; Thu, 23 Jan 2025 10:53:08 +0100 X-Patchwork-Original-From: "'Felix Moessbauer' via isar-users" From: Felix Moessbauer To: isar-users@googlegroups.com Cc: clara.kowalsky@siemens.com, florian.bezdeka@siemens.com, jan.kiszka@siemens.com, Felix Moessbauer Subject: [PATCH v2 7/7] testsuite: test build of mc:qemuamd64-iso-bookworm:isar-image-base Date: Thu, 23 Jan 2025 10:52:23 +0100 Message-Id: <20250123095223.2928575-8-felix.moessbauer@siemens.com> In-Reply-To: <20250123095223.2928575-1-felix.moessbauer@siemens.com> References: <20250123095223.2928575-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1321639:519-21489:flowmailer X-Original-Sender: felix.moessbauer@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=SyAEBsW1; spf=pass (google.com: domain of fm-1321639-20250123095308d4bbe4c1dc4f41be81-vgoavo@rts-flowmailer.siemens.com designates 185.136.64.226 as permitted sender) smtp.mailfrom=fm-1321639-20250123095308d4bbe4c1dc4f41be81-VgoAVO@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Felix Moessbauer Reply-To: Felix Moessbauer Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= Signed-off-by: Felix Moessbauer --- testsuite/citest.py | 1 + 1 file changed, 1 insertion(+) diff --git a/testsuite/citest.py b/testsuite/citest.py index 82affb1a..504747d0 100755 --- a/testsuite/citest.py +++ b/testsuite/citest.py @@ -241,6 +241,7 @@ class NoCrossTest(CIBaseTest): 'mc:nanopi-neo-bookworm:isar-image-base', 'mc:qemuamd64-focal:isar-image-ci', 'mc:qemuamd64-bookworm:isar-image-ci', + 'mc:qemuamd64-iso-bookworm:isar-image-base', 'mc:qemui386-bookworm:isar-image-base', 'mc:qemumipsel-bookworm:isar-image-ci', 'mc:hikey-bookworm:isar-image-base',