From patchwork Mon Jul 31 21:42:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28177 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 74435C001E0 for ; Mon, 31 Jul 2023 21:53:31 +0000 (UTC) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (NAM10-MW2-obe.outbound.protection.outlook.com [40.107.94.101]) by mx.groups.io with SMTP id smtpd.web11.5522.1690840403459691905 for ; Mon, 31 Jul 2023 14:53:23 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=lBlgj9bH; spf=pass (domain: ni.com, ip: 40.107.94.101, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bkdQyerO4rm2OpksXrqufL3645uVXd2p6IGMuppeGp1lWLkFVc4s/IOfqoGsLB2MB+XH+t6zC60j53xrrmrTaoP8Cdq5hEURCtNFjxMiZ0nCq4WWVPuiNaOVkxTirP0v0YClK6fNV6ZO3Aazcd23Rxhdpht/K/oikAXBRA+HLa8LSEMCa8kSQe1NqLnQeMFOWz5vMA1GSLNfZWgs7LyxO1YAXSHPfLO5kVFkStTtDYbE5djD4aMmTUBvE+I1FMw1Ay9IFQ+DK9/1//nmKMqaY1faTdQJUBDFv0s1sgppCPnn/yk1VR4I5QzcRhQFwZVO7nxJXbengJzDz9FtZboktQ== 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=MIsvqHXt4bE4+apLhvnhTQL9mmcJO8SxM1PkccifBk8=; b=fuOIBARoyzpiBhFbF1dDOleeMFZ9a078dYP3Ja7v8m04gstaEtIZmdwCt0Qfz+Wwese+8rxTzET9ZdHB8uY87fSfchp6ioijoosyg5B/FIYQKE9lBEDdRuXPa3Wa9YiPWQIojMl7ApOOGmkaKvTP4usWBQf/vJ4BqHHqMC5RvOizPa+6hIpgHWmkSWbpNIHUHJP50c+teL0NhoyOL5YLYRKWadtU5PXLbXWth6PEj2aKi95xBvBSinDiqHHQL752q12HxBslcRdp4w2PV35w/XE/NVSac6j+y+nFrqw8mDpbdUNqe0C6AvzS62Q5WIs1uceAGVKFmIBE4St1MHaRrg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ni.com; dmarc=pass action=none header.from=ni.com; dkim=pass header.d=ni.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ni.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MIsvqHXt4bE4+apLhvnhTQL9mmcJO8SxM1PkccifBk8=; b=lBlgj9bH7nvhTSGOVT7N56SBBfM600p5F9mRCOSQwXkrch/AOL8RUCoIpfVsoXbuUMsRtSCHT6fojYjslXCkOIsAmTQ6NUWpvk+96nI4eHIjGMv2oB09y9o+1S5w1kTLrBGyxQACXrpDxlC1HV8SnB5Sxz5lg5soSY00kBCxCaY= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ni.com; Received: from SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) by SJ2PR04MB8510.namprd04.prod.outlook.com (2603:10b6:a03:4fb::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.43; Mon, 31 Jul 2023 21:53:21 +0000 Received: from SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11]) by SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11%7]) with mapi id 15.20.6631.026; Mon, 31 Jul 2023 21:53:21 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][RFC PATCH v2 1/6] bitbake.conf: Add new DEPLOY_DIR_FEED variables. Date: Mon, 31 Jul 2023 16:42:58 -0500 Message-ID: <20230731215310.3949441-2-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230731215310.3949441-1-charlie.johnston@ni.com> References: <20230731215310.3949441-1-charlie.johnston@ni.com> X-ClientProxiedBy: SA9PR03CA0023.namprd03.prod.outlook.com (2603:10b6:806:20::28) To SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR04MB4879:EE_|SJ2PR04MB8510:EE_ X-MS-Office365-Filtering-Correlation-Id: 9ef4c3a7-f8e5-485c-40cc-08db92108e85 x-ni-monitor: EOP Exclude NI Domains ETR True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 9dMiDIbCKGy6In4ueCtdDy2VTiNiEP43TP+rLNKmVS9vgKmIhFJxHlnlutwEJ/czwOZ6Bv8DOQsrexZ3y21WxsqptDOCrQKZT6jEi6IAzWOGMEi7FmNWONFTqxuDqgJ435AYHuJKO3cbNE0AbES7y2z5gqDHtJLPmNlvYxXjzO1LpIfCMj6U8GHWD5UnLdepeQMWEPPyrFycb/4Z2J/XApA8/L8+ysOnYhTEuWTzJeg6ON+oB9W1cJmcc5Dq5FHwjiwU8CMkvbI4PcswFUbxGMkqo1ItgKCPCE9UJNdakUUUxGeut+gmwfiZK6MBCdItcVNLUSlVY6ZmIz6JKcV0EuB58lHxNGCyNDSYkuzxrTJ6DI+JlmrAsCU9+ZgnLup8yTXeZpbgxYyn3nVndBKeQB1cBihfI+tfvY5V9W6ger3m/QRRL7a5zCqrHm003jMe8n2uiJmPX+oYYsXxeolY09Dk3my1qlrx1YOCczNf1GTcakmHFB73wIoz2ByL3NfklauB/uoS+CzoxTwZGmlEooVxRJE6E/0l6fieCiyfxkJkUjwsx3bCKZf/cmqx2CZX X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR04MB4879.namprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(136003)(376002)(396003)(346002)(451199021)(44832011)(6512007)(6486002)(36756003)(2616005)(26005)(1076003)(6506007)(186003)(66946007)(66556008)(41300700001)(38100700002)(66476007)(86362001)(316002)(4326008)(5660300002)(8936002)(6916009)(8676002)(2906002)(6666004)(478600001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 9q3hVYmAMPr/yHT2Dfe1QxzncBCd+Uj7e1ml/B4sTpoOAXMDnnmJsWFuY7YLt6JYA5KKaLEH3u5JAEq4s9uTnhpTkzL01Obsc6e8YZxc1PTObvaWNjKgBvdSrvGdQdpiUtkAECFp/ZhmkKCmBG5rXgj9skpzrRRp66twytGcuX6GaW1/CYU9VyjieLd14L/oqG37DMREBXoTpgmrHTu2kJ0DxuW1GvFxgT6VFialZfu6iMrK94xjh0D3vsn0xOUoJItO9585zCSHA5FNIZ3jkzWUqMbXgvFs0ZhbB8JVcovc+mjqDZZ1XPobO+Kk/mXM+oTSS6nJZEMGuytIAI1s+2p3JUnu61rztXp667+8rgYLt3j098qGddB/0GUVBHjXkRH0jSZXCJexgvnJwLHPwNoZPQe/OcCMpFBy924WT7r2gFGHW5kKdrhpCqVfz1Rx1mxC4Zpf9v7hvYF1hZl0+mNgKonjX4QEGiJwlTsxhB3RBmW+AsxGgVeoSFCfanq5vMgAeI8hAMDbUybIlc+YPxX7aYA5in94OSezYP0/0NLpmUyDHLwOhymksIZ1+MItOoUbgkhjqjKYtohCC33U4Vvk/P2yusmYICGJp4+WmnQkUo5vx/2Q6ZZKZm88AmZEmeK3lpvnAcAmY/ZCrPX+w5ABIz9yDcBbO0eXD68mloY8f5f+xXIymLBhFJ1/jxw3v1ewj4osCXRvuPhU2e11UR+kXe1lSnFdxaMYaAI3Imhk8/EitEUPY5oBSyJAwcZLm2JNoMkibXk6X+ECbUmBGEWvVZs6E6VUStr1OOsx6xi70ID3VHgifauE3Q2Ob3nbCP13SPCO1gCb4Z2ylt+wO7J6kHkcqjio4STXfX24CqvPKTPTVQoqTU2Uc1MVfJjwgjNbzpKR70yOQkHwsJx9X1+TCGiwos2+RwRqXyuZNZ9Jam083WE2idaoDe89pvAtHramterelGZICcTEutRIwLBfN0eSuDEtRRi+ysKGG5gTn7BdT0SOUSKal5zmxAyYViv0xbV13uBrOuEyfJf6+XcnzOepnHwRmEN28YnSAZoHJi9uLEwwyBx8EouXUnXUb6dyGGfgKdGS4pQm4CvHvs7TkpeABiA9AJu3ep/F3bC1a4q6d75pNaexlfLKxWxsw53TJHQo2vNinQ4FPgMUbepaBrIHnio8djWripqWJXSXAhQDJ3Kq7MDe2lRsCwDI4WK5jmaFBqWlo0hJk7+ItpQSDlXvGGN15SGYiiVPFNUzFfK3oZfQnFul5Ydhu074OHuTUogr6Qo43dUy44pHFG4Q9OlxYwKCvo38NVJapSDkIR9Gg1plJtKmDP+xdevx8fxhyBZ3v8bU3cR2/OpfWa35R/fdLQsC5cQlLEStIg8qJbgBspf0KRUymD8FfQUhxnf7VyYvOOzPugDGu8hJLdaF2HROM7VwzI+SRk/jTpqjLB3mSi9GTAzYsWRJL0BuEliMkgGNHSwMGzhBCLpOaZc8Dn2uC9EwQlRobLtmU9QEoVUXK5eJK/wFRiDLOqAkVamlAxeCL07YOpoHFR/p1fVRnTGcbK5wJunxFPLfbfRsywUa7GMy7CZqclLp1r3JAQKwQu1YUZOh9wfATIVkbA== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9ef4c3a7-f8e5-485c-40cc-08db92108e85 X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jul 2023 21:53:21.2642 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 87ba1f9a-44cd-43a6-b008-6fdb45a5204e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lpMWynWD1C7i9ZRZQi7Y1/LWGFUIeMH8M8ULf38wNYE9v/kgWpAb270G+NHj2B8aYbyuf9o8WxEkiKct37ke/Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR04MB8510 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 ; Mon, 31 Jul 2023 21:53:31 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185175 This change adds a new variable that defines where feeds should be created when building a packagefeed. A feed location for each package type is also added to allow multiple package type feeds to be created in parallel. The location is ${DEPLOY_DIR}/feeds/ Signed-off-by: Charlie Johnston --- meta/conf/bitbake.conf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index 8daaaad615..fd1738069f 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf @@ -450,6 +450,10 @@ DEPLOY_DIR_RPM = "${DEPLOY_DIR}/rpm" DEPLOY_DIR_DEB = "${DEPLOY_DIR}/deb" DEPLOY_DIR_IMAGE ?= "${DEPLOY_DIR}/images/${MACHINE}" DEPLOY_DIR_TOOLS = "${DEPLOY_DIR}/tools" +DEPLOY_DIR_FEED ?= "${DEPLOY_DIR}/feeds/" +DEPLOY_DIR_FEED_IPK = "${DEPLOY_DIR_FEED}/ipk" +DEPLOY_DIR_FEED_RPM = "${DEPLOY_DIR_FEED}/rpm" +DEPLOY_DIR_FEED_DEB = "${DEPLOY_DIR_FEED}/deb" PKGDATA_DIR = "${TMPDIR}/pkgdata/${MACHINE}" PKGDATA_DIR_SDK = "${TMPDIR}/pkgdata/${SDK_SYS}" From patchwork Mon Jul 31 21:42:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28176 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 74C07C001DE for ; Mon, 31 Jul 2023 21:53:31 +0000 (UTC) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (NAM10-MW2-obe.outbound.protection.outlook.com [40.107.94.138]) by mx.groups.io with SMTP id smtpd.web11.5524.1690840409043058716 for ; Mon, 31 Jul 2023 14:53:29 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=fWC4GJAe; spf=pass (domain: ni.com, ip: 40.107.94.138, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BFKMoeznCTRqCFT31N8EaPu97+i6yVXkrKyNrEEtbDTWTGSMiQQR9mifDnNRoEnGt0sxJpEZ1SHoG7IuM6ukgsoxHvd2TWnyMgMv6UkCi3zyyqHtDvxeQhfECi+RhuOXjICLGMKN5lN9nxM1qljMJiAzCkCCFf8yis7cFsWfzmx6OO4cHTsTYP9sH9r+1enO8mIWXT+83Zn4diseEEFb4uDR6PC9KEjhAjq/Q9g2vXuxlKRtuBCizUmlIkW6iDNJWChCR1jP6huH1V5XjHSfzzaJjr6njGTZRTkgNQnpgJEikAB6OjHhHf0Cf6eUNACY4I0djKNlfrVyr9+XWXWO1w== 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=9yTBAAHsLa74vvzF7gKULZsLYY233urnoHIrDnrVGTU=; b=i3fr0hdgbj8ZxZ7sB5aszPSv8JabqIJOsS1K6inqnIBpb2NhtcrEX0Rvz+2mXCiQ/ySL93yBvhSCznWdrRHZPsHHuJFblbStPIt2DM/8R/uWM9TpInbwEg6a3RgEZDIVTbf4wMvzr8PDYofDSfllgw1g4dvmehHxYMOOttmO6e7BH/btH+8b/R+SRqjeKJ4SNDgJJNAiO6N0cGV0O58RhGKf1wlgHRHX87A0CXFPoXMHfvATWeOKav92KxaslCHo08r480DkznPvIFS0CdOTk9xc935Z7SuqCfvLuSBLHnwo4Ni2smhy6KZLwZb96g2T8VtJ3/mXG/8XHa8j3hgOrA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ni.com; dmarc=pass action=none header.from=ni.com; dkim=pass header.d=ni.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ni.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9yTBAAHsLa74vvzF7gKULZsLYY233urnoHIrDnrVGTU=; b=fWC4GJAeZBB+KYgXSHuWJnJkvwF3bit4jfl+sthgf7LjUSDxXmOcCcQzGBenGVLVCXzLDENzLW6XF63jX7IX797PulhhWeEdpk9vPTfol0U0Eynke/7o+kKYxvyuMPN4hX+xoiLL07KT8Dbpe6MbuMWRRI0pEK3yX+ThvTNw/8k= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ni.com; Received: from SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) by SJ2PR04MB9010.namprd04.prod.outlook.com (2603:10b6:a03:561::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.29; Mon, 31 Jul 2023 21:53:26 +0000 Received: from SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11]) by SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11%7]) with mapi id 15.20.6631.026; Mon, 31 Jul 2023 21:53:26 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][RFC PATCH v2 2/6] package_manager: Add feed support to generate_index_files. Date: Mon, 31 Jul 2023 16:42:59 -0500 Message-ID: <20230731215310.3949441-3-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230731215310.3949441-1-charlie.johnston@ni.com> References: <20230731215310.3949441-1-charlie.johnston@ni.com> X-ClientProxiedBy: SA9PR11CA0008.namprd11.prod.outlook.com (2603:10b6:806:6e::13) To SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR04MB4879:EE_|SJ2PR04MB9010:EE_ X-MS-Office365-Filtering-Correlation-Id: 3f3e91dd-657d-47a1-3f2f-08db921090f8 x-ni-monitor: EOP Exclude NI Domains ETR True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: bxG9Fo0ElP4DDAxO50ldh4C6WCWr9VjtjG0fsaEqq1Zx7QxLp3yGjsCgX/7Oi4mTzLuCdEYGQWfv0X0PM8yiNyz3VSBCRZSXKG1Cx+CezQo3yd1NKKY1aUlhund61kXAaOdIx8uh9TBR+i/FDLEjzjzxGSFp3RzS4qWcGF8qhQAQdWS8gOCSnIYsQy42CLWxrb7iTQGqAa84ZuKFfVNXAdE39RnOEgEJjirjhkEIzj2qitGrx0hZ9Pi6apG43ebIjOw5HkwbIe1RYUNNPR8fiip+x5uARufUrhk3Lx/5TJnMuU4zZdeuSAtxc5flkJolDCMkVH86nt+nRoifhz3dsYCHxhhocScAhWcKdiD/Fw4KoYQSfCNZD25dSKeSmC8hJCzux/RfUCgPZhiEUtTDQIe+kkuYm714aRUTDourDs7aU9XztZ+nkC/XEaFi6KhbzAhsmtLNNzhXhgja5UjHJ98GRS9BITnZJqmwGz6nNIPWYSrC7JhFc0H1TXCjiBCwM0ldCh0bU9KLW6trC0XgloSiQ+Y0BE0AzPc/zHsAT6A0ons8MpedSI+lJn43I5w9 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR04MB4879.namprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(396003)(376002)(136003)(366004)(346002)(451199021)(2616005)(6486002)(5660300002)(6512007)(478600001)(6666004)(66556008)(66946007)(4326008)(316002)(66476007)(8676002)(41300700001)(8936002)(38100700002)(186003)(83380400001)(1076003)(6506007)(6916009)(26005)(36756003)(86362001)(44832011)(2906002);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 3iXVQ9gATMfGIN0wurbiUJBF7v9+S5BHMbuEAregontYPduyBCjY8AU5cK8DCf+tuspmPJlsqbGz+RVPD2HDUi/EQqxVTh9Ta5RdePX1MJ6TxzWA7VzB1ozfblad7ldGAFXu2KamvbCJMg+LLO5uCM1QBM/sFeUH0ptlW1b28rUoqaw24qK8/76MwmPCVsV0HKdv8Owj1gkesC4Iop6tpXGUkjmiXrZv9Q96wP4xBfkx40pUYIeUctZ9F99IRmIMauwK3YAJpcoB+iyCzLDEppCdkIOFvEu+w6btpTd8tI78EWj5XHuwXF3rXyc6F7uZcbE/bK1khm70BcFGl92eISLmrrujhMSmgUb5MiJojM5UTTpKKQJqbU89Hk9IZsjzEPkIbmCWIu/FQhCk/c4U+sVq2xZ0+ESNwTAHp75A1UrScGAzwUXQ9abLeq/Px+qAhljSXcKRHerO0EvlAmOMPvRlpjpFyjkVmqfaKSBB4weVDlWtwkA9Q1MPoOUxHqJJRITi+rptgaK1g671fioPjcvGlTYBbEBZiA/L3iNbD2kVHmKV1LGOnrwzq13JIb2d83oUjdLjH+Z4AkUTbi5zA+NQwMmYkSWE2BeJ2/TDtHA4uhNe13E15+5O9wcpXAmgxXyqdzuA0lVPVNErlmLF1jDJ8Y10RsYWrwMtIDyOrfiXT4X8ASe7BE5Hb8Aatd0X9bdPVCs9aNVY1/Bpkg0Lg4+qwBQaAMAoGDSMdBa+DbwJ3J/JN9K48g/TXq2xnmGKYFEqkJyFdw2Ypu2y4aV7vEtf6vW2ZdFsiUEg5uiJ4tmV/LKRVNPIMZRPFKpzZo/iCglVyquXD5tdssyMDmqacG8NI6T487E1iZstsCcMnC5gG9BNS2NSQmTJhfc5rB+39J069fj0slvBzi2J+SWcjlFAoqfn2wPz1aI27sRQXQLOG5vvUQFXpcruQ1y4DiIpSZ2QWl4WRhP4WmsmMohigZL39a72QX7Klphppfol22f0B1zRitRKtlRxK7kROCOd18JH0+J86hG2gZ+h7c9i5XScdGkraRZHRPk6PzPSX1wzUNRRu9msKWca2npTmHvwfv9lEtFWw7+MyWi4rSwl9tAVmqd+TRlYsqzx1HCc7DxWRG2LfIcUdNn2cTOUG/AQsMC6tDqRBpcY+osrtIuIrphfcMOPdE1z9Si9oNp5GH3dsdH5qeAoJsLX5JJ9WbuhoRwzY7LwSiE9NGmh+SG8JJKqzRTPjZDQlrBBJg9XkzFfqfXlioZC47vQHMz0ePMl5QzVDh/wNJ5pQhgRiB3gr4IFusnkSmyCI81HPv4Krh3iF1rFn6xxiyB6XX6WbVMuPkIQAzo5WGxELZ/pZZTEdroX4yqHYs+2qjoBv8DVmccW7Fyzt2Mzw5xucbF5Qq3Ceb0xsgSsMZp5aaaoEWs/Q6C4MlXq9hbhLuSTOgyKGGepyPi5WO7lOPZ49r5OFQibo24NarN2lSqqBbNGRQX4aRgZql4oU5ZDgEs4DzNeFOAcDdFUhKA2XvTASQfz7k/XWx8FSL1XRcryAuWa90THvs/0wDcexP4FZWk4EPS0+MUMGIZnmAZcysrBFZTlz3HrRseCqIQgE5dFud2zP9J8qA== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3f3e91dd-657d-47a1-3f2f-08db921090f8 X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jul 2023 21:53:26.1194 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 87ba1f9a-44cd-43a6-b008-6fdb45a5204e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: h9S2NOCbsfTshX7hxiWz+8TpD7Yr7JtCqj2BQABb+wenpBLq6uQ+rZcWgjRaAyHb6GPtD0Kg2BmsaTGq8GALBw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR04MB9010 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 ; Mon, 31 Jul 2023 21:53:31 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185176 Currently, the generate_index_files function only handles the creation of index files in the DEPLOY_DIR_ directories. This change adds an optional feedname input that will instead point the index generation at a package specific feed directory. If no feedname is specified, the original behavior persists. The directory for index creation will be ${DEPLOY_DIR_FEED_}/feedname. Signed-off-by: Charlie Johnston --- meta/lib/oe/package_manager/__init__.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/meta/lib/oe/package_manager/__init__.py b/meta/lib/oe/package_manager/__init__.py index 0c313190cf..0934cda89d 100644 --- a/meta/lib/oe/package_manager/__init__.py +++ b/meta/lib/oe/package_manager/__init__.py @@ -533,7 +533,7 @@ def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencie raise -def generate_index_files(d): +def generate_index_files(d, feedname = None): from oe.package_manager.rpm import RpmSubdirIndexer from oe.package_manager.ipk import OpkgIndexer from oe.package_manager.deb import DpkgIndexer @@ -541,9 +541,9 @@ def generate_index_files(d): classes = d.getVar('PACKAGE_CLASSES').replace("package_", "").split() indexer_map = { - "rpm": (RpmSubdirIndexer, d.getVar('DEPLOY_DIR_RPM')), - "ipk": (OpkgIndexer, d.getVar('DEPLOY_DIR_IPK')), - "deb": (DpkgIndexer, d.getVar('DEPLOY_DIR_DEB')) + "rpm": (RpmSubdirIndexer, d.getVar('DEPLOY_DIR_RPM'), d.expand('${DEPLOY_DIR_FEED_RPM}/%s' % feedname)), + "ipk": (OpkgIndexer, d.getVar('DEPLOY_DIR_IPK'), d.expand('${DEPLOY_DIR_FEED_IPK}/%s' % feedname)), + "deb": (DpkgIndexer, d.getVar('DEPLOY_DIR_DEB'), d.expand('${DEPLOY_DIR_FEED_DEB}/%s' % feedname)) } result = None @@ -552,8 +552,9 @@ def generate_index_files(d): if not pkg_class in indexer_map: continue - if os.path.exists(indexer_map[pkg_class][1]): - result = indexer_map[pkg_class][0](d, indexer_map[pkg_class][1]).write_index() + feedpath = indexer_map[pkg_class][1] if feedname is None else indexer_map[pkg_class][2] + if os.path.exists(feedpath): + result = indexer_map[pkg_class][0](d, feedpath).write_index() if result is not None: bb.fatal(result) From patchwork Mon Jul 31 21:43:00 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28178 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 80E52C04A94 for ; Mon, 31 Jul 2023 21:53:31 +0000 (UTC) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (NAM10-MW2-obe.outbound.protection.outlook.com [40.107.94.95]) by mx.groups.io with SMTP id smtpd.web10.5468.1690840410786187176 for ; Mon, 31 Jul 2023 14:53:30 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=W6tgtQZD; spf=pass (domain: ni.com, ip: 40.107.94.95, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jEm5SNxCH0uE60fsEilquThHu8ssII94vEGf/iriX8owJZpL3wFUtXU8/QzEH5Ct9yHUObrMiKcG/pqu9UYL7cjLcvw/Detc7qkovB6FqLWIeX851Rt/gBkRPi6svn1NPU3EElPr1gFbUMFlvgOoKINHXCOrSarTBQofyrqzNdOUZmKFrx3sIONPwAAZrmEzjkumYVO4IXQZL+q43+bCN7ucPCcgd4SYrczr3Iu3F1/YiWZr3dD0r89GPAmuwkiz9EObiDUrARwcq8HiqG2lmluWxFW2oB6widK7rOpI9qruUEH3+YhEvt5LEV9zp7/SH5bT6DL1QFFxZt1D1EIDOw== 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=uLjpp+j9SUVPiE/VHTtgZEwH5G6Tkb1zt6gKoPJrSL4=; b=QSl7V4bf4Uz3kHxv0e3nFkC+y2fiAmg5J+AIU7IZA1Gupewb3uip8BXJ2o2/wZC7VOYT6PZPz9fNJ74AFgcbKJxQmQMbHq8wjATX+qjE83laDuLn7s3o2tA8PqHW0BWvMyACIZ5W+d13juMEkeKJPxsvOM4N3IIGPr3JclsEeENLt04syvM6h210I+IgMJXNMeOnVqEIjMkyKxj4OtP8kBzERd+tKeY+69mdivlZeLqZesxZFEcWBIZlIanhPZRosOW8JNFS77qRgohPjrl6SlS3BQ4GIpJmufJwCYa+jIA64COiggD1moYcbCpuDv8IkDLkOflWGXGjH6pIlAhX0A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ni.com; dmarc=pass action=none header.from=ni.com; dkim=pass header.d=ni.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ni.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=uLjpp+j9SUVPiE/VHTtgZEwH5G6Tkb1zt6gKoPJrSL4=; b=W6tgtQZDivMufYh1pLMwih/BHTjzncV2kclshUo370fRF2+JDFP06qxyl/1aduOHXTRpYW3DUkSL1iAjKn7McXUsYZQfE3sb4wFVTafDe+s/H8MHSCfdB0P4Lhk6taitb0GEFMMbBo/KBHrGS8c+7ULynDyQVGevt+h5FGY60oI= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ni.com; Received: from SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) by SJ2PR04MB8510.namprd04.prod.outlook.com (2603:10b6:a03:4fb::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.43; Mon, 31 Jul 2023 21:53:28 +0000 Received: from SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11]) by SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11%7]) with mapi id 15.20.6631.026; Mon, 31 Jul 2023 21:53:28 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][RFC PATCH v2 3/6] package_manager: Add _find_task_pkg_deps helper method. Date: Mon, 31 Jul 2023 16:43:00 -0500 Message-ID: <20230731215310.3949441-4-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230731215310.3949441-1-charlie.johnston@ni.com> References: <20230731215310.3949441-1-charlie.johnston@ni.com> X-ClientProxiedBy: SN6PR01CA0011.prod.exchangelabs.com (2603:10b6:805:b6::24) To SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR04MB4879:EE_|SJ2PR04MB8510:EE_ X-MS-Office365-Filtering-Correlation-Id: 14ceac06-6758-4ddb-f7bc-08db921092e0 x-ni-monitor: EOP Exclude NI Domains ETR True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 3lIPWtjGEsfpMv+Sdvp7cLRD2gxtfHGzIeXuRtBVQKSUT581wpLpYjWlFHeJa/njixvws5+v1qP8+HtAuGIei7Mfu4OWJQsMjNSj/wgoFhc9uWmf4984dgH2oACosOsAflJWekWb5h+0FNcKoBL192I+4Jh9V1iUc2eYepExuWE1ZahA6X+vYrHv5pKGoGTWu57j7KzQmZr+xY4FP5TYAo71FbaJmi2EWQyerwDPhFjPr6cZNOJNu2LCBlBrPYxgsz7Vtm6gNqTKPIv18NkuZE1x4a2dO3JOrXUcxbl5HviX63j777A3n0bpmaua6yvHXbU0NJiIMa1Sq+VWqF5QWScLVVajywG58Ick3qB1Z1Z1I5BKXpWtZyqqX0f/VIdEuMruVhLFdje2UT21c10muAUpi8hVQ2YaPQMVDHpQsd3Phm7/ej/mVOoqjFNJsQ734b7JQDa3LanQJhmkitLlaa6w66+rmBABazbNLEexGtuyJDCxymPvXbxxjq/ZDxLOxuINcgL6jglCQc2YCe8QMUrnibT4A52cyRBQUAUXjHYIc8GSvHBijtbyDhyYdYPV X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR04MB4879.namprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(136003)(376002)(396003)(346002)(451199021)(44832011)(6512007)(6486002)(36756003)(2616005)(26005)(1076003)(6506007)(83380400001)(186003)(66946007)(66556008)(41300700001)(38100700002)(66476007)(86362001)(316002)(4326008)(5660300002)(8936002)(6916009)(8676002)(2906002)(6666004)(478600001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: J1m/C4hauriT9Fp9mjh60Q9YQIgw98rkmnE1kOL8j9o1eyKNAbgMt8eNFssWteK4FXP7tpNEdpEzBBLTJVc2ya+hSEXLu4Vbt/exU7afUhDfpWLLUKNJ6qSjsGN/seFUOxbByLzHevwBDsUceEyznNNMs9DQlBD2oZEQp2hKI0ILAD6xXWvn2hv6x2WSNbHx/wECCbS56dfsUrennxfu+gbMDhqvinONu9eqY64q5VFDX2AnJE6dhAmaxsrcBQf4f0LmAbQOHNc8oy3zxUSFVT7CxY3zdeHYX2/c/NirD4I7NBbp3jWj2wGS1MkLyv+CRtz2NhNy+aZxVYQXj+f/ADG6vvJ7Ndf0Re2gSaF6awuH5tT74y2NJ7wvKGB/FSj5n27ACYeJuMaZhEEgQXTlI2uZkk2k607/DlxVw6iz6KiQgSaNFy2VJgsJR2Cff0K7r8CMtQ2GqaonPw1Gi8p5SEcaVEgtE9/x+Mmvwj7NsjxqRrTbZnD1c3GhnaFpRLLrPKdO6khjE7Y04oBQENZ1U/HCfWuIdobRDzUlNAODbVcHXqnAG2/r94PxJ4aQoPIFo7K8Vu3rJMnStMUjYXacfQ+djI83/93OPr4KmjfFNCkO7799dcNOmCjyaOZZJy2nyDqn9IlTbPClPALWpTuxbjyralmiUkbe9EDTgePzy+2zl3XXugXZ5Eq/E3k7xqpjuegNwQ2PzB3EqrOnwHUPIc2+7nr5FCTDLWvJ4tmuALDK8L1ILj8MO0PA3uvBsMV8MRpqxAu45ZtT+HkNmn9bzsN15pg8LZA4HSGuNDvMKBGQqAWbmpzA698mYPvvVx/mhgiBO7LoPeUcgMtt20kpyHH/UK6Xk8wBRF/C1ZO3qM3fL5a1eCq8DEcGxebHJuH1quOjkw/d0NDwl2X3kYqdX7w7FQJBhuia2Nldi3fGfaIveI3dyB5pq8+fGZ+k+nVNNaFk3YrvtrWVkN4qz5Eq/E/WVB4EllZt8IFRZYuBkaD1Fcn9afs3Hg+e8h3TlS7oXHO4GWaSupq8JieDMtqTPe7vgFtCjM9ZFLEZlCp58sYrSWvPeLXGze1EG4N2dacCy1xC06/U3qZePioAsdF1uCBUo5J7c2OtpFSLdCCQiVH+whfxCqbvtVbLO8MeWxKBQv+ZOmFg1dOrc/2DMuWdt7E12UvPbcqX/gVB+cxiRDsJvR7ZmNYOX8cvllpIwv6lW9PNCpnbDsvzgfN1gR9A+HnMEd6ErDEbkTgYmkeYgXqWnKP16wFfP7IKZTNmfA61arscf8mBZLva1zxi6bNmQnATo1mA7HDwhDa4WUNPZDcNDgd+gHpGd3ix8HKVY+ZJzQ8zizuWFTM5J/SxZ/eyHlLQL+6zewUAh5Z1VGd97choCfGH3huTj/RCZisL3/huccfOo/Dtgv4eylTuCrXSqzprXlHsVw0JmaMrADjPah+655S5YVUVy7q5rw2DY6nMpXVrb0ngJfgfjs8TC3/QDpmlP6MjJJNa+ef0Y+CsaI7v8PetPV6TRAmsCxIdoRY/Pq8rZejq3Dwlq1iVGbY2zgM5/xcXYcdeEUkocV5pA1RyU2gto9yWn8rYgxQAmGFTggQwugmTgNzRJIz8Ju8mPg== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: 14ceac06-6758-4ddb-f7bc-08db921092e0 X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jul 2023 21:53:28.5791 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 87ba1f9a-44cd-43a6-b008-6fdb45a5204e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 4KTkOhSR2cEJGIJKrP07o+sx6Qz/Z89jze4d8y+WMVZagNru0ArY1w1FpEd43YRx+mCZaSuPZe4eXhz7fW6a6Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR04MB8510 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 ; Mon, 31 Jul 2023 21:53:31 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185177 To make the logic from create_feed_dir reusable, this change splits the logic used to traverse the package dependencies into a helper function. Additionally, the logic used to find the initial task was updated. Signed-off-by: Charlie Johnston --- meta/lib/oe/package_manager/__init__.py | 60 ++++++++++++++----------- 1 file changed, 35 insertions(+), 25 deletions(-) diff --git a/meta/lib/oe/package_manager/__init__.py b/meta/lib/oe/package_manager/__init__.py index 0934cda89d..7d040bcaf2 100644 --- a/meta/lib/oe/package_manager/__init__.py +++ b/meta/lib/oe/package_manager/__init__.py @@ -449,7 +449,7 @@ class PackageManager(object, metaclass=ABCMeta): return res return _append(uris, base_paths) -def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencies): +def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencies, assumeprovidedfeeds = None): """ Go through our do_package_write_X dependencies and hardlink the packages we depend upon into the repo directory. This prevents us seeing other packages that may @@ -473,30 +473,15 @@ def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencie oe.path.symlink(deploydir, subrepo_dir, True) return - start = None - for dep in taskdepdata: - data = taskdepdata[dep] - if data[1] == mytaskname and data[0] == pn: - start = dep - break - if start is None: - bb.fatal("Couldn't find ourself in BB_TASKDEPDATA?") - pkgdeps = set() - start = [start] - seen = set(start) - # Support direct dependencies (do_rootfs -> do_package_write_X) - # or indirect dependencies within PN (do_populate_sdk_ext -> do_rootfs -> do_package_write_X) - while start: - next = [] - for dep2 in start: - for dep in taskdepdata[dep2][3]: - if taskdepdata[dep][0] != pn: - if "do_" + taskname in dep: - pkgdeps.add(dep) - elif dep not in seen: - next.append(dep) - seen.add(dep) - start = next + pkgdeps = _find_task_pkg_deps(pn, taskdepdata, mytaskname, taskname) + + # Find any packages which might already be provided in a separate feed or repo + # and remove them to avoid duplicates. This assumes any dependencies of the packages + # are already met as well. + if assumeprovidedfeeds is not None: + for pkg_pn in assumeprovidedfeeds.split(): + provided_pkgdeps = _find_task_pkg_deps(pkg_pn, taskdepdata, mytaskname, taskname) + pkgdeps = pkgdeps.difference(provided_pkgdeps) for dep in pkgdeps: c = taskdepdata[dep][0] @@ -533,6 +518,31 @@ def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencie raise +def _find_task_pkg_deps(pn, taskdepdata, mytaskname, taskname): + start_task = next((dep for dep, data in taskdepdata.items() + if data[1] == mytaskname and data[0] == pn), None) + if start_task is None: + bb.fatal("Couldn't find %s:%s in BB_TASKDEPDATA?" % (pn, mytaskname)) + pkgdeps = set() + tasks = [start_task] + seen = set(start_task) + # Support direct dependencies (do_rootfs -> do_package_write_X) + # or indirect dependencies within PN (do_populate_sdk_ext -> do_rootfs -> do_package_write_X) + while tasks: + new_tasks = [] + for task in tasks: + deps = taskdepdata[task][3] + for dep in deps: + if taskdepdata[dep][0] != pn: + if "do_" + taskname in dep: + pkgdeps.add(dep) + elif dep not in seen: + new_tasks.append(dep) + seen.add(dep) + tasks = new_tasks + return pkgdeps + + def generate_index_files(d, feedname = None): from oe.package_manager.rpm import RpmSubdirIndexer from oe.package_manager.ipk import OpkgIndexer From patchwork Mon Jul 31 21:43:01 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28180 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 8B217C04E69 for ; Mon, 31 Jul 2023 21:53:41 +0000 (UTC) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (NAM10-MW2-obe.outbound.protection.outlook.com [40.107.94.122]) by mx.groups.io with SMTP id smtpd.web11.5527.1690840412431435187 for ; Mon, 31 Jul 2023 14:53:32 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=Otu1sqOv; spf=pass (domain: ni.com, ip: 40.107.94.122, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bn7VTdVF5mDWRiBffxB3y57pkoOWtyw3Q9nTehNc6TJd+cQIdqzKPRfUrArIntiDIvNaHd6q8NT871SAQrLdhGwJupOnWyKBjLNbxDAOKQYyZ3fq7sToAMXfNnfy5TjpBgHmYZN5i+pVy/unu4BgJS9gVX9lb8HOzEkOwUxz4Rh7o7SWMLgxzSO+9eiw6/YuGhPfyRLzorKE2uG0CrdEuYxslhVuSGBgbXlX3vm3k+W9NahXEzWhA23+5NDIFsUwaaN8aM8ENvaB1wfvIf88h/fjw8CSkczdP2GbVUl3I2mWgZaBoYFS4DH4mQ7vXMJ7zmeREDQy3ZKGTJPv6cmE3A== 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=5LDGI6bwPX6zTahRoiWfaBM40ZI0UfMWc59x1+GQj7E=; b=eNtP0gaF/jrya3ItXmcSTtSRh2a/Vqe1gBgoVwXy6NEuBTlJ+8w+eVWsMsFFEAahT+8GMT46oiRfhYmGFORyivL1V0ozi5bH1PYPn8T5U8BFF2gqSi1xapMRVmp04gnDJxDfkCd5V8/yLTmwEHmPg8efMBgW6OCqSoqBpzZeldEoNvJlSTI4XdZDqcVmrTDIiPrekxuYsavReBGMJcAk2D6YOQMBP5uvOVX6CHPL0eKo6tvnvB/63ijnfOZaaSAzzyOoKJBSnNd2sGAQUDEpG+vGQcAgDmZjttVXSNdBsds/89UzUQ2xpGxqR5NVWXXOSbE8rD6l2mEdGgViUC1vOw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ni.com; dmarc=pass action=none header.from=ni.com; dkim=pass header.d=ni.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ni.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5LDGI6bwPX6zTahRoiWfaBM40ZI0UfMWc59x1+GQj7E=; b=Otu1sqOvVg6OL0Pzfy5pYzsyvTBDu3s+x17F3ToFG7RT5z0zNOyU/K01VVSeXjAHzp8gUmUcF6KfOovGVVbnMJwnkgoQrf8VIdi/OdXIPLbLcQb6+mJXfxTIDHbdCmTHYfAimnvWNI/B302FntvgctMLcvXyg5Hr8dy22SvHoEE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ni.com; Received: from SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) by SJ2PR04MB8510.namprd04.prod.outlook.com (2603:10b6:a03:4fb::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.43; Mon, 31 Jul 2023 21:53:31 +0000 Received: from SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11]) by SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11%7]) with mapi id 15.20.6631.026; Mon, 31 Jul 2023 21:53:31 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][RFC PATCH v2 4/6] package_manager: Add generate_feed_dirs method. Date: Mon, 31 Jul 2023 16:43:01 -0500 Message-ID: <20230731215310.3949441-5-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230731215310.3949441-1-charlie.johnston@ni.com> References: <20230731215310.3949441-1-charlie.johnston@ni.com> X-ClientProxiedBy: SN7PR04CA0088.namprd04.prod.outlook.com (2603:10b6:806:121::33) To SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR04MB4879:EE_|SJ2PR04MB8510:EE_ X-MS-Office365-Filtering-Correlation-Id: 54e3cbde-2a76-490c-0655-08db9210945c x-ni-monitor: EOP Exclude NI Domains ETR True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KWzsLuqNonjHcm2CnzqTtWJ2JGNlUqmQvtX4y4/74RsDr6zzMLseqcsQYzQ2jD8rOiIBHN9iCxbwZpr4Mni9gR0Y/hJf4/nVTY6jGpyr0tBbTmj6/A0HlU2en/1c4C0cPT4AKo2cjKZSuMYRBBo5Di7LRLdgzuAnmk3NKaL/GYKyIqL0o5kjXflvy3Z4+2gHEgNMjeXMYcV2nQ/EOdCUoav9fjGgTM2L45oR3Pi4+z835bD17/Juj+I6jnk1fTxmBvAmhc9sF0Lpzb3z5NGUV/3OBxcxD1anp/j5WvezDjQhfL4SdFWpPPlGTRhudngU3qMKo+K3QMN4labb6mQPCMZSW0Yefq8V0AJSVWNIXvWN+/wDzEr0fX2ui6JP6eb7wp1Q98IBcJjEKPw0QDp8P4CzUrlFg6sYvzonDvuLFxdTiAbqIlkm1bNxBlNqA0arxypIVZ3FzcC4lXwTmjWJGuKY3neSMPs/UdaUE+9AIoHZauD6XJDWGfilgXBSbLWVcFwJzk98TthXG22n1jTPBTxgQoe0C4RyQOqrKMyRIqBNLW4+wEyaDNtn+BEM4MOU X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR04MB4879.namprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(136003)(376002)(396003)(346002)(451199021)(44832011)(6512007)(6486002)(36756003)(2616005)(26005)(1076003)(6506007)(186003)(66946007)(66556008)(41300700001)(38100700002)(66476007)(86362001)(316002)(4326008)(5660300002)(8936002)(6916009)(8676002)(2906002)(6666004)(478600001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: X106kG1bFG1RH/CRTc9HmyM+th8jIsy0sT7OTBuEpWdmAxNFYGEZLmJJu+VlqUT+AYLcZN5RJWhAARSpXK8Rc6z0Gij5flDruAOEBIIlmDBzcbKOguLGQnvoLxlxaCVYuZZjk1/P1ezZzAbolpGhyLeYD/g/UacwD+dRThCvXXKeQ5UhQnqDYGLiqe/TMSDCkA2dyT+DD3hU0UsYpUvvAktaxi0QdVgtNrFHSsSc1BHrGnP1hcwxjeQhaudcB0VqOUv+pXBREeya/mszfc6oGf9PM6y+2utvhQx3v7YgCwgmuS7j4cIPn8dYUklB5QDY4YYFZJUqDapIX0EzzzAK88wfs5qm83BxyOOxSXaEg1dOgctCp0f+DPzswK12M2QdgdaD+KKDPimx2OfYgJq1DZdKQtYRnyivprZdjij0yp6lD0SXBxZwJXHUnql0cQ/Ihavm6VSGcasPz3bmpJGxzq13INXPpC91bOOinKz+dEHesiUP3tTVwft55/CXDVTefyDgffa0VKZInSsKPhiep4HNmpclgQwinwURu9j6+KpyodPUWkpkuJYwfQjbf21cDLWI8VhRoBF1HWjJPFRzWyavcSKt7A9wonMmMl2bRenioAMIW7qINaIcZjohQ8uaD3Azg+JeocjmIVSgGeBpRg+c48mJT2MMFoQXaEpFQ4Zc4Z0BgzHaAJSkrzE7Wp8wvRE6dvY9cXnSpHdrMSQL1M7woAbRZ0IBati6GTEsvR5aL38C4l7hgz8ild35WpnK7RNr+5w+poo+g+if47mOPuArMG6+yi62K1/0EbrCP5/JMc1u1wtzSoCd8Xm109ROFXN8zDR/CxjzKvF2NIonuY9nHAAopH6jfQONbKnjNXUJPF24OdmnY1xKsesrlDDHT/XXybXyZSX1e/bcjqMYBwtbbjWpJf431FmQVe411DvbYib/cCvxiIV0zwPPzV6Ivc904yaHmLOeiLbSAaobfvtz5ftQckGVScHIM+6W27B2QsaeeOGceSR4J1I1JMEDcuWkCL8VOqribgps0NBOTEcghjryo+xGDSOEKr0Mlpo+dv26k03PciTSuLLtI19q/nAOEYE7Mp5odKylBkqjy5/dSrsOVgoLbdVK/eI2rv14obkKBk1MeaiwED/U5UGYvD+VhF1Nko+kPhorU/U002hVcX+vbq9+e28KrrHPWZiBEm7XyzN93l9dKyUu1NaFYMTVcouZKQT5FB3j5EXsdsBT7ho0T+DsE2wEyTJocmOTCAjbMMQcupgnP9jjv9fQx2ttzpKwg9GwFH5/PWhgGhmXjaDIQrv0GCvz04viyHHKtIwa4Xfb5gtX0BkHXjss3wGYr3BA8mqHwUkhYVaoDIjLGphZms4HVcQ8DyiiOnN59dPyTWri/bYc18R9jb4eVLOyyKU+3fG5KIpq9CnRl9UjD0W5bJ7XWuAJYkone8i8Hw00oejdDxZl1tkIPVCmbZFApyWX9OoPu3LwQCaxMT67DKAfp5xfT7ivMxQpKoAlDwusHMTHLOTcdU1ZBVH8jIqL12d+mTletdVpxS2OXJc+UwhNt8B1LG7V3DlSNjwOjg9dMLE24C2sHQ4U+OOF0N3VRspxNDchqxM6Ox+d4w== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: 54e3cbde-2a76-490c-0655-08db9210945c X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jul 2023 21:53:31.0614 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 87ba1f9a-44cd-43a6-b008-6fdb45a5204e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 23kiPeecmp7/sl4y+qal+z3wHIQY0W8p8cBQiYmD4wDM2cOSqei9LqQibJG4PJzukCCdTmxmKiOm+W7u+Kiigg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR04MB8510 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 ; Mon, 31 Jul 2023 21:53:41 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185178 Add a generate_feed_dirs method that will call the create_packages_dir method for each package class currently supported in the build environment. The value of the PACKAGE_CLASSES determines which feed types are built. This handles knowing which tasks to look for, which deploy directory to pull packages from, and the deploy path for the feed to be created at. Signed-off-by: Charlie Johnston --- meta/lib/oe/package_manager/__init__.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/meta/lib/oe/package_manager/__init__.py b/meta/lib/oe/package_manager/__init__.py index 7d040bcaf2..3daee3b0bc 100644 --- a/meta/lib/oe/package_manager/__init__.py +++ b/meta/lib/oe/package_manager/__init__.py @@ -449,6 +449,23 @@ class PackageManager(object, metaclass=ABCMeta): return res return _append(uris, base_paths) + +def generate_feed_dirs(d, feedname, assumeprovidedfeeds): + classes = d.getVar('PACKAGE_CLASSES').replace("package_", "").split() + + indexer_map = { + "rpm": ("package_write_rpm", d.getVar('DEPLOY_DIR_RPM'), d.expand('${DEPLOY_DIR_FEED_RPM}/%s' % feedname)), + "ipk": ("package_write_ipk", d.getVar('DEPLOY_DIR_IPK'), d.expand('${DEPLOY_DIR_FEED_IPK}/%s' % feedname)), + "deb": ("package_write_deb", d.getVar('DEPLOY_DIR_DEB'), d.expand('${DEPLOY_DIR_FEED_DEB}/%s' % feedname)) + } + + for pkg_class in classes: + if not pkg_class in indexer_map: + continue + + create_packages_dir(d, indexer_map[pkg_class][2], indexer_map[pkg_class][1], indexer_map[pkg_class][0], True, assumeprovidedfeeds) + + def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencies, assumeprovidedfeeds = None): """ Go through our do_package_write_X dependencies and hardlink the packages we depend From patchwork Mon Jul 31 21:43:02 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28181 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 8042BC001E0 for ; Mon, 31 Jul 2023 21:53:41 +0000 (UTC) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (NAM10-MW2-obe.outbound.protection.outlook.com [40.107.94.135]) by mx.groups.io with SMTP id smtpd.web10.5469.1690840415263954268 for ; Mon, 31 Jul 2023 14:53:35 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=FddCXo7x; spf=pass (domain: ni.com, ip: 40.107.94.135, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K3Lx7W9L/PME7hdn5vPFPyutdlMAu18oibr9tFtq/wQ4barSw+HMSoYSsjKyO4rX38xUTt94TJbogzFoQgjmLYmlw8vM4jECJpYmMyPcxPTngUwmV4IyxNcn2JOh+DBagNrcJwDCg/Nf1HHDP5t25tJ7inRcaYdFT4aMtzThDtMMt5nrGOd4z4VTFleGe7K79vhHcQ0Mdk0DwTqFxAjHD2gJxCIJ9r3YQ3v0MEsbfLDsrsd1poAU0bR5Ap7XOtLOrLMRKKCWzOQdjPkdllZcvKUIbhSo57gOBSYUw/6isnZ8HrLpdk5X5PC7S5YI12app9RgMVQhg8lB+GaG9CN18A== 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=8WA2B6+WpdtD2quN1QQBZT6HPtumQEhJE0UycEppUPs=; b=Aw2wZxtV4G7vBZ+7FPSYWcubHqgA9JFka4pNQuc2fUD+8dV8Wxd6gUf6y2HKk4s5fb3Cirhq06CaG8uGoHtIVLx2hY0+7cgw/bb8+ejFbAiaT+FhBgNW2sd9mWiCDNjTkfzLwvQKd/vba91BREKSWlwMrGBTb8mWWuXSGFrsmY2ufolo0SdMG2/WgA+RqvGxj8AR3+AB2KHx3b+huAOJRg9VV1vkyyDXH7zxPjebMZTKd1DdckAMiirGHBqZ4yPxz3N9Z0v56Z2D16gmDiDg39gvaiLWCAGOTFDqxSMhPj4ErtNEJhsrF0XqWZl2AT7qwLYf4a3tWhTmW8uph4YGag== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ni.com; dmarc=pass action=none header.from=ni.com; dkim=pass header.d=ni.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ni.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8WA2B6+WpdtD2quN1QQBZT6HPtumQEhJE0UycEppUPs=; b=FddCXo7xj+S3zrQyLZpvIqbc8WHty57Q/AkNKroYxm/FF4rO/xoYN9c8FhahUDmuAb55nTSsDZpTi7oxJOlBJLX7OnO8tkvTHkLXkBGy19eslrw3WfEX+x8W0GXEgvaq9r8yHgf6dJibV5AEuP4Qe0z2PII/+vikDUlqfibm3OE= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ni.com; Received: from SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) by SJ2PR04MB8510.namprd04.prod.outlook.com (2603:10b6:a03:4fb::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.43; Mon, 31 Jul 2023 21:53:34 +0000 Received: from SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11]) by SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11%7]) with mapi id 15.20.6631.026; Mon, 31 Jul 2023 21:53:34 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][RFC PATCH v2 5/6] packagefeed.bbclass: Add new bbclass for building feeds. Date: Mon, 31 Jul 2023 16:43:02 -0500 Message-ID: <20230731215310.3949441-6-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230731215310.3949441-1-charlie.johnston@ni.com> References: <20230731215310.3949441-1-charlie.johnston@ni.com> X-ClientProxiedBy: SA9PR10CA0004.namprd10.prod.outlook.com (2603:10b6:806:a7::9) To SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR04MB4879:EE_|SJ2PR04MB8510:EE_ X-MS-Office365-Filtering-Correlation-Id: cbf016ac-d7bc-4174-9a19-08db9210961e x-ni-monitor: EOP Exclude NI Domains ETR True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Ri8Bylt44BZGu6KZ+IFKNCOsROjBg3BqR5/RRoMfMCsoQF/sWLE05ysYCf5X3viNpiwV8xPLPmQ3LCU6RohNT+nuHzodTnpL0sghzwLc9I2rl+lalhSMgJxGw0XGgfBhmosSysvsYlBgrBcVrD/4yFhGooRsUcJMNHUS5zlHIqTDIWZNWZT9eLPSQfww1EQgm+9oV7UrdQiLV3NJ9PhktwvE1dyS9ZEdd4HWYV/VP9TPfY7Jx33HKAmZClVyb+NSN9oIv5VwOVnzT3R4uvaN/TBYaM2ESVr3CrvH/iiXFRMeRm+/7vBlhaWG9EMytM/AQHpmficpW4ysZAd3BGC5Wq207tfzh88W5YAm7pGH6QvgMmxIt1lTPKG9C6MV6u3mSuubzpPKA6nT7I0ZCvlbK4BRUocZjjWbYWI7cUk4z6FKnQgeYd9ht2nmtX+4uaXEm+bWKv/hgTk+4rldzHxvjuBqWniaRrEFaxQCZAM9LR4hsZjDgvBrIpB/CnKP6w4yRwL6SSkug+bjNQ3nmr5iODfRvQM89JgvSwRsbAQxAETZooSNue/b9IEDkDCVZ2By X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR04MB4879.namprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(136003)(376002)(396003)(346002)(451199021)(44832011)(6512007)(6486002)(36756003)(2616005)(26005)(1076003)(6506007)(186003)(66946007)(66556008)(41300700001)(38100700002)(66476007)(86362001)(316002)(4326008)(5660300002)(8936002)(6916009)(8676002)(2906002)(6666004)(478600001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: OKRgCSFqgCbUBaHp2bSpl8t+z/goCBxIFLQNCtksG8TwcgXezVfmUv/XZmRbBVyp3rq2Tvh2NFSmR366AuZIZDpJ9rvKg5t29sHTH4yv8pt5XO4B7c57z86n4e6p8KsWsvdBnNF3UvyxIyJetiGgNAf35FaftAkxdTWJoUGJhBAfpWL/o1fThz2XdRKya0xwi/Uuz/9gpgauVpGmUPOAc0ptYyweNPDeUwAfVtgNIYruMF4e0QTeYZYdzfU8+0zhDIkrr4FH2yOwXLNDhUxt+d3qXVkbKuWAbMh7sKiqx2cT2+qiEnNPWMhiCjW2O32YAGld/LdKe4hkclckbRNTtB4pgsI4TiQOid/CfZx7A9WrPGa/U43NX8IZ3ra0egunFlu6Q0o+EHl6LWEsKFzBSmypRKtBYvWMGtEuZJNo/v8FUM4sYFJYlJ2k94Fpy33v3pdtK4Xr0z9rrvt67BZ05KOXSjomGrdpQJ/OBCyw8AzSmFHg/SUyxFD715MZNPZfuYRErp7BDQJMPbQNUVNdFc3HIM1KQLlV04oxTioExKuMLxAhxAkJCjLdHLE+JbnTMBIRkibZYVvweUggocIE2UdaVE3EbE/8gYVHfXyCQ3kl4bpVRGsllwj9oxxfbizu+6wFvJNSlOF+c8t5Ap9rlQ3yb1lKnsL7PEde+rGXgVQd3Ul8Zzp2kJiZ9N3rvyq/N7VRllLmfbd9cEA3dOOkwdYYW+lLZdPFrPREhO//twqzFK2Z1tWRPAKz7WigcoA0PlEv2+IdR32dIk8XyGEK0iIt4vdk7d0imaULK3eLP9FfEtTVH6J/AXfXUASRzcDTTsaudfMD+NetyaUySGBzh2/iqqhTEqr13dLN9DTQ0c50Hh26V30uqMtriTAIwNJ73Q/c3Jw9kkcDDLBHRiQlAKX9ufY+T1jXkc7JDc1326czSDO5zf8wZRyImQBjbIaxDic2MjGs/5/e4/+0xWF3boE7fb3QOJ/b6w1YvONypOPErza7UWh09qLVnxeciL4Va84emTwv6coDyT1gz+dgIrwVVl2JgrITgy/smvwNbXGbAaUISb6udu+cN7QhuGzhKN95SairXWezQuag9DRAHx61ObPplhyRIMIy5luYVhztqAq10uRt/YdpGvgy7ELdErhp6N7h3PHPK8UwxNxD3FrLAmwLji7z8lv8Ueo8aLldZyd4BEIMTYXAL3B5EmMm/qfqOWybxcmdDR/RI41fiuQPAHDv5xHUXboBmTGxekt+0DzI6mW9AiHrgbAZu0sNzNrdPX1Cs0XtyzLmg8qTAY+9t0vOZw7+KJt3pdMPHGxJpNO7eA8KAtxX+eMGuB9omGio4uvkmHZ9M7eeAH8gn+CpCSaVDnnwYUm7z5cw6k6QTTg3UqD34kezds7OO98XEDpELB2+SnTzMPyB8Pccqs1LsxzZlFEF/bfPFdmjGggbM7Kz3maxbMdpUbNOMLSCIS7iIW/H5zIQLciwZGWrCsfdIVEeuROXIKXD9hwo/6E6McDCaS6ajYjHCsQ5/9tSt6T9FR0tMqqTF2LmMkr/Rz03PqFY4Hd/NCEvz0yhEDXSF6jSoJAdV9VybuHNrVkScoFBgR0Ef4F61PYwrGdvew== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: cbf016ac-d7bc-4174-9a19-08db9210961e X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jul 2023 21:53:34.0647 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 87ba1f9a-44cd-43a6-b008-6fdb45a5204e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: t1eadp2hfaElkaXraIT4zvx0ktEawSeU5eHjcB9c+zamNGuk/l+OOpx0BiAh9UyTgQkK6Ngk5TUcd28vwnwCBA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR04MB8510 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 ; Mon, 31 Jul 2023 21:53:41 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185179 Add a new bbclass that allows building a feed using the new oe.package_manager class. Additionally, there are packagefeed_ bbclasses to define package type specific configurations. The do_packagefeed task currently does no use SSTATE data and is set to always run via [nostamp] = "1". The variable FEED_DEPENDS is used to specify feeds that the packagefeed depends on and will be available side-by-side. This prevents duplicate packages in the two feeds. Signed-off-by: Charlie Johnston --- meta/classes-recipe/packagefeed.bbclass | 27 +++++++++++++++++++++ meta/classes-recipe/packagefeed_deb.bbclass | 8 ++++++ meta/classes-recipe/packagefeed_ipk.bbclass | 8 ++++++ meta/classes-recipe/packagefeed_rpm.bbclass | 8 ++++++ 4 files changed, 51 insertions(+) create mode 100644 meta/classes-recipe/packagefeed.bbclass create mode 100644 meta/classes-recipe/packagefeed_deb.bbclass create mode 100644 meta/classes-recipe/packagefeed_ipk.bbclass create mode 100644 meta/classes-recipe/packagefeed_rpm.bbclass diff --git a/meta/classes-recipe/packagefeed.bbclass b/meta/classes-recipe/packagefeed.bbclass new file mode 100644 index 0000000000..04b45e7723 --- /dev/null +++ b/meta/classes-recipe/packagefeed.bbclass @@ -0,0 +1,27 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +PKGFEED_INHERITS = "${@' '.join(['packagefeed_' + x for x in d.getVar('PACKAGE_CLASSES').replace("package_", "").split()])}" +inherit ${PKGFEED_INHERITS} nopackages + +LICENSE ?= "MIT" + +# Feeds listed in FEED_DEPENDS and their dependencies will be excluded from the feed. +# This allows for side-by-side feeds without duplicate packages. +FEED_DEPENDS ??= "" + +fakeroot python do_packagefeed() { + from oe.package_manager import generate_feed_dirs, generate_index_files + + pn = d.getVar("PN") + generate_feed_dirs(d, pn, d.getVar("FEED_DEPENDS")) + generate_index_files(d, pn) +} +addtask packagefeed before do_build +do_packagefeed[recrdeptask] += "do_package_qa" +do_packagefeed[nostamp] = "1" +do_packagefeed[rdepends] += "${@' '.join([x + ':do_packagefeed' for x in d.getVar('FEED_DEPENDS').split()])}" +do_packagefeed[cleandirs] += "${DEPLOY_DIR_FEED_DEB}/${PN} ${DEPLOY_DIR_FEED_IPK}/${PN} ${DEPLOY_DIR_FEED_RPM}/${PN}" diff --git a/meta/classes-recipe/packagefeed_deb.bbclass b/meta/classes-recipe/packagefeed_deb.bbclass new file mode 100644 index 0000000000..2decc70a4f --- /dev/null +++ b/meta/classes-recipe/packagefeed_deb.bbclass @@ -0,0 +1,8 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +do_packagefeed[depends] += "apt-native:do_populate_sysroot" +do_packagefeed[recrdeptask] += "do_package_write_deb" diff --git a/meta/classes-recipe/packagefeed_ipk.bbclass b/meta/classes-recipe/packagefeed_ipk.bbclass new file mode 100644 index 0000000000..89d296200b --- /dev/null +++ b/meta/classes-recipe/packagefeed_ipk.bbclass @@ -0,0 +1,8 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +do_packagefeed[depends] += "opkg-native:do_populate_sysroot opkg-utils-native:do_populate_sysroot" +do_packagefeed[recrdeptask] += "do_package_write_ipk" diff --git a/meta/classes-recipe/packagefeed_rpm.bbclass b/meta/classes-recipe/packagefeed_rpm.bbclass new file mode 100644 index 0000000000..8ce37cc855 --- /dev/null +++ b/meta/classes-recipe/packagefeed_rpm.bbclass @@ -0,0 +1,8 @@ +# +# Copyright OpenEmbedded Contributors +# +# SPDX-License-Identifier: MIT +# + +do_packagefeed[depends] += "createrepo-c-native:do_populate_sysroot" +do_packagefeed[recrdeptask] += "do_package_write_rpm" From patchwork Mon Jul 31 21:43:03 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28179 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 82142C41513 for ; Mon, 31 Jul 2023 21:53:41 +0000 (UTC) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (NAM10-MW2-obe.outbound.protection.outlook.com [40.107.94.91]) by mx.groups.io with SMTP id smtpd.web10.5473.1690840418721861909 for ; Mon, 31 Jul 2023 14:53:38 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=GNQASt18; spf=pass (domain: ni.com, ip: 40.107.94.91, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HrZWTS4SezRvmh1tl47LzTmiRb+uo+doYQKygI8/MHSGx2AfyR1mJpNEAB9iTWhQ2L1t7B3MkuqbeqMQlY3qLNfCpj0BBNh67tOCFtBu5jkYvY9n5Vh6vGb21N+cM1kjBRT2dxJd70zw2bO2v6omW+r8alC1dKE+sDjDwGBUbn2NfsIDs2BBRbKVRKPBnb8QGwyupHqszz4cReBPTuIXUEYxc8gvaIrLptIR1cIai9M0uTNQvAXQaDvJg562ay/RACqr6C2x23iUCuiYcUGLxgPjhdyc6xihX+s6bUMss9/PGmrTfSdvPzyWAZX7x98XKs+WtPZ0LoHLXil7yT5Xhw== 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=jXky5BQUCr8iWXgm6MIstxc+w6aBYz0o5M+YQMtgtPI=; b=Joo6ivB+FIqvUIMDuG2a6sVP/ZgwF3ghL7vGgGiwn9FLjybxGydbW3yvWhce9L16C3zxkRBFuLH4NzGpnCUEqRE/5oaCxs6Gz2FarcvEotFKKvyUcLmAHL+mihHNTSzB45zzlHn1mfGPVKpzK+QdZQIufd336kdtZ8uvYjXtAcWBEw9zgS6jFl5uVfWCvqgYYgxBo9uBufk2r3oiTMSwMk0YXr5OW+BVuRncEbD1rRz42eBIvp2/N84rD2ktHEd3BhO2RNxN7rA9eNpY0XILiJMo5e+aZGKM3Mi0mnkuMQy24/nYljE/PZTrB9MhGqG3v1sMbtVDpGRzsRPylYoXBA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ni.com; dmarc=pass action=none header.from=ni.com; dkim=pass header.d=ni.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ni.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jXky5BQUCr8iWXgm6MIstxc+w6aBYz0o5M+YQMtgtPI=; b=GNQASt18Z4R2qqORvgC0qFSFJT7j1PuMV8tvg5nSBkm76uvGh+6uUiJ7n28w6Om7XmSBnLeleIINK47sw+bKQ2r0mMdc3cNGyIJcHYlAhi1+y1tnUQvhZ9Rdph4aBaUlN+qYelFPQtgpFhujtSL3KFPmkyOkBxiF+bYfobhiDps= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ni.com; Received: from SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) by SJ2PR04MB8510.namprd04.prod.outlook.com (2603:10b6:a03:4fb::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6631.43; Mon, 31 Jul 2023 21:53:36 +0000 Received: from SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11]) by SN6PR04MB4879.namprd04.prod.outlook.com ([fe80::c738:ef27:97ab:fa11%7]) with mapi id 15.20.6631.026; Mon, 31 Jul 2023 21:53:36 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][RFC PATCH v2 6/6] packagefeed.bbclass: Add cleanfunc for cleaning feeds. Date: Mon, 31 Jul 2023 16:43:03 -0500 Message-ID: <20230731215310.3949441-7-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230731215310.3949441-1-charlie.johnston@ni.com> References: <20230731215310.3949441-1-charlie.johnston@ni.com> X-ClientProxiedBy: SA9PR11CA0030.namprd11.prod.outlook.com (2603:10b6:806:6e::35) To SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR04MB4879:EE_|SJ2PR04MB8510:EE_ X-MS-Office365-Filtering-Correlation-Id: c0c87ba2-324f-4233-2fca-08db921097c2 x-ni-monitor: EOP Exclude NI Domains ETR True X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 51umvytwif7H1PkljjtioaZG8fYxMkBlYBSmqc+Lb+WXGoS+JXf0t0bFRp1NV4EMwTm63tX98FhAaB9Rcpd6xeV5CT0Kk/+d+jUQjhKd5+CN0uh3AO4nsG0V6q2qcKzeCzgQlqhKOMsUgl/wcnsAKo2xOBivS9MeQZaGX+fmZZJZcQuPdi4SaejZmGLa00J1JYrWjiP4KA/9/OgwURx4KR8rIYyiwuX9SaboyqlSaW1N9ujy88NgAct7iivF5oPFFufPtXYrFnap6fa0r8irfN9pKRyhfLC6KZ1wMQtv6pDtTfltWDWF8gPIQjsru6oXpc2ORu+VKnAT7Rf8I3qNOwc7wTCqINAegWbMsZWx14zJ8ejVXPmBxL+TjDfSg9slB0/A3tSaKFZiIgJE4jAaR648yGsx4dj5k7sP8WsRvF0PvhQPyvy4cUhmSY0cA/9HTTymSOHdDZcH1gKlWVk7v42AmdBMZa9FPz5SYWTdFy1PX+9qnb52i0WMBCjhgNX8krZRWhLY1pDNlXiJ5pEoX7JbSK3V4CkIC0SzT5TkQq1+5Fo3uRPd39R335YbCsOk X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR04MB4879.namprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39860400002)(366004)(136003)(376002)(396003)(346002)(451199021)(44832011)(6512007)(6486002)(36756003)(2616005)(26005)(1076003)(6506007)(83380400001)(186003)(66946007)(66556008)(41300700001)(38100700002)(66476007)(86362001)(316002)(4326008)(5660300002)(8936002)(6916009)(8676002)(2906002)(6666004)(478600001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: AetZZ51BOA5NiMg8iZDJgnW715TVxgcpB4HNLHy14milb8mDa78QkK2fVu5knQ8FVDadIyK1VqrmI06eRTzkekzuvrj0QQ/nEirMYKvNpVvJieN+vzu1qM8yQvJjVMpW7MasfNv7SjpMFiD0IpHE7UpyKPSUDKHbcaM0J2it5MDYV6xTjtQP7z4s00ztWMOnRKbGfumUMKrnSYo84BJPfITLHrkWP7JV9k97M+R6gO48cZ9PzDd4YQnoUXJH0guAsH0AKQ6ka9ObHDk/APKSWtw0HPWhwm4xAyFDOTyVD8q8OAObaL2yftbmrWvE13CUJWdpxipRTX1UGCucLN4xLM0QoR12FCYFmwgdhKdML3GIZWWVNaRZIwlX3eLxCsEIjGLRm4Kf2rzz2xwDCrhe9JPTWDFNDJA/M+E2jkR/3gtb3Uok3DiOaOn9KOfub0PUI4dc2uCqiFcT1bKdoi8xbJxigLHsYDL/ysJctO5EIto5QWCz+y4A0vBViTVhMsBU8yiAFuVexolKv1WRxefj9Auf+c2/ez5lqMDIZXE57+HTotd3mc+LU/eSLeOCuyVWgze47Ar83xGV8pBNg3o9SJu+D84anpj4+5nIvJtk97IWlvaiuMQeg2n+fQY4JrJeTRCNw5oWikTTuI2Qy2FawI3PbZKN4m7QWW0TKrnDJLwdbiRI81ikvESfdUcn0Scj9S39Tl2pryRjPlJ0yfZcsCbdJ9Xjgpj1b8VaXNE8RFLLBuNuZqi06M+clZzJNe6i9StCN20oIWPii2ks2kbifvkv5Bf5wXyPMa22FgaX9Q1lNWEC0tcKSnBpd3sZomS+FeTDDh6nOcayBeGGrifXQATDQ1LHoyWVoDEzl1BxJVCKQJ1iRFrZFj5bKA2/ZjXMA35K+MzM5/upX2PPjwiHdCF2D8UU2Lw87vCZF0MxTx/HrPNSxkqDhETWG5KHi5lsuFcqZ28DNMlWJbvL56Ye4iIx64HwxMxw4cp9Ck5uyczUIYMVZzh7Uc1MmnlYTeUNIgo8xaV8haK9+if8lNpZ5JP4oMTHUML+fuMberZi7VtIploHoWHMC//3c4G1bOIdQNkiwej88qxq0mb5FTEl/Z9i2U8WuwStHyatgFdsBG9f4svmWakTwYlvxAO4BrEAN8mx33QkWH31sp1Y5T1vfl2QZ453FI52Bjce8A21W1wnH28lgfGKKatT4i5SrVj6O8HC3c7G9TLBI7iD73nntnAdCOq0+9gbR1zUqOU8D9hMH9fqDlonFswiPOpj7x3U3Gx+lrKiG2W//IQbJBjlb9h+ZJrZ6W+HNVwDeliU8upLFjADK+9X3Fcew1sOZfOzEKaFoOt8v8v7a83TR5sKO07rw0t4wwqRgLqpz/LIc+szMwr0CpgS95WOTh6lOvCrm92+5JxxmkKHN803kfvfHy2URQMozXp/JlvS45i6XGiswVsqLL/KxhLeGfKJdyBjErJWlXClSIOUfoAviL2g6TP0OHtrWS6CRmsGH1IAvRVjp5w/BkY8lofhu8vX1sJfLR8bmj+dUn7i+InLGKd2seBFqQfmLBS+8eg+zsSj4Lpp/bMoZMQTf1WRjGjckoVVKrITBW24VW1cSWrUCxoXeA== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: c0c87ba2-324f-4233-2fca-08db921097c2 X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jul 2023 21:53:36.7488 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 87ba1f9a-44cd-43a6-b008-6fdb45a5204e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: El2xP0iNpKqio7orssFzd0Rxxa/PlH+NOxjBcVbo834WMETcnMwq3rY3MQjeLqLr+grs2ceREK2ZQeT3FrHKDg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR04MB8510 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 ; Mon, 31 Jul 2023 21:53:41 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185180 Since the packagefeed build logic does not use sstate, the deploy directories will not be cleaned by a do_clean or similar commands. This change adds a function to wipe all feed deploy directories for the given feed when a clean command is run. That is, regardless of the value of PACKAGE_CLASSES, all /feeds// directories will be cleaned. Signed-off-by: Charlie Johnston --- meta/classes-recipe/packagefeed.bbclass | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/meta/classes-recipe/packagefeed.bbclass b/meta/classes-recipe/packagefeed.bbclass index 04b45e7723..1df09b85c2 100644 --- a/meta/classes-recipe/packagefeed.bbclass +++ b/meta/classes-recipe/packagefeed.bbclass @@ -24,4 +24,16 @@ addtask packagefeed before do_build do_packagefeed[recrdeptask] += "do_package_qa" do_packagefeed[nostamp] = "1" do_packagefeed[rdepends] += "${@' '.join([x + ':do_packagefeed' for x in d.getVar('FEED_DEPENDS').split()])}" -do_packagefeed[cleandirs] += "${DEPLOY_DIR_FEED_DEB}/${PN} ${DEPLOY_DIR_FEED_IPK}/${PN} ${DEPLOY_DIR_FEED_RPM}/${PN}" + +CLEANFUNCS += "packagefeed_clean" + +python packagefeed_clean() { + bb.note("Cleaning feed directories for %s" % d.getVar('PN')) + + deploy_dirs = [d.expand("${DEPLOY_DIR_FEED_DEB}/${PN}"), + d.expand("${DEPLOY_DIR_FEED_IPK}/${PN}"), + d.expand("${DEPLOY_DIR_FEED_RPM}/${PN}")] + + for dir in deploy_dirs: + oe.path.remove(dir) +}