From patchwork Mon Sep 16 07:13:01 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pedro Ferreira X-Patchwork-Id: 49248 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 480F4CDD54B for ; Wed, 18 Sep 2024 16:57:59 +0000 (UTC) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (EUR05-DB8-obe.outbound.protection.outlook.com [40.107.20.71]) by mx.groups.io with SMTP id smtpd.web11.20626.1726678669093856824 for ; Wed, 18 Sep 2024 09:57:51 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@criticaltechworks.com header.s=selector1 header.b=ZKQrUycf; spf=pass (domain: criticaltechworks.com, ip: 40.107.20.71, mailfrom: pedro.silva.ferreira@criticaltechworks.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=csBzaUPvYPVpgbkhjpjnaqi3oHiuVJySr3OiFTHJSVycoWgGdKj3z9pX0NQBafFFAHZkdytOunZ95X77Nyf9y2C7F1wxXDwR6IbqkfVMaBSbmCJ5zkxcfcNZrJyqpxqnLhiuI7Clf2kLZ/uCdteOyf73GR2U8oWupfeLoBnF4ZcR8DvdsSfvsOUuN9/M9fx3ceQ2+eezOt3/K/X3ZtdaiGKXqtVwStsr1g3RfQCRpxnGle7wZoy7pneWKdP2XYbyPZ+CyygKimvKoDFgn+6X0XH96RLh8zT168J5GDh98vOAyX2mExGgOpTYQ3Bdt1aVkzSTmw/YoaQJHjq51MEmmQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=ZjAEFUPZZkRURg46jS8nMwxsT87IDEG3j4BjRMOk5C4=; b=PlHkqHNibnYEJf0o3/ENqLEnZKuwmsdI3LJIBbaea85oHsxxMxRS73iZ47QUj9Lpvk78iGrQqLYQdazDlAuq7uujDd8LzSyDMD+im4EneceTC4gdAYSiAi4PpdP/Ydlxflb3d7Bc1QLSUY6IvH6ufY0LJqxOUdue8H6pEEINqd9vkNufm6zJ1uD48/7HBiAxoGcqUkT17PrfyimoMCm63mdxZpmp6UJb/DthmEfYh4SUL46cA2EbzjYW7LPfy1jP3WmiuInLIkoBVVcrLsRlXgIrME8YWk/zPiFyfXSq9sqBj4J4FPUVOmxjjTzqx0MnhUctuWiUYtsq5ea0TYZVYQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=criticaltechworks.com; dmarc=pass action=none header.from=criticaltechworks.com; dkim=pass header.d=criticaltechworks.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=criticaltechworks.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZjAEFUPZZkRURg46jS8nMwxsT87IDEG3j4BjRMOk5C4=; b=ZKQrUycfUY2B3K8/JlQJXARffevrNREhOdmw2mz6/8GrttwLG0QSKUCVXq2XqavL3/N3oXUeb84nfzfa5tTBpMGECBQhd7/SBBOoIn4DFRlG7OryZtm6l5a92/rSuWoQvSkC1gZb+gnYTl7QP7caclR/pR1OKXtql5iCN1wrEGhC/yEk0fI2x9Xj3BdQlWFNQHxDoiKr8B3ETCHyytmSm19M4lTekOzveenM94MRryoC43IRYs+4FLc6FKPCZgHm9+TXMQ57zVymJkPrRAH4NbEwN69mJ6Rl2PB5wulDO+U8p2T0lofGJxSqgsWMLoZoK3ctsTyBTQzRLIaLJ1xRZA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=criticaltechworks.com; Received: from AM8P193MB0900.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:1ed::9) by AS8P193MB2030.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:40d::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7982.16; Wed, 18 Sep 2024 16:57:45 +0000 Received: from AM8P193MB0900.EURP193.PROD.OUTLOOK.COM ([fe80::c359:f497:ed59:65a1]) by AM8P193MB0900.EURP193.PROD.OUTLOOK.COM ([fe80::c359:f497:ed59:65a1%5]) with mapi id 15.20.7962.022; Wed, 18 Sep 2024 16:57:44 +0000 From: Pedro Ferreira To: openembedded-core@lists.openembedded.org Cc: Pedro Silva Ferreira , Richard Purdie Subject: [kirkstone][PATCH v2 1/3] buildhistory: Fix intermittent package file list creation Date: Mon, 16 Sep 2024 08:13:01 +0100 Message-Id: <20240916071303.2831698-1-pedro.silva.ferreira@criticaltechworks.com> X-Mailer: git-send-email 2.34.1 X-ClientProxiedBy: PA7P264CA0266.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:375::6) To AM8P193MB0900.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:1ed::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM8P193MB0900:EE_|AS8P193MB2030:EE_ X-MS-Office365-Filtering-Correlation-Id: 5bda394c-bbb2-4892-077f-08dcd8030441 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|52116014|1800799024|366016|38350700014; X-Microsoft-Antispam-Message-Info: M5fZwE9sTAq/6L0r5b9KFGJU697N1mQFJ094boWJZfY3n5It9Cnwke6U/wpMpcv6VklmzmZa8t4xKefSR+dOfidxpOV2zJpQGhc/chD4uuNKypkimF7xyOGWkmJqIQwffNcJBQEKIxLUNbE3Up1KYqHv5BxKRHea/AQ6zk5pO23RLaJXTw7F+XwRXB4ndqxs2EiTqa1+JimgGj3WsooE46EYmw8Kw+unaXt/y7lo4nsmIXGGhbhVcxEzbHIcQkH+2zN0LKyYb41iEgQroe1mpm6ABKgkGIfxVU9PKZ5Yie82agjfw5ZKUMrEcYqw6JAFg+jG619c7nx7NzGK4nCi95dgQZCUt209fcjD7/cBHLzD6aoyG4u2opyb3AdB3UwL0P/WXkM3dJLL4PqlZh6vMr8Ir7T1EMSKfVrIB713epypaCtpvvhAcQot0o45vNew2PKNG4gSHW/HoRwORI6ss9rdt9Pwnq6IUWKNgRHJ15h7cIpm+tF5X8is63rI10pn7/87qARhmv2G5mscJrYsiAzobuUub/WIUu1A34Osx36l43EDzIicdj0IkIyyiVg6rtr3+2MgRdJPHckHPFSz07ETDkA11g0S2HJ7Cnq86tlqAM3dUqKNEjIdwZgPfbYwHgBAKY2meAjO1yJ/EoV8Mfqk+QFjN8UKxV2uAYlO+NIOK1wgF02N9mXsou3e+wJ8rZ6H3cOQG+1l0AUAcrjNiXqxWVEK1q+JcOU5DdOdK6ycBk06uZMSXn2YoSFNUAcQJ0KPNkY6V5y8BZedYiL9PUqIu5W8IN0v2MT/D2jd0qYN+/RZqOMKr9FkZrikPpWwiG5Ay/CEsti43+goVbb48fyPSL+GuDjmcpnfbHrcZowyAN33wdPQpg25AhHnPzDV3V/fmyVjibA+No4crMHHUPgh3Nr4RKRn/Qp7/S/TWMjS2wLq1wcE10O8oBPEHmcle+kGr4oUoqV4Xlqy8SSDO/XlawI+bEXWWtZ8PTLQ4PkAvxuVa8qSRYvFZCI6EHkgvzUtNY412KV8tQpyLhH3zOsipq5MCGdmAyAuUWMsBEmssH7kU8qNHZlPq/5k4rCYC2qaUZtKnH/3LnBahpfajDSvyCUOnViMsjK3f0CHNt2+t7426GNxSeA6wuZw5OOf4kJRsYzUCYLCy+jEJa0cF967+bJ8DWIoMVXTYklMoHOy8ox/m5ZbXpgCG457lsyAbrMmY8NI7etD9Qlv6lGhljCucgjWQho818QjCjAwpuiBRn7GwMrZ9JeQMM5Z77qOUldG09ffAHN4osxms57l8/z9t2gpX+XxjFARMESPBoapv7FV8UJcXwizuQqhVu6EFmcy69BZjtUe+dmqWqd4TFUYUK8Sb+VfEIfkTuRoJ7UJNLSjrdBhAHBhQfqxbCMSzYof5TZiPegP+AcRhLeZBg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM8P193MB0900.EURP193.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(376014)(52116014)(1800799024)(366016)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 6BdZe8S0o/5NDSt6t+/qaaxqNd314x43uwph6QE4FW0ERzzuKXncH3A2EG9KJOkSIeJ2yH7ViS4une10IA0ZLNogFUj3W2UwJMSMcDt9q37guM9RgQH/Oku9VZZJKp+vBKFx2/AZ0taOBJ/ezn7CWCftTiQdfo9Mv8o8vH5BTus3cz0EeqJvk9G+JhmuQ7uPplyrDwwUH8OsZnebMOds+SymNSu66qDcWZUBQQ3ZVmTw2dlzYzkMBJ3kry+JnCQ30AWel+tLcZaq57uR5qZ6rT7k1aqMSGUorouhhFgjcMgSE3X7gWYCDWVysbttsSodDKOVFxs+vhuUoukhFK0B6KG6jIkGjmVnQlVmMcAsAyfK7tiMtugbXyq4A7lUhJ7Zih238GU9DjUxYXODpMZVoGJCND1CMv9zatuQAolt3Fg7buDk2AubyFqvKDACCu5c5AZkdEuYR2D/hmyP6zSunmpfwoH2+URqooquQomQCtF1cvOtal9YDUMOPCmGcCRyS/1+ukrDXEfznVAs0GxYVSYbOeHLMTGeS6XY+yyMJjEKI0s2sWv+k/x0LEO6wKG6TwZqkXEs/7UhDu7gr6K1IMR1TqmAz8CWQKTDwCGJOOqcmrm2eZ0nptX8paa/5XkpFJ8af9rMzgdNtcQ3VQ9A1AHp7eivM6FdAgcoJMdeUspOI3ZM7THZ/QnFkmd+p7A7pDlTGusmGOX4GX8ptEgUP1TXwNMiVai4gzjRb+N23+3qEL0/XzGG5jKvPQI8nbkzu5rL2p7rBNTS7Bg/A+04q4oMuuh+xraTkEf/H1AEUfl2dv8bG9xplN9sTjcR1+IPEXl8TytugiururH5YaBJYPcQLPgkDCXnUf10Drt2Ovc0gmpYmPyN6zAwgkyGLsUrgL40TFgUBgx6G65Gfj6c7RfDg/CfyRuGsk3HVjIwAeIV+wHLpHh3+VTR+L9lPBBaFBvz8pSemNJJJlYzhnJ1HVGJxBlYQGKU7mE5Y/7446kcjBspOJOlx00M0qE/9HBf36P4kqb+tE+6m0CQT0B07LWfe6YyHfh0EWI2QylKNv1w5CfMvtFW+iu2N15WlVYTOOioEJ+gES+kAqRYI/fODdH/N/LtmEui9R7jsT4Fnq7DpxTDZ9SmsUr6M+0nP2u8PNRINsLNEejTz6sd+pVhTsAsigHQmPkV7q02R6sN6Gr4hgo0NJBmR+7mw3fnivnqKm9lLVARZrE7o/tq2f7qBEhBbxfsEC/PxNdi8RVL0BmGf7JWCK4ELSwmpW0F7BG5mHUlU9hCZ5NkDeNCmWHUgdTLDgEP5K5XN8yC4q8FRJwnjpPoKbV6xXM4N50sgW+PXfFs+URlKPyzX+/RCaY0Oun2cfcg/01GUX1lRbqlRR7Utsa73+Gp11iq2vDukh2LY2UACTsyki/Ds9AudY0nPdAw8vIKWCXl83Mr58kX1ecNuc8cmIXvIN90V853jAoKTkzwr2pbdYYdtd06AHhlw2i57SRk7aKvOqGj+dC6rMzE63P7LOHl2mJAEGO24H9Ebe/r6dNKvI7Jbz7ncv+zopovTmj4m1Ejr6S+FJ/r0TCwXmilvUSMhyhH2CrhMlfLsiRH0HkDrUIGsR9TvAZt5zaYL8hPEb6PVq5/nIo0FH0= X-OriginatorOrg: criticaltechworks.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5bda394c-bbb2-4892-077f-08dcd8030441 X-MS-Exchange-CrossTenant-AuthSource: AM8P193MB0900.EURP193.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2024 16:57:44.8955 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 61f30b8e-4f6b-44fe-9bc2-041e3a9f7346 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: qJiUdw/4p+ccWbS/jq96eVTsDZsSVq/0TR6cWlOLj4DRPpZ265Niazs5VU6V1tHMSGIv7TlQ/EfpPv/ou7+XtlSlKDTZBbYz+BipQLF4IW4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P193MB2030 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 ; Wed, 18 Sep 2024 16:57:59 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/204650 The directory that buildhistory_list_pkg_files writes to during do_package is created by do_packagedata so a clean buildhistory doesn't have files-in-package written during the first build since packagedata happens after do_package. Ensure the output package folder is created to avoid missing files-in-package.txt files. Also it ensures that in case of `find` fails we leave with a hard error instead of hiding the error on the for loop. Signed-off-by: Pedro Silva Ferreira Signed-off-by: Richard Purdie (cherry picked from commit 8de9b8c1e199896b9a7bc5ed64967c6bfbf84bea) --- meta/classes/buildhistory.bbclass | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) -- 2.34.1 The information in this communication may contain confidential or legally privileged information. It is intended solely for the use of the individual or entity it addresses and others authorized to receive it. If you are not an intended recipient, you are hereby notified that any disclosure, copying, distribution or action in reliance on the contents of this information is strictly prohibited and may be unlawful. If you have received this communication by error, please notify us immediately by responding to this e-mail and then delete it from your system. Critical TechWorks is not liable for the proper and complete transmission of the information in this communication nor for any delay in its receipt This e-mail is environmentally friendly, just like Critical TechWorks, which lives in a paper-free atmosphere. Therefore, please consider the environment before printing it! diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass index 4345ffc693..b35508db27 100644 --- a/meta/classes/buildhistory.bbclass +++ b/meta/classes/buildhistory.bbclass @@ -597,15 +597,12 @@ buildhistory_list_files_no_owners() { buildhistory_list_pkg_files() { # Create individual files-in-package for each recipe's package - for pkgdir in $(find ${PKGDEST}/* -maxdepth 0 -type d); do + pkgdirlist=$(find ${PKGDEST}/* -maxdepth 0 -type d) + for pkgdir in $pkgdirlist; do pkgname=$(basename $pkgdir) outfolder="${BUILDHISTORY_DIR_PACKAGE}/$pkgname" outfile="$outfolder/files-in-package.txt" - # Make sure the output folder exists so we can create the file - if [ ! -d $outfolder ] ; then - bbdebug 2 "Folder $outfolder does not exist, file $outfile not created" - continue - fi + mkdir -p $outfolder buildhistory_list_files $pkgdir $outfile fakeroot done } From patchwork Mon Sep 16 07:13:02 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pedro Ferreira X-Patchwork-Id: 49247 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 49E9FCDD54C for ; Wed, 18 Sep 2024 16:57:59 +0000 (UTC) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (EUR05-DB8-obe.outbound.protection.outlook.com [40.107.20.71]) by mx.groups.io with SMTP id smtpd.web11.20626.1726678669093856824 for ; Wed, 18 Sep 2024 09:57:49 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@criticaltechworks.com header.s=selector1 header.b=DLmUsxo7; spf=pass (domain: criticaltechworks.com, ip: 40.107.20.71, mailfrom: pedro.silva.ferreira@criticaltechworks.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=BVG9skF0kp2sufkUMhooGNIYUUZySAnzP1lXizGKZN3NoRJWdEXuf70JDi1ieIJuQMrRksEXgn+7iOkAR9SpXu7I/rlthIj3482GVNdgmMe4usgCSvtLiXooFNSwdmafMJTVPlKYoNbBMMmjRTSNudYNek9xJr4nK0tzRq6w4nXctGJpXrsmRjEpVdPAbKGPBTz9ksa+dUcxoqAK56lYsePeRjtnUmJ3CDUJBO26y66tc7rAQ3z4OQo4Jlq9lYV3BiFQUuj9iBG3tSmUyD7yoeFnewgRTWA/pCpMfH/Yy4dc2pbNVcPH7iCghPQ5rXLluCcDa93vqJOZj+HoBkrUDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=2Frgdx81Hi2PIMQcBxCXpJETDucKCTu6qFB9haTRnO0=; b=J559Guy19v/AHmSBcPUTauVMLSJIERzYdISTGdnZPj4jUbx57FJ9Nh/ES9pbC6TnF1Txw4zz4+WC8Gn23H5l7ptGYpeyLuI/zL6Sp5l8IiXE3wISwmm0hWEKnNyvDtDYXUeUmi5w09zeIorZBC24IT90IG1YpnlYSxyvenmiFdxhnaAGRmenxh8BSv6Td8JiP1DwrsJsuECvK6ezBbrsUZ5Hi/ge+Jguu173N4Eqs8hGSnzQQ93r6J+7WEA4MnOF22jTHXhobKcJbVyC4eozDfxVB5pChCLgVl6xdYvcbs8VsJ19yiqSmqoQNOd5Xnss5a4JoJjJ+AVG1FTAsmY0pA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=criticaltechworks.com; dmarc=pass action=none header.from=criticaltechworks.com; dkim=pass header.d=criticaltechworks.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=criticaltechworks.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2Frgdx81Hi2PIMQcBxCXpJETDucKCTu6qFB9haTRnO0=; b=DLmUsxo7IawScGxgqmj32xcJxWO9KA+hLMw7cTTSvUdHvrFuGJtbNz2oQn/tQ2B0RrwcbqRdiAQSxcEpKWbdOPhiHYk7U/p0NfEqPD30w0ZRt5fjMAdxYQIM/nWX7vFlDr5a9Fa4jmGqQUGnoU7tFUXGMuNaBDjFN5WlzO+L++uhr/6z8Qut8mxNyAQQ+vRZRGHUZFRfpRmWtyktWvMQBARRSFSHY34T29LMXljTDCzjyi2GYejZw/xc+KIH9bi88UTftfmsLDikdZ8KaBKDxCkr+KnIIAy9rZlxT+WyJu64ZwHy6jtjEEKBQEVeMDzyazOAezDwppl0CmWwK0uH3w== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=criticaltechworks.com; Received: from AM8P193MB0900.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:1ed::9) by AS8P193MB2030.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:40d::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7982.16; Wed, 18 Sep 2024 16:57:45 +0000 Received: from AM8P193MB0900.EURP193.PROD.OUTLOOK.COM ([fe80::c359:f497:ed59:65a1]) by AM8P193MB0900.EURP193.PROD.OUTLOOK.COM ([fe80::c359:f497:ed59:65a1%5]) with mapi id 15.20.7962.022; Wed, 18 Sep 2024 16:57:45 +0000 From: Pedro Ferreira To: openembedded-core@lists.openembedded.org Cc: Pedro Ferreira , Richard Purdie Subject: [kirkstone][PATCH v2 2/3] buildhistory: Restoring files from preserve list Date: Mon, 16 Sep 2024 08:13:02 +0100 Message-Id: <20240916071303.2831698-2-pedro.silva.ferreira@criticaltechworks.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240916071303.2831698-1-pedro.silva.ferreira@criticaltechworks.com> References: <20240916071303.2831698-1-pedro.silva.ferreira@criticaltechworks.com> X-ClientProxiedBy: PA7P264CA0266.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:375::6) To AM8P193MB0900.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:1ed::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM8P193MB0900:EE_|AS8P193MB2030:EE_ X-MS-Office365-Filtering-Correlation-Id: ef85ca5d-dacd-4535-b81a-08dcd803048e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|52116014|1800799024|366016|38350700014; X-Microsoft-Antispam-Message-Info: VTWBq1Dgdpzf1wTOlYuPGoEXY5GibYgllg7K0eIU/J2cK10o1zEhIXWeRZCZU1v4BbT5P0t+j27VsOQtGrUGeO6S2jRX9nUGq/MXH+2G4R7UeCBccKaA/g7cGONVwJPc66pSAngWvU8fA+GP3TMfWS4NTs04gtVHNwfGz0obRzR4SF1QuXSnmpe9v8lnRFoC5dmQlpw6zIJaSoDV7VtATnLn37t/mgE6YppUV8oOcNyNz5AvUGfOgZrSz0pZ7UB5eiuEVanfZMucQkoeIMBIv++Mzk5GTKvC54lgffBmfxxEn2Nr/Es0LhXZ18t1Rdv7aB3RHe6UtggQZ62SCKUSvoP47PxUoXLJq4M10V/CV/DZsuCADRtggPogemzbRAcRfphBkNYCkGJryjbxiP2Hsm93SElEoD0vgf7Xk+O4ukqHGdL0VQQRrDUPgzkVoRo4OFKFt0dYpusGkXVt+pK4pU3xEoyV9Lcq/T4GvEqZWdQ2f1D6utVEi2xV7QqzphfQt/cOKa8cLzrEwHhbD8Fyv2r/YU3pDsG4Gt72qlWSZIVnEnZXuHKeWQ1mAgqeMCbKu/ytfztAXS5i/A79sTJbOGxnYWsUIKH1zd+dPxCH0ikSTAKsweHZdf9hzSo2FebWQMIaoEZnzixaLcGTG+m2zGfL+nHmkJhUU/FZ8hvD1xKuQ96FzVa1KjUMm18KnlmdWHyGpVl52DyRq8CxrGavSCW+7e1J0G99UYAjsc4YxAplFmi2R1cOOduPCwskuZ3sTUsLFN/XcI4t4jOd69Vw+DJFMInA72DtW6Alit3pCLLgmKnjqqFDejUTi8pg/JWuvUtD2ZdFmbEzzJQzyAljvL73uwaNCdWFBWbyDxdKnpFBH1ZNwFya0kqj54qfEsXNhbqwS8BrIvLundo53lPLMSJTqXxbs/Ehn3j5IZBa+WFHrk3VctS4oYhnm4jtZd8pJli8NBH67IrdWqOop9Zsu2Y5HR2rnXIfjkDh+VwGqayO1MZd2R7xYY5YPW15TU8HYlSNPTmDtHxGRdb84ew5FaxXY5qnY3TJTl4u3oncolWyW9sX4W++EIirA7WrMyg/NOmo72r99Pr6wLg2vRJwYfbwYvtCJmf7CguSiC0sq0AO6BuS9Sp4DPSjW+eL3rfWK2o58lAJkYluvOIRHABWPLpU6CrtmD5fdaKoN/8Jpfn8VKDeu05kIVpYGHi6AKcXon7z5z122U/W2oG2MEIdx3IVxHgC+KcNLNDWxlwsZOkc0QvQEQeOq1Za3wOCsh+vSgyMijEIKL28XukyFYNoXPV0TF0c40lpGKPDdlGHGVR34E5Moc0DY0KitoPfvWaZ9MeBotoCQFA+raoXJXrqUQGlYCVRiPTHZDTqEBa05AGXrhflxF7OWyn8uHZvkptPiX4IEyjlENHD3E4uHrKNHA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM8P193MB0900.EURP193.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(376014)(52116014)(1800799024)(366016)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 2K9YLJH5Vqo+v7nTBqdvWqOmwgkIYhbZ28K3IUXshxb9GrsGPydEZO9YM4a0s3QC+A7S+CNGz91fFxRbSWfYirVTSzBJL9oVOOYizfjC/4KTLyDxjckBMBb9lmCkbs5Oankc0B+VebZFGTCydaU8ZYzK1LncfNPyRXp1dlN8DOjuWXZld3w7fRdte7toj1U25NFiOKeIjHZl0vRY39R5kXadgnntkRVhQXEWolOauxlY2RyA2ROLGg+v1Zxv+t/0YOLVLAwo4z+uiVlQfoe23F5ubWUUB1N7hwwo/W0UVLI5ZP4BYOG0nWSPb3dTwZY+fz+DN47gJnhPVZnysKOf817QRSQzjx4uBeSxuTBVOlei/E0LHQBKYU2Msb3P043fEDcH5Y6op68WAJIByvMcQLKsxiVKhiuiNAaXkinh1VRuxHlcYGFQzy8/eTfhJW0qkVr0DqLGwlLmQR+TdhfKhMdbdSVfFgmAUBc+z1PODdndsqDhfbPhNPskdQJwpgo99EG+rEPuKzR5EDbLywP7KS7y+QWpsqhgyCCdW1YKV81A62GJLaLLHR7YgLwiszpT8EIaji0x4sbP8LVRZ0igvWc1XzBIFYyX0y9Z4k/P4zEGH8tzlrFpHszohp+KftLjryBLRuWyHH7yZTEIHPSGQFzo1p1XfRutH0Ptl4DE3aTxaSM5D9WzgDTzK2T/com30Kwg7YS53vnT8aI/pZZwoX8V0gu6xhYW7Dn3ee5rDWzmrx+ktWqsJvAY5Pz1NWcVRtNokzgTw8plfsv0jKNLUJAb7wTZE7Ywl/Y/tvt0kkwDtPoodsYWj5rpknLKjAeMI3yXUvju8ii2gw4r/AXpDBy7RgcmIq5uOHZoBCQoyI3OfyKD4CyHcGh+fUk6a7dpUfs0qp/L48tH+5ZEZtzLv46DOvVvpA6R+xSmyuCLopTc6fvkFiJym29GWcQ6HlrCznk/q4GMwDmUIqNu4Pg2fbrj0Et3KoReOd7pgkBlbAKB9Zwh4diI0UOtsYZX26/DBnYk5YnJuuRVx6dcL02BNsssM2A4w6Dzgh2NIaCFSk3PtXU8tKKajJwhmOvzMhCF1pNwPuWC93oNvhLXuPgYopOifxuCgs03BPslWSbOMArPqex5lZNtQJXTEpR21g6e/3FWf2YDr+aZZKAi28QhC+5K6sZxiaZ+fXWCnUwQjXSQKhl3kTWp+twc9XI0EzH82BIJxvKs9mdbGbOUXIszM22cz709HbzBBLmCXuEyt0WJ5BoifqeCx2Q4ib0vtK21Up/bnOSg48cRyTUhA9PMINwnR0IS6V30xEX8qA8cD1fUH4LX4fzrip1vfRRjC7lfUCMkTVu8FDWFbjDQvM6glOKKZ6A2gjOlrRUcEdCucXRagikFBqLjYfj92yOUuLSbec9PQ/h1NHf5bjwb7o+Tx4mYwzXdb532R8mudcgHmjmP0wlopcGV/JlyAYy82PmSICuw5+s/A5/2u4lknylj+yZxu8dwiGRQG+b25NL2E1bXY4BUMRA705icqTBdsgAQ4qo+TFnNDQsU1ZNMga7tXsNt8okXTQTEseJLeVUgEgOpdlxx8wmKvtaf6cwSnpZfXy1pwPAiK9YX8hS42HeT4wrj3d/5kp8tcr4mw58xDFM= X-OriginatorOrg: criticaltechworks.com X-MS-Exchange-CrossTenant-Network-Message-Id: ef85ca5d-dacd-4535-b81a-08dcd803048e X-MS-Exchange-CrossTenant-AuthSource: AM8P193MB0900.EURP193.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2024 16:57:45.5055 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 61f30b8e-4f6b-44fe-9bc2-041e3a9f7346 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8GwxXi3Yo0qGfdQJ9qVJgq3GHZv9J7+7FjmhGsPxVBXtM4NhZ8QgB62PLBqd/XVWFBsOU/ICV7udIab5gyB3FNqATwi8U3J5aTPUlGLdzes= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P193MB2030 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 ; Wed, 18 Sep 2024 16:57:59 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/204648 This fix will ensure that, when we activate feature `BUILDHISTORY_RESET`, files marked to keep on feature `BUILDHISTORY_PRESERVE` will indeed exist is buildhistory final path since they are moved to buildhistory/old but not restored at any point. Signed-off-by: Pedro Ferreira Signed-off-by: Richard Purdie (cherry picked from commit 9f68a45aa238ae5fcdfaca71ba0e7015e9cb720e) --- meta/classes/buildhistory.bbclass | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) -- 2.34.1 The information in this communication may contain confidential or legally privileged information. It is intended solely for the use of the individual or entity it addresses and others authorized to receive it. If you are not an intended recipient, you are hereby notified that any disclosure, copying, distribution or action in reliance on the contents of this information is strictly prohibited and may be unlawful. If you have received this communication by error, please notify us immediately by responding to this e-mail and then delete it from your system. Critical TechWorks is not liable for the proper and complete transmission of the information in this communication nor for any delay in its receipt This e-mail is environmentally friendly, just like Critical TechWorks, which lives in a paper-free atmosphere. Therefore, please consider the environment before printing it! diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass index b35508db27..8adb44eba5 100644 --- a/meta/classes/buildhistory.bbclass +++ b/meta/classes/buildhistory.bbclass @@ -108,6 +108,7 @@ python buildhistory_emit_pkghistory() { import json import shlex import errno + import shutil pkghistdir = d.getVar('BUILDHISTORY_DIR_PACKAGE') oldpkghistdir = d.getVar('BUILDHISTORY_OLD_DIR_PACKAGE') @@ -221,6 +222,20 @@ python buildhistory_emit_pkghistory() { items.sort() return ' '.join(items) + def preservebuildhistoryfiles(pkg, preserve): + if os.path.exists(os.path.join(oldpkghistdir, pkg)): + listofobjs = os.listdir(os.path.join(oldpkghistdir, pkg)) + for obj in listofobjs: + if obj not in preserve: + continue + try: + bb.utils.mkdirhier(os.path.join(pkghistdir, pkg)) + shutil.copyfile(os.path.join(oldpkghistdir, pkg, obj), os.path.join(pkghistdir, pkg, obj)) + except IOError as e: + bb.note("Unable to copy file. %s" % e) + except EnvironmentError as e: + bb.note("Unable to copy file. %s" % e) + pn = d.getVar('PN') pe = d.getVar('PE') or "0" pv = d.getVar('PV') @@ -248,6 +263,14 @@ python buildhistory_emit_pkghistory() { if not os.path.exists(pkghistdir): bb.utils.mkdirhier(pkghistdir) else: + # We need to make sure that all files kept in + # buildhistory/old are restored successfully + # otherwise next block of code wont have files to + # check and purge + if d.getVar("BUILDHISTORY_RESET"): + for pkg in packagelist: + preservebuildhistoryfiles(pkg, preserve) + # Remove files for packages that no longer exist for item in os.listdir(pkghistdir): if item not in preserve: From patchwork Mon Sep 16 07:13:03 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pedro Ferreira X-Patchwork-Id: 49246 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 4AA0CCDD548 for ; Wed, 18 Sep 2024 16:57:59 +0000 (UTC) Received: from EUR05-DB8-obe.outbound.protection.outlook.com (EUR05-DB8-obe.outbound.protection.outlook.com [40.107.20.71]) by mx.groups.io with SMTP id smtpd.web11.20626.1726678669093856824 for ; Wed, 18 Sep 2024 09:57:50 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@criticaltechworks.com header.s=selector1 header.b=U3UxfHrJ; spf=pass (domain: criticaltechworks.com, ip: 40.107.20.71, mailfrom: pedro.silva.ferreira@criticaltechworks.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=mQmNR2lXD8apYFVY8FJbZI2JVHdRh0iOm+UkZoF6y61orZx3aCI4zsncCqfRqKA3ikfwOCL4TcjTgy9LQAEt5ttGhqUlh3kqfvfKxg+7pzNx2yznTTTftsIcsvcHjTUzWRRcCHgFaTVyTJtl+KztihQS2C9S+UtZYEn/74V6Z5b9PB7lHO4Zb9TQtoTppOFBpgLo+76njT5NchIAyozmxUSi1dWqrpRDpCnmQD9Au3sTt48T1N5jqnzOMaQGR9QWYMciuO2GdQU4YDASdVsb5oaUQVDWbKdUi/AA9SHfZtiJf6HVZrDQiLbOgx5lKfrW780ii/vw2OrF8Y10Z0VFtg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=0z0tL4oDzGOx7XCaFAXMZO/Q0tpa4Avd/nZ2f/S3jrs=; b=d/iLsXldRafp8o8O1HE4x6kUHDwHEXTV4DhEKi0vc2xZlpz0Uzb0mUAVCO9t6194zM2Jw/ACodsZtkPRUpVWGNg7KwSZklO8Wb5zFVfN/k4GsWEgS80g+/2rw55xZ20uX+HDbowKqVp0pgjOoQysy0TJdBPgvd6YVaIP1JpVB4ARpeAaPXhk5ETLAeCDoyP/eFpU+XHjIymOzPmo3j0/JZACHMojra3AjtaBF5qYw37kCfwR++VrCni4fgczsuy4KiZ1Zpo1/QPLcNEg9nL2KZFSnsjErG48Z+Hi0fr1yXFDApTZ9JEMdN1xuCRmT8yfK1L8xwK7jfQS9m2YgWyM/g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=criticaltechworks.com; dmarc=pass action=none header.from=criticaltechworks.com; dkim=pass header.d=criticaltechworks.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=criticaltechworks.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0z0tL4oDzGOx7XCaFAXMZO/Q0tpa4Avd/nZ2f/S3jrs=; b=U3UxfHrJFCHCEMX7FMb+9i3qrq5EHJwHjcgmDwlksxJgsZYi+FNubqNuMfTa+SLHRUUADTxnTe2FBmpbyBoGuTnWqo+tzjVbJQ8FFjEkAIdF7GL+PiYgwAvu17zjhpp6tFsgskBcg6Z7cvl6sfvgwSyJVQaPWZsfWc6xxnjNf2OFgOxmrKXUSF/LEgLNYphH/WOcWRgKOhg31rSehFI8G7fW9nOUaNNppPIJZOWM+vyEePQIFCSJb9ys3Gd4NKe0HVgZyhaa2TaY1FG7Ra19PKXS7X/gmb8nkwz5UciGROJCvgO3uc8v3FteKqzZvh9FHgDyTkNZPiSxL4ul+fO3fA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=criticaltechworks.com; Received: from AM8P193MB0900.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:1ed::9) by AS8P193MB2030.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:40d::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7982.16; Wed, 18 Sep 2024 16:57:45 +0000 Received: from AM8P193MB0900.EURP193.PROD.OUTLOOK.COM ([fe80::c359:f497:ed59:65a1]) by AM8P193MB0900.EURP193.PROD.OUTLOOK.COM ([fe80::c359:f497:ed59:65a1%5]) with mapi id 15.20.7962.022; Wed, 18 Sep 2024 16:57:45 +0000 From: Pedro Ferreira To: openembedded-core@lists.openembedded.org Cc: Richard Purdie Subject: [kirkstone][PATCH v2 3/3] buildhistory: Simplify intercept call sites and drop SSTATEPOSTINSTFUNC usage Date: Mon, 16 Sep 2024 08:13:03 +0100 Message-Id: <20240916071303.2831698-3-pedro.silva.ferreira@criticaltechworks.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240916071303.2831698-1-pedro.silva.ferreira@criticaltechworks.com> References: <20240916071303.2831698-1-pedro.silva.ferreira@criticaltechworks.com> X-ClientProxiedBy: PA7P264CA0266.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:375::6) To AM8P193MB0900.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:1ed::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AM8P193MB0900:EE_|AS8P193MB2030:EE_ X-MS-Office365-Filtering-Correlation-Id: 843ebe2a-fd11-4b90-8078-08dcd80304e1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|52116014|1800799024|366016|38350700014; X-Microsoft-Antispam-Message-Info: DKIBb1FuN9cscSs+/r7uutii8oAXVQkQdjP4fA1v89Jx8dCGBWkC6Fc3Rw+f64Hq4/8yzV2YAk0HhvH4XV4ug0jWYouuDNuS1uC6WXsaFzrgkCowEoh5bFz6Kth7RnTAQr7MJKi53/wKYJmkGVy0Z3LbIwVIn3Xu3rUqkTd8Qxq1izccI/rnqqk/OTd58LHYDU0fv8iIxNchzDn3brI1NQpV4TgfM/XQORm5Dpoki+U7RQwsJa/JNXyYLbgCkI8FhrQtRZXvaY7rUgpm/G8AW9gdpbxUF1t/tjN87xmqIqEJM/uSg2g/E4Ct6Np2x77gf0ZlNmbbbzZezaYr4XXLqqpBJmUah0DG34xOSZBFZayf24+M7B74/42m5FRLJmyfyIRkjgaR6ubw8whfdEb9Ho7GngEglZUiW4fd+Z0iKwgq5PvBSm5PqlYFtvGTrvky6GWSqHKcE7eK0e4lkjjFD28kLEYlmJpBsbwa0zIWj8BnuTuyZ7hcSE9opwTZslJijM+9tCdo1jT2ENUck9y6B8E/p6nIjf9DF4TtpppnZukLntks7LVQi714dY+2/0CXT7a6TPPwsgjWq13rVAzNx6qokwmobxCxyNB8LfFwt5aTS+PGGKfhfAHpZW5mUi0K4hU10MbKqVEPQX3twWx5bT1rrxRpan3NFEUV+AufOFuhkDHCBf/7AMpntpD3sMlzLWYJ4rl56JzHg9rLRVEC12lgIorPGHw+rdBOiK5gMDtQESg4IOc0mj62fKLPLxufJe5vkaq3FHTAOvZkT8wZwO3UmKlzqxpqePbaUHHwmgjAdjY+XUH20LjeuOigHMQqYJfefzYfrhkB9MqDBBKTjxWIPsu1SAmIUQ58mtxWygAab/GTOLMV9gqivB4YwePMK5TnUGL/gkALxDvoDSN0IaiPGPEnWVIw88fkYEOG/hRDwGbu/0x8E0ltITw3EFA033k2WNpWxqlWgdV7+ctETNd54f2Bia/yfeVVJeiKUbt3P3Y2fdglSZ9umv/0UhJ972g25Gy9FpkgiArRQwTyOE6oNfeiIwO/hgUHg4AFWD4ikAkGXqKeUTcfR6620JLXPDkFSbACaLlBPrAcj+WmCn5O2HZlkh3IgKhw+HOsX7n8O0X/dQxmz0TVnmkLMRCfSQ41WwziTDYE7jw4vSZcbYbgLM5eBeFKHWBZe+oNgM8PYgFq+W1l8XopTY9/rsjTKmJIzPmZcffBkxIpfglOn6Tm+Mk72z3zr/8UUvoZdLlHYHw2r1quMUQongSgM03tx1B2Bj08J1+dXWcpqW20J/pS9FITpbgYtNJ58RukZU4cEv2kvP429SrWzhWCU8uFt2FOC6NFUPjcD65C7uXTwGXFxTVQFbBqMThrlkdyfG3HYmbCX4y2sHMJIJc/nz6T1h3T3awfHSQFWU+BTLA6wQ== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM8P193MB0900.EURP193.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(376014)(52116014)(1800799024)(366016)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: D2wAV+sPnwsfpp+S+FJNXa3JLJpgf5TOtOxXOpDaCl6lwwjnFZIVslYStRPJf4f8z8qEFwjikHwfSgAbmcgEcVjc7tv4wljGBEI2Y5yW7q00tK06NMsM1KhDtCdbYFMnXH09vh3ovKduDld4I6KpVQxEiwc8ptpu4OGrJbPl+qB1c3Uht6GVZ0rc9fh5mkuYcbfhjqmFq1l8kURH+zb+GOmB/zS3FupWyJe/EsFR/ksguseK91kOe6VXZmux5wbUpytSv6AcH3GXcIK1RV7tQuC4rP+W+xI5WybIxmpEy9yWEVHjvgPdH9aUFBvztyCDzJz/m534U5FSxAqTcA2UYqFeGsb84PFIcuGjAqY1b/Y3fqE7WhlOog6Kv0KHAca9d/Bml7/HBOKQ5dPS6CP6Gi1EsSHiIF/8GvmsWAdVagkAU1wijY80fnfGgbSHdTMAWxZo3z5vZsg03MMruJXCZJb+J3gKqN87PQhD0wUulhNB/aq8lZOo0ZLessvsdN9s7TDsaOH+RNBupVvgtag9wvrNmtE2yWq5lpbvMmduFVk7QyZeuej4aMoW+JAdIvCeNcKBnOgCjiB4siO2V3+KIwl0On/ZU/w9HR+6inesEtZoni9X0SWSVKAKsEuCZ+fr+l7oxv2/TW/vr4cupp+10Xm4ueItszPyxCOT13sgW+kzUCLXxL1BJ1jTn13QyR7uOiaZizoWW7Nu8Qh9Z4oh9LQjUpKXPJRYyRh2xGceIsdYi5GH3gUHGkX2dcFdLVYnbgDL7z8ge0swGLo2PA03SJch0pJYOplGUcKvY1bm268eeJw2VsRGP6SQ/FkXQLnOxcBxEOWeZJkZ9kiGhJ++Spw9ec5809jTNLK5bXPcC4BdZak9MNvcEn5k5TwGfxTihEXcpkKUGF5HlFl7d8zy9YFm+OzNf52KscszhrVVbVhftT09IvAclAesem63vkI7IbJy8byRMYc1e4i33Kaojy14gGW+NTwekR8o9YfE37KiKXpcotLGliveU0wtT1J5NvCD4Y5jd1VtaAIf3rhKUfLo/f9j6BFudygK0Dj/5vMLvepMYREeEPP5iQuVwf9XG6sIytStv54CHl5c6h2q1oTw5Ce3wOulMBkw+HSSzqDUFMrxK9vU2D++nLSSUeP6DyWdH+Yhm+wi3dag7NbTq5s1Ep24EpPFsrk5jkNpmJi9AwT3zyUH2ndyBKn/INIkOrZ3u4que5siJWce7yW/4MLpCDgnmYWCi+22byssr8jC4KGroxVL7aqGm74QCl3yz05BXrxrj7dIzhoPf/abFsUNI2SVwhFDYcv2xWTsIOjm27XUjNMsuw9EEGcvhP+g/PFZbkmJ7LXeWiMwbeF8y6LGyAoa+vf9Er/GtGi/oxvm5Z94omt7hLTWlcbbxwdQn/wBfESCP1qu2k/eeuXlPdnjJ7+SLyJxKqYW9rK9+BgzqdA+bGD2mIfZRgeUI+cZh47RQAV7LsWbH5HTreUmz2+i0IfS2NlVuP/EbsIUprJnrz4+MYR9cMoiMlv9SH5/LJbCBjSptzmpXvNgQfb1hCHn9SV/Z1I1RhYypWm75kWeWymIOyfgrGqSr/de/eL9KzhHIk8KFZGIV8hihAAAXGDml/QWTOAfrucgY+9hjcQ= X-OriginatorOrg: criticaltechworks.com X-MS-Exchange-CrossTenant-Network-Message-Id: 843ebe2a-fd11-4b90-8078-08dcd80304e1 X-MS-Exchange-CrossTenant-AuthSource: AM8P193MB0900.EURP193.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Sep 2024 16:57:45.9057 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 61f30b8e-4f6b-44fe-9bc2-041e3a9f7346 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 5PqAMNBD9iEgKnAvyjrMPQvGDOCWP1i5kl6HeNfGKBstkLfRecp1+KhuHv8rEuHK3coRc4mKsyCY6lls9a3Ggv92qXPcRuuqK90pWiFyQFw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8P193MB2030 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 ; Wed, 18 Sep 2024 16:57:59 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/204649 From: Richard Purdie We planned to drop SSTATEPOSTINSTFUNC some time ago with the introduction of postfuncs. Finally get around to doing that which should make the buildhistory code a little more readable. Unfortunately ordering the buildhistory function calls after the sstate ones is difficult without coding that into the sstate class. This patch does that to ensure everything functions as expected until we can find a better way. This is still likely preferable than the generic sstate postfuncs support since the function flow is much more readable. Signed-off-by: Richard Purdie (cherry picked from commit c9e2a8fa2f0305ef1247ec405555612326f798f8) --- meta/classes/buildhistory.bbclass | 39 +++++++++++++++---------------- meta/classes/sstate.bbclass | 5 +++- 2 files changed, 23 insertions(+), 21 deletions(-) -- 2.34.1 The information in this communication may contain confidential or legally privileged information. It is intended solely for the use of the individual or entity it addresses and others authorized to receive it. If you are not an intended recipient, you are hereby notified that any disclosure, copying, distribution or action in reliance on the contents of this information is strictly prohibited and may be unlawful. If you have received this communication by error, please notify us immediately by responding to this e-mail and then delete it from your system. Critical TechWorks is not liable for the proper and complete transmission of the information in this communication nor for any delay in its receipt This e-mail is environmentally friendly, just like Critical TechWorks, which lives in a paper-free atmosphere. Therefore, please consider the environment before printing it! diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass index 8adb44eba5..83993f5752 100644 --- a/meta/classes/buildhistory.bbclass +++ b/meta/classes/buildhistory.bbclass @@ -45,11 +45,18 @@ BUILDHISTORY_PUSH_REPO ?= "" BUILDHISTORY_TAG ?= "build" BUILDHISTORY_PATH_PREFIX_STRIP ?= "" -SSTATEPOSTINSTFUNCS:append = " buildhistory_emit_pkghistory" -# We want to avoid influencing the signatures of sstate tasks - first the function itself: -sstate_install[vardepsexclude] += "buildhistory_emit_pkghistory" -# then the value added to SSTATEPOSTINSTFUNCS: -SSTATEPOSTINSTFUNCS[vardepvalueexclude] .= "| buildhistory_emit_pkghistory" +# We want to avoid influencing the signatures of the task so use vardepsexclude +do_populate_sysroot[postfuncs] += "buildhistory_emit_sysroot" +do_populate_sysroot_setscene[postfuncs] += "buildhistory_emit_sysroot" +do_populate_sysroot[vardepsexclude] += "buildhistory_emit_sysroot" + +do_package[postfuncs] += "buildhistory_list_pkg_files" +do_package_setscene[postfuncs] += "buildhistory_list_pkg_files" +do_package[vardepsexclude] += "buildhistory_list_pkg_files" + +do_packagedata[postfuncs] += "buildhistory_emit_pkghistory" +do_packagedata_setscene[postfuncs] += "buildhistory_emit_pkghistory" +do_packagedata[vardepsexclude] += "buildhistory_emit_pkghistory" # Similarly for our function that gets the output signatures SSTATEPOSTUNPACKFUNCS:append = " buildhistory_emit_outputsigs" @@ -89,27 +96,15 @@ buildhistory_emit_sysroot() { # Write out metadata about this package for comparison when writing future packages # python buildhistory_emit_pkghistory() { - if d.getVar('BB_CURRENTTASK') in ['populate_sysroot', 'populate_sysroot_setscene']: - bb.build.exec_func("buildhistory_emit_sysroot", d) - return 0 - - if not "package" in (d.getVar('BUILDHISTORY_FEATURES') or "").split(): - return 0 - - if d.getVar('BB_CURRENTTASK') in ['package', 'package_setscene']: - # Create files-in-.txt files containing a list of files of each recipe's package - bb.build.exec_func("buildhistory_list_pkg_files", d) - return 0 - - if not d.getVar('BB_CURRENTTASK') in ['packagedata', 'packagedata_setscene']: - return 0 - import re import json import shlex import errno import shutil + if not "package" in (d.getVar('BUILDHISTORY_FEATURES') or "").split(): + return 0 + pkghistdir = d.getVar('BUILDHISTORY_DIR_PACKAGE') oldpkghistdir = d.getVar('BUILDHISTORY_OLD_DIR_PACKAGE') @@ -619,6 +614,10 @@ buildhistory_list_files_no_owners() { } buildhistory_list_pkg_files() { + if [ "${@bb.utils.contains('BUILDHISTORY_FEATURES', 'package', '1', '0', d)}" = "0" ] ; then + return + fi + # Create individual files-in-package for each recipe's package pkgdirlist=$(find ${PKGDEST}/* -maxdepth 0 -type d) for pkgdir in $pkgdirlist; do diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index dd6cf12920..91d42665c1 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass @@ -156,7 +156,10 @@ python () { d.setVar('SSTATETASKS', " ".join(unique_tasks)) for task in unique_tasks: d.prependVarFlag(task, 'prefuncs', "sstate_task_prefunc ") - d.appendVarFlag(task, 'postfuncs', " sstate_task_postfunc") + # Generally sstate should be last, execpt for buildhistory functions + postfuncs = (d.getVarFlag(task, 'postfuncs') or "").split() + newpostfuncs = [p for p in postfuncs if "buildhistory" not in p] + ["sstate_task_postfunc"] + [p for p in postfuncs if "buildhistory" in p] + d.setVarFlag(task, 'postfuncs', " ".join(newpostfuncs)) d.setVarFlag(task, 'network', '1') d.setVarFlag(task + "_setscene", 'network', '1') }