From patchwork Fri Dec 1 14:03:31 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Taedcke, Christian" X-Patchwork-Id: 35572 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id A84E4C4167B for ; Fri, 1 Dec 2023 14:19:39 +0000 (UTC) Received: from EUR05-AM6-obe.outbound.protection.outlook.com (EUR05-AM6-obe.outbound.protection.outlook.com [40.107.22.47]) by mx.groups.io with SMTP id smtpd.web10.304.1701440379165976005 for ; Fri, 01 Dec 2023 06:19:39 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@weidmueller.onmicrosoft.com header.s=selector1-weidmueller-onmicrosoft-com header.b=ML8KuXpX; spf=pass (domain: weidmueller.com, ip: 40.107.22.47, mailfrom: christian.taedcke-oss@weidmueller.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SgRWgQlr7tPAeToOOYIglheYthxAlN9TyUJAQk9rlMioFmKfsM24QypiBN8yYRz9+5z41AhCPLRf9O6XmMvXz4GJqnqnUyuXc/q9Vu8q2Wchlo6gRtoO3znG5gXWTffOBkCkToP1x7gOrC7asPpmydDJvTbslkAPoT0VGZ7E4Z1qVNhoCGYDi3gz42LgrX8FWZUNyc7G0Iud1SdgQESu/wffh8D6bV2TWbP8UojOenThHnrQ5+sISQU2FcLECem6x5wGIArEPycq8SS7qlw/9vhXCjeekoKRGORe8y9IyKy7skNtL2j/XZiOYw7ggxG6RefgoasXZs+X4urYOzmmMA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ra19jQ2Wz4IIvHInYMWq2YwwTqqWXJ1ENO/IpHDOc+Q=; b=D/YWktpyMC2UJKw/L9DtaGaZx5F+5zD99h0kFZxJaPuPMlmeEun8g23nfc+cqL5dh+tG75xaQ0KFYPIXuWZ7fuyy5vrhEk0dmIatUDoN3ryoy/ABEq3VTlr8KQu5cM+UdSDqzBxZrRLNV09LTXGdAbAvqqmI8xHjX9FHC9c8dkI3slUeXRq98Lm2gLSUDHt1P3eQ/23bl+fTJD0ijAYckkcHGt6+VMV932ttjT00yLq51IEcttwv4sBufKefYxgd+vytoIfkH0LLH69sNj/Uc53kxbQRke6Ij8wdI+2fW2rBrIAv0FQUAdWs7ca/ayEVH4t4Y9G+JZv9zEouUWuL9g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=weidmueller.com; dmarc=pass action=none header.from=weidmueller.com; dkim=pass header.d=weidmueller.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=weidmueller.onmicrosoft.com; s=selector1-weidmueller-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ra19jQ2Wz4IIvHInYMWq2YwwTqqWXJ1ENO/IpHDOc+Q=; b=ML8KuXpXFppiwubj1TDzkhLssIxJ8D7gvPvaWShfWYdxSxVCeUxqh/+r8Zmxqm99rOOJOo3l0xN8w4LAtobhtScK84SIbMvpOaHCaCZzheMkLA4jOG+tNs8tci4DbDywoF503gqaPRCSnx+IbV0qpn2DCvoK6QMk6xL4cYomy4A= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=weidmueller.com; Received: from AM0PR08MB4946.eurprd08.prod.outlook.com (2603:10a6:208:165::13) by PAXPR08MB6397.eurprd08.prod.outlook.com (2603:10a6:102:12f::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7046.26; Fri, 1 Dec 2023 14:03:48 +0000 Received: from AM0PR08MB4946.eurprd08.prod.outlook.com ([fe80::a732:6327:19b0:b4d5]) by AM0PR08MB4946.eurprd08.prod.outlook.com ([fe80::a732:6327:19b0:b4d5%3]) with mapi id 15.20.7025.022; Fri, 1 Dec 2023 14:03:48 +0000 From: christian.taedcke-oss@weidmueller.com To: openembedded-core@lists.openembedded.org CC: Kareem Zarka , Kareem Zarka , Christian Taedcke Subject: [OE-core][PATCH v1 1/2] wic: bootimg-efi: Make kernel image installation configurable Date: Fri, 1 Dec 2023 15:03:31 +0100 Message-ID: <20231201140332.2145367-2-christian.taedcke-oss@weidmueller.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20231201140332.2145367-1-christian.taedcke-oss@weidmueller.com> References: <20231201140332.2145367-1-christian.taedcke-oss@weidmueller.com> X-ClientProxiedBy: FR4P281CA0425.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:d1::12) To AM0PR08MB4946.eurprd08.prod.outlook.com (2603:10a6:208:165::13) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM0PR08MB4946:EE_|PAXPR08MB6397:EE_ X-MS-Office365-Filtering-Correlation-Id: 0d8cb54d-304d-443b-a099-08dbf27656c3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5MXslMJiTiGoolEa6RKA/q5NUtc4hsbzp/nunxHhRE22Gx07rOX1ojuGWftggDcYESJFVB5m0zPW/L2VFOyE2z9igXGrSvL3SYavYeOKDu1Qh8ZTcbkQ2cAWvbPKkS9KkAek2mSQ1AE2xVpqlzsNU6oqcvFBUBs6/neTViqDV1xTRnPMvAqQJjq0w9TNTKjItpbh6Z298/8RjikK7hFbIiU2V2fRa+oNbZ3LvKFSt0+yucdcYpxORgyIkhoaDSgkYRTcOq4UZSsrfBNNDTh6JuNRHnhQDNP00Rw5v0yYfcH4dBKvAF6rNocdQ7puhrGQmzpeRPMc8QHvlArA7dSbaKgQOzmSoYZNDAHM8XOe2g5NKL1zRBeidCt26hdqx5jEcdt9R+LeN+k9GDVzY/5rL1edE6rVlva7QVy9rqEFeATaNLtMNKNxyyopFMOILdmhChMN7UORQzvHO72LNLz9AfP0yABUyHnBhIKS+bXnQysZbcNKZlBFt02XwsBDSia5VLP9tNahYxLPRc6SEOAn8wsP7VFUnrTxM/TyuO/t0YFduEMMEqF0vtdH6pXmVlsTlcOj1//QYZWiImOCNhxzFJtSJv2mRKxx7GIoajb4rwrWSDHpNh41irl/yfSkxWwm X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR08MB4946.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(376002)(39860400002)(396003)(136003)(230922051799003)(451199024)(1800799012)(64100799003)(186009)(6512007)(9686003)(1076003)(107886003)(26005)(2616005)(478600001)(6666004)(6506007)(6486002)(52116002)(55236004)(83380400001)(2906002)(66946007)(5660300002)(54906003)(41300700001)(66476007)(316002)(8936002)(4326008)(6916009)(66556008)(8676002)(38100700002)(38350700005)(86362001)(36756003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 9L4lzqDX+NYkubDGj0YCujTEWrKsnoHT1C56uOoAt1wukX1qeSdygLVSZ4wo7RogVSQEsimnlm+pN+g6adsPMhieyj48Nm12ubdSKmGGjoBESN5UeVxGQM4Q0m1wV1b8eiWlxsIY7Y3fJRIcWbCcTvPyo7faqbaS9WXkREcqxBUp/PXAT8bjMSGjKWqVRkpRIKO0XfaYbbk6KuCDX42OPwK5AKkEB64Ja9Xy7/elaNi1AzPMpAotIfdWz10U0sPCaWPYWJoyDKx3Lvq3k8OzydT0dj1mnZ1+n/34NPhbG2yI5CNQFRM75kKaeakIwfsm0VNLljf7f+WOTxDFpxgyLTelOLmkiLS6xh6V2f/LbjpSSpKSH9aeIVqEQ/u/CVoV9/ok18QenSvq3OPsFl/aszondVv3c79xb2FZWhG/ZTVq9fE07cxtslMMr4hcB1JmUe7qpbL06pYfK6LerEyAH3yyHJvTiJx8WEx2FZUKjLbjMhdTz8DOTLqIniBeFiogZ/KP5d0a9Ff7OkFDlMN+s0Nf4Zw/lf4WTn4oR2OXmuVdla6jtZ/3cd3zuuj+PcL42lJotdPSB697UwHKTF6lI0+0KpexP9A9H80dgvpdml8vaOskE5pcjJTTKkSaDZfbCSHQxcomsXZagAdONT4R8QUWF+UsIa5lcMsKK9S9NY6t7VbnMhW/m5GObptgNZ25R9oOO4KeKfchc06SaDhf4tLJmt8N9c0QhtHWsts08Dfh0QpFzvPQgSWwBNhEtKMqMSByELOrtxM1yPuAOCsIwLmkMTMg2xwYEz57Xjeo7kduxh2bslgqQey+FltD0LklqjQWxAPIBPytXVPTmbSaigajeqzUmGalBTIKhiol2xUZNNhvWA2D4lnzmTW+YVPLVrFayp0XNNdB+JgJAcEy3+v9DRSEz9R9taeVnbfrgbtDf1bYcO+2+eQbKglxhV7zSgmBX8m/U8zwSO3e2S02etELXolum1kkimLqYytiUkIKoUM0PNZIqHhH529+tMMAvqnLjDxqntGk447pZEedYJxCbfeuFhnL2NMSa5HGxBjW6P8uvreASBPTuILzllpj2ZNH+g880V89kwJgUbwQiyP0jxllkY9KhEegDeAE/rIiAWNM7zYbMpv0J8/6oWZzRID10D9lHHGac0gx96QgMt86F7vlf+NYqjej/vMde16Rz7vG2AEaubpjMIJwpAot8OVzl0memTgthfr23rcKnXmZPl/71B2GXOIyHQW1fHKPRp9+fIv0TNMC6s1xlV0HF5InTh2DL5AlsRLYxlmZ2UB1RyMUT/20Ui6BtuWhlb78JVKcjmhHUuZ8IstSq6ImK/DsB2g7MeJpDztEq6EzLG/nTcDTmqJgOivFSu/hVJMhOVvFlw6Cu2gGlx8llrFXO5mwrkVgPAQImC3YfFky7+t9P1IjAIT0N7JkL2B71kA+ZcvVZzg3MsThqYm+8tDIeQM4L9DPkbRXb6zF3EBJ3JXgQbfMAS5yPULX70PnWb+CWhBPjSh5ZbNRWVtZlhlnRsA2renGSJETfLr0gq5xDQFt/NgflKw853EUaQ8ERjSk9++fNri/hBew5wIHRAvnkBuq3qzspl+6LOj5vW3fimpZFaBPfwA10KQdssWAqENLD3OqJX4W5tW/bzPcVn1x X-OriginatorOrg: weidmueller.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0d8cb54d-304d-443b-a099-08dbf27656c3 X-MS-Exchange-CrossTenant-AuthSource: AM0PR08MB4946.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Dec 2023 14:03:47.9647 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e4289438-1c5f-4c95-a51a-ee553b8b18ec X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: cuGLrPqVQmOue6SrzrHUwUdXXMhiXYAAla9Xc8gUV0JeOBc90Tym+VFW1SSnxGGyZXEeW/Rac0ySByiz0+UqRfHZGLF77m/+UPu5mDySlZmJdRrXRxPFg2omlNz3sTVn X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6397 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 01 Dec 2023 14:19:39 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/191669 From: Kareem Zarka The issue with installing the kernel image to both rootfs and boot partition is that some systems rely on the kernel image in rootfs and not in the boot partition. This leads to duplication of the kernel image, which can cause unnecessary storage usage. This patch provides a solution to the problem by adding a new parameter "install-kernel-into-boot-dir" to the wic kickstart file. If this parameter is set to 'true', the plugin will install the kernel image to the boot partition. If the parameter is set to 'false', the plugin will skip installing the kernel image, avoiding duplication. Signed-off-by: Kareem Zarka Signed-off-by: Christian Taedcke --- scripts/lib/wic/plugins/source/bootimg-efi.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/scripts/lib/wic/plugins/source/bootimg-efi.py b/scripts/lib/wic/plugins/source/bootimg-efi.py index 4f30926f1a..13a9cddf4e 100644 --- a/scripts/lib/wic/plugins/source/bootimg-efi.py +++ b/scripts/lib/wic/plugins/source/bootimg-efi.py @@ -400,9 +400,10 @@ class BootimgEFIPlugin(SourcePlugin): exec_native_cmd(objcopy_cmd, native_sysroot) else: - install_cmd = "install -m 0644 %s/%s %s/%s" % \ - (staging_kernel_dir, kernel, hdddir, kernel) - exec_cmd(install_cmd) + if source_params.get('install-kernel-into-boot-dir') != 'false': + install_cmd = "install -m 0644 %s/%s %s/%s" % \ + (staging_kernel_dir, kernel, hdddir, kernel) + exec_cmd(install_cmd) if get_bitbake_var("IMAGE_EFI_BOOT_FILES"): for src_path, dst_path in cls.install_task: From patchwork Fri Dec 1 14:03:32 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Taedcke, Christian" X-Patchwork-Id: 35571 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id C0EC4C4167B for ; Fri, 1 Dec 2023 14:18:59 +0000 (UTC) Received: from EUR05-AM6-obe.outbound.protection.outlook.com (EUR05-AM6-obe.outbound.protection.outlook.com [40.107.22.63]) by mx.groups.io with SMTP id smtpd.web10.279.1701440334882749168 for ; Fri, 01 Dec 2023 06:18:56 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@weidmueller.onmicrosoft.com header.s=selector1-weidmueller-onmicrosoft-com header.b=4XTHt5qu; spf=pass (domain: weidmueller.com, ip: 40.107.22.63, mailfrom: christian.taedcke-oss@weidmueller.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=e7+i8gut11sWPe24fjjvwmJeCwnTacpn/p1nXVOp1ssXFTZoouT4UthjPPDu6YU1lPO+tv7/EmZLzd0KOdcTMpDkJWDnzQS0fiLDGM0Jb9J44QFIYv6doMjtWuM+mX804QrOJ4uSm9PsBY070H8rpyB2w/zqcsrOBR9RYpeEGGKOyJtDv2Ew/MXJkCNboXdmydg9wUDlKK5I3Hab2+c0Lt+QrbT/kOa90E34c3diL1ljCMaHc2aoCNKi8ODJVokzKvf1PWKHAn2z+BUelqrf48hZFW5YMyvmCEafLB4UL7Q8zraEZcCxFZ6+FlQTBLw017WZXcmKYcj73SQjfc0PHw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=0kDQJ+U07KLodnfR5R/Ft4Pt/x8Yt+kyf3gMBeSEjA4=; b=gDwoUnwZWeFrlu3c9fQG+k1n8r6QxpFkI2vyB1Zb/uahBVb5nweoTdT6InIcqAsN6x4QNrFzVm5DcujV0tWBwzLGqmcnPQXbdDlgefETBbY8LkoAmVcDB41gEY1MvXhPrChnsWRsmIqegur05Codu1fZUHXHZ5A/p5YtXgQYcgu1NPhhc1SO3ntuJMhMIdxdoGFRRPmqIKrhMCTmUwc3kJDKpDC8nTnfZdie2OuCmhafJiOq3XT55+rF4M4zW+r1vXTH0MDI3Q0Z6IkP20QM98lJRNiYJDy7P6Rt5A26LEdLIytcbOv6Ywi/ZLt8uSEleK2yx0uKxy1fg/Q5AB5kKg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=weidmueller.com; dmarc=pass action=none header.from=weidmueller.com; dkim=pass header.d=weidmueller.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=weidmueller.onmicrosoft.com; s=selector1-weidmueller-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0kDQJ+U07KLodnfR5R/Ft4Pt/x8Yt+kyf3gMBeSEjA4=; b=4XTHt5quhbdl5Vi0fGMYm2/GUfBFQ4wTPxjKR7qWLNZndt9uSFqzOFFn5iSEeFzOftUJltodPbJOrZ3vxvGtE7TuFxHIQsE5aLbp95ZZph39H7S6HHz8sV1WWU8gRqa8PFsOLSEK3s5SlgXwSnUrpMgTdSY+k5XtNqMD3PfVQqA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=weidmueller.com; Received: from AM0PR08MB4946.eurprd08.prod.outlook.com (2603:10a6:208:165::13) by PAXPR08MB6397.eurprd08.prod.outlook.com (2603:10a6:102:12f::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7046.26; Fri, 1 Dec 2023 14:03:50 +0000 Received: from AM0PR08MB4946.eurprd08.prod.outlook.com ([fe80::a732:6327:19b0:b4d5]) by AM0PR08MB4946.eurprd08.prod.outlook.com ([fe80::a732:6327:19b0:b4d5%3]) with mapi id 15.20.7025.022; Fri, 1 Dec 2023 14:03:50 +0000 From: christian.taedcke-oss@weidmueller.com To: openembedded-core@lists.openembedded.org CC: Kareem Zarka , Kareem Zarka , Christian Taedcke Subject: [OE-core][PATCH v1 2/2] oeqa/selftest/wic: Add tests for kernel image installation Date: Fri, 1 Dec 2023 15:03:32 +0100 Message-ID: <20231201140332.2145367-3-christian.taedcke-oss@weidmueller.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20231201140332.2145367-1-christian.taedcke-oss@weidmueller.com> References: <20231201140332.2145367-1-christian.taedcke-oss@weidmueller.com> X-ClientProxiedBy: FR4P281CA0425.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:d1::12) To AM0PR08MB4946.eurprd08.prod.outlook.com (2603:10a6:208:165::13) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM0PR08MB4946:EE_|PAXPR08MB6397:EE_ X-MS-Office365-Filtering-Correlation-Id: 55de96f9-5feb-4ed9-4263-08dbf276580a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JOxiIxb7OAd7evr9vjdh06mEu7N2JuZYQ6gN8Dk/rpdAj+CQQyy7VgMHHIx26ShhDEpNOMZoEO8rRovJ0V5n8EBjOYuRClSOtucbm9iTy7JQ7UpxsdkXW2lVo/XUwQ26ys0itvjE1pbRLEjDTYrH6W4n4JsZ0yODjrUrQiBbAX/erDYFffYekxTfjvVX5hY0RjcLjz7YXCZl8Eg47RNdOweRBe/ptS2AOmG5hm+tp4JN//WVbPEiEUCypwudYXrakhXw4sqNZfIfEl1TxvlZMnVoA6Ai/0NNJEqjqhuKwuc5LMNRLnxpxfPrbDBxZOynDoMLPVWrMDxWijRpOPvcVZ62ZKsvFla5Gcc3khQ8A2Z30RmmGcV0yVt+CFq0gJ7OD2bQr2t7AlTi/BB40UqOXVPJRTYmpOVrsMcJHiR2//pzE4sUTFZ962cqpk3zu3nKpV5ULMlZdUVuzdzM46O9/3ZdsskNvkKr6BfqzkCkH48yURDz+bpLASUdj/6K6N96d5qAOvvqUnlwcUiMUS4XCr0PIzW3dytBM2qF6T+7Jk50ZAKqcm8+aq/zXHNJ0NTEYuJd9ozMDPLK542+6/H2o9ptzznB22gKcpifcyGeSevwh7fa+JafBzt+2jGALj2f X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM0PR08MB4946.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(346002)(366004)(376002)(39860400002)(396003)(136003)(230922051799003)(451199024)(1800799012)(64100799003)(186009)(6512007)(9686003)(1076003)(107886003)(26005)(2616005)(478600001)(6666004)(6506007)(6486002)(52116002)(55236004)(83380400001)(2906002)(66946007)(5660300002)(54906003)(41300700001)(66476007)(316002)(8936002)(4326008)(6916009)(66556008)(8676002)(38100700002)(38350700005)(86362001)(36756003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: ZvN3rL3JWIP8F4NEEsXKRwDDJkOX/GDFJR4ye6N25Yw3ATBP9QAbDjpKJJHR4fSsEhwxj+XPKYStqpMg6EfivMVdXgQfSxhbcvIFSrRvLpDMdECwfpxnQuPI6WuF1ZPIMR1n95Mto+aKqMZiRCbbOPGEhIxMtHHwrNKpE2Ya/KMPRAniZreBkAVTGSewV4BfuqSPyj+bfs4mJBb+yY0WxmWaZATcXdvaROtO+/Trrraq28cXO/R0w6Pt2b5Xep19Mxwq4DVSqlcIoXVrdY6rAYqL+p2j4gD2z+kd/d+HeK9N/gs/n8XlkrAAgYuvAk3CBZLHnHDlxYW3HVFN77YQ/2KEWABFbAZyhVjOrD9LvnDHT7oD63y8S7oLwcA9sF8BOGmw4qlhJWurofXa3azRNC0jCOsdCJZ54LKrYspICn8Byz+72ZeetJ8Z53BhO6kk/BPbr583akztsuG22CLAbT++cn7tjQNX4b/4Lpoqb0wk8IfLxcbIDwftvq2z6AqBoA89IoPSdoTl6IxfFr5A5vZm3D0oalmWsBygyNzxTofVKeYDAPHQYY9q6PgirMCZ2VgCFsC+yM5R7N/pPd4DFwhBGmx2j5GGlH1n3biCPYTKCnZi9ZdoGQ8ZTRpELZibvDqSxbg8E5gdegdvPhIyIpcagyyUpKQExVB6bUKfI88eF+LX/+uOqmg9DpjeexEQCv9x9MRuRVZZ+VFakN4Qnzm+G0rD8EHmpcBte1b56k46wL5PfRjIGJa5j8hZy6nUTodhWtYOM+bAVYWgLO+coQ68ltzsrzCEBCt6Qp0dTcXVnGDB0XT+/OXyXqZwbVWykJQjb9ghFQk9AG5nBzU2px+Uo2iRa0zITO1SqxtviB7GxgGkzQqISnMUDp+MdN+oJU1DypMQ7hRQGpdxYI1CJxJ+VWyuApsB+IKqPOiw/5XBofQYeCBAwIuC2bWhjKiqXF3yKtuA+SudH3uKpPq48njBA+GwCspvMlkX7ZgMw8aEHPxE3vgaZRozq1eYk89sN+QNc1UQvmmM9nC2Q7MDxhZ3XVbIKjYA2nQC36prYnnVEJZ13VEUnNlwRonOIm/Hy06xtzae2HRWeCDluMmfA3Z2AkQn5aezxIxAMDwChmBv9pFj1eZB9oa/rKY3flmIlgLdFCoCvcWsTmmB/AA0uK9dgTNutOycaqI0mQx4C3Nt4lY9yuchRCKY3Q3ugtlqpzo0YeDT7OodeSBkjmoArKuZNlO/iRx4UmCdktHc9nKF0h/Te8tISwZ2sd22XNaXgtLgQUy0B1NtZjUyHIPWHikeK8VRzuo/0LClcqV1qsoid5Gs1J253CkU9PVZtX9fYEtWeBeBF4JkRtK6bVpa8ofD8CqMONlqqKa9zjGGx3jK/qbEWhZVBP0q0ORP8+4367kNj/dKH4KJEm3mH8dzH2EETJu+/7uGGxvAPU+V7eHV8JHAl+dzfADtlQEVikpND6ZJzDRzwt/MHFgBy9C/C0UidYJUcpXR306AaaYBQhFjjXGvkvdq4M+iLqhm5HqRR/LW2EFVUvQXoF1M9BzRI+sN4V5mMvgtMHVi4MQA/Sn2Hl4IxBpX6p0vxWDRp3ye1aFej7pv8uhdrjQTQOKK3E7gKEivLcUbSwYC3EVQU5E8ggGDukrJFSDaG0/Pw978 X-OriginatorOrg: weidmueller.com X-MS-Exchange-CrossTenant-Network-Message-Id: 55de96f9-5feb-4ed9-4263-08dbf276580a X-MS-Exchange-CrossTenant-AuthSource: AM0PR08MB4946.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Dec 2023 14:03:50.1057 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e4289438-1c5f-4c95-a51a-ee553b8b18ec X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: DJwOEc64iOqkYonDyLH58vQphq66r+VIZg/uPr5E8b+zM3YLcgIBiiMQ3cXLS1zpdxZOgKUmDvkVai9z6mjZQ+sraXGUbOUONp9EReJNmJcP8JDFQmnIuc127Waftn8U X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6397 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Fri, 01 Dec 2023 14:18:59 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/191667 From: Kareem Zarka - test_skip_kernel_install: This test verifies that the kernel is not installed in the boot partition when the 'install-kernel-into-boot-dir' parameter is set to false. - test_kernel_install: This test verifies that the kernel is installed in the boot partition when the 'install-kernel-into-boot-dir' parameter is set to true. Both tests use a WKS (Kickstart) file to specify the desired configuration, build a disk image using WIC, and extract the disk image to a temporary directory to verify the results. Signed-off-by: Kareem Zarka Signed-off-by: Christian Taedcke --- meta/lib/oeqa/selftest/cases/wic.py | 68 +++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/meta/lib/oeqa/selftest/cases/wic.py b/meta/lib/oeqa/selftest/cases/wic.py index ab248c5898..4ebcb76cc4 100644 --- a/meta/lib/oeqa/selftest/cases/wic.py +++ b/meta/lib/oeqa/selftest/cases/wic.py @@ -16,6 +16,7 @@ import hashlib from glob import glob from shutil import rmtree, copy from tempfile import NamedTemporaryFile +from tempfile import TemporaryDirectory from oeqa.selftest.case import OESelftestTestCase from oeqa.core.decorator import OETestTag @@ -146,6 +147,73 @@ class CLITests(OESelftestTestCase): self.assertEqual(1, runCmd('wic', ignore_status=True).status) class Wic(WicTestCase): + def test_skip_kernel_install(self): + """Test the functionality of not installing the kernel in the boot directory using the wic plugin""" + # create a temporary file for the WKS content + with NamedTemporaryFile("w", suffix=".wks") as wks: + wks.write( + 'part --source bootimg-efi ' + '--sourceparams="loader=grub-efi,install-kernel-into-boot-dir=false" ' + '--label boot --active\n' + ) + wks.flush() + # create a temporary directory to extract the disk image to + with TemporaryDirectory() as tmpdir: + img = 'core-image-minimal' + # build the image using the WKS file + cmd = "wic create %s -e %s -o %s" % ( + wks.name, img, self.resultdir) + runCmd(cmd) + wksname = os.path.splitext(os.path.basename(wks.name))[0] + out = glob(os.path.join( + self.resultdir, "%s-*.direct" % wksname)) + self.assertEqual(1, len(out)) + sysroot = get_bb_var('RECIPE_SYSROOT_NATIVE', 'wic-tools') + # extract the content of the disk image to the temporary directory + cmd = "wic cp %s:1 %s -n %s" % (out[0], tmpdir, sysroot) + runCmd(cmd) + # check if the kernel is installed or not + kimgtype = get_bb_var('KERNEL_IMAGETYPE', img) + for file in os.listdir(tmpdir): + if file == kimgtype: + raise AssertionError( + "The kernel image '{}' was found in the partition".format(kimgtype) + ) + + def test_kernel_install(self): + """Test the installation of the kernel to the boot directory in the wic plugin""" + # create a temporary file for the WKS content + with NamedTemporaryFile("w", suffix=".wks") as wks: + wks.write( + 'part --source bootimg-efi ' + '--sourceparams="loader=grub-efi,install-kernel-into-boot-dir=true" ' + '--label boot --active\n' + ) + wks.flush() + # create a temporary directory to extract the disk image to + with TemporaryDirectory() as tmpdir: + img = 'core-image-minimal' + # build the image using the WKS file + cmd = "wic create %s -e %s -o %s" % (wks.name, img, self.resultdir) + runCmd(cmd) + wksname = os.path.splitext(os.path.basename(wks.name))[0] + out = glob(os.path.join(self.resultdir, "%s-*.direct" % wksname)) + self.assertEqual(1, len(out)) + sysroot = get_bb_var('RECIPE_SYSROOT_NATIVE', 'wic-tools') + # extract the content of the disk image to the temporary directory + cmd = "wic cp %s:1 %s -n %s" % (out[0], tmpdir, sysroot) + runCmd(cmd) + # check if the kernel is installed or not + kimgtype = get_bb_var('KERNEL_IMAGETYPE', img) + found = False + for file in os.listdir(tmpdir): + if file == kimgtype: + found = True + break + self.assertTrue( + found, "The kernel image '{}' was not found in the boot partition".format(kimgtype) + ) + def test_build_image_name(self): """Test wic create wictestdisk --image-name=core-image-minimal""" cmd = "wic create wictestdisk --image-name=core-image-minimal -o %s" % self.resultdir