From patchwork Wed Aug 2 21:35:05 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28330 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 10D16C41513 for ; Wed, 2 Aug 2023 21:40:44 +0000 (UTC) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.138]) by mx.groups.io with SMTP id smtpd.web11.565.1691012439129916051 for ; Wed, 02 Aug 2023 14:40:39 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=PV6PKOqr; spf=pass (domain: ni.com, ip: 40.107.244.138, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jURzcXokwPMP6dY3xxnVSXjOo0+kJR5w8/msS2qm4AI2KG+FHDyJrzJfqhzqvhAgzzknix/WLY1N/p0MV0ivoc+MIk7PDw8N1kH73qscKQ10CCeE6f1aHWaWuTjta6o1Lmm12v6SEQYHdB/LDF7yWqzV+JwfedgbrR7wXnzx9RypVo/XJNZtOHsk4yFfp4KxQMwl+t+6g9dgqhqfgzl6JTbEoz/lrraz+7J3i1Z7VrHjsabXT67bkD9R46efmQwvs381UhJ/S1JzsHdbhd1KOf6LogVE6NrPRA5gZH0SME0RDoPovHxi2/+fCG3H5/1IEh1mUlt1iPTEzYcRR+rD5Q== 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=hc2R/mowLPwddwqosdWZmOLOzGBmS78DFJHZo51HWss=; b=IpQM4CTPkS/7pILUuSTRNJbsWu68ZwjDpo2E6VyUbhQ8VEywbcWHa/RURqpQZbxwvD6f2Mw4zIiBbIcLXSSjiz5iLgtG05tTjsz7Z1zz8nmsc+DWk9W0ZV9hK/FhQnLa68Nsn0/u21gFsBXUr5vq/ZuKR42EYjSkfO3/MZVwsAfJlErrUVBr5xLdnjZOjdNLcZMY9Nr/FDl3rbzZ05pl6WdiOBqIMFFWJVEg+i3t7CYPVSujZK20G4IxDfJgx+BJWZfm7fNqWf73ZLHV+y/h8/fQmfUp8JHzF/hZRSVi9267T3QldBV9CdeZFzHVWBd08HIz2mW3oIeNqkA7Ia15+w== 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=hc2R/mowLPwddwqosdWZmOLOzGBmS78DFJHZo51HWss=; b=PV6PKOqrVS8W+5lysVAUuTe6xsUWBi4LrCqsCKzQVZfLMVcMa5aj73uuxV1A2mw16QbhFV3P8s6m3u+AY6MqkXjLIdMd+mfB4lWb0wh6Gmu3V7eWrdEph2h0EjRCYVAbGtyt7anzUBGFi65sPapKMV56JcixXaJYQMSH+c/pI60= 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 SJ0PR04MB7294.namprd04.prod.outlook.com (2603:10b6:a03:294::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.19; Wed, 2 Aug 2023 21:40:37 +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.045; Wed, 2 Aug 2023 21:40:36 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][PATCH 1/6] bitbake.conf: Add new DEPLOY_DIR_FEED variables. Date: Wed, 2 Aug 2023 16:35:05 -0500 Message-ID: <20230802214019.1068795-2-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230802214019.1068795-1-charlie.johnston@ni.com> References: <20230802214019.1068795-1-charlie.johnston@ni.com> X-ClientProxiedBy: SA0PR11CA0050.namprd11.prod.outlook.com (2603:10b6:806:d0::25) To SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR04MB4879:EE_|SJ0PR04MB7294:EE_ X-MS-Office365-Filtering-Correlation-Id: 172ab1d7-5976-42ba-7b63-08db93a11bbd 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: GhGOHNopqSF7SVf1OcOTI2W4WoUxlUiiKJ5KSKNc9y4lxXsPT7cm351UlRuFC3SD8I2cOI389UdvKeEDQu3H/Wu3ySfTf5MB8LiI99f5lK8E1+VvAsaNRCp1+hO+L1Q/YxXYXZzNAKKxKEKvjmBTMLWCRrGfNDxVkzYZe2pyk/MGxs+T62TDvTOGJM5EGnXDuPS73VpFgjmCtqEBZGeeUGTpUrN8rq8/LKN6pdCtsu011RSUhOMBTaoTm4B/LYt6Ui7DF8bR/l+rKUmWDtAxHFsnbyxcoqyGd8kLjI426WPdiCvWiGFdWZDOyI6DUq6ka1e0M1zBrqzCn6st/67UkQgAQOyO70QbgPqQQrepL2YZortnwVsRaVUDMid8Va0/g7U6lY3eOchVUxGW3p+QNLj9BOCGANvmPttDcRi5ijqjJmVs50jxq2H2fYIbz/z2JGK5/7o1wwknNH2l7fVGn1WvS3i+m58CDKWVX8K5xK/Apy+DeDiVlMmw0QwmwGzC6kr6syFQEZWV0iLdAZQ2+1qf8WMsf5jfqqUcnJ5bPpmkQqUOorZSHIm2OVpm+NNf 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)(346002)(396003)(376002)(136003)(366004)(451199021)(8676002)(5660300002)(2616005)(41300700001)(38100700002)(316002)(186003)(8936002)(1076003)(6506007)(26005)(4326008)(6916009)(66946007)(86362001)(66556008)(66476007)(6512007)(2906002)(6666004)(6486002)(36756003)(478600001)(44832011);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: ewJ2xtqBbSuwXuWnyeUMG15ZfZgx5A+PMQMh1cEs3YSMU+jvZ5vbQtP8pefkCfxWYl0f/qOFVSEMY1H2l6ucbrq8aBnhq9q7p3LLVDner13yK+GxI5XG1SFHeVuoEBr0Hqtar5WHkXuuti7Ys9OSFIwDBaZ4MvNVhATkDzUUn174AXg5SXrPg+KUWlFdwCZRny5XlZtO7hPOs2e/uCXM1CopelOiOxT5rmvFAwmDLiC7yznK+kLLsI+/1P+hcB40PlQjnjXVtMtF5WeHXb35Qt8OLyIEfUQwNtVkOfvJroR+6Y55YtbjvxuD9lu7+3PdrJiP61XNG6rxCMGn2h09e9mSW/sz3pcrl/f+d47kIa8ROI+ERA6y+pofrxo35BdnRGlrW0IUaxNMpgVi5T9pLxTNZdUDV0ZIvEHuCKC/S/gFRHhOifv09F8qI3YKgiEsvpGjLD9qMCcB2iX7DCdA/v+hHWetdqDrORkjLaHjOW/UbFIZJfLTCgMtkl5FdOE4FczINUv40q0KT+xW9o/XzrHyMWgKEanuBbAdyhgHjkZeottJ4NEmHWLn6XcY6LsWP1qr1kQvAf0ghudpXLPv120nTsb7EyA1HlURazX2OZK+r/oQFDGw3QjH2E48d8GzzVBEs6ELgKaYDowLttihaFvbPcyr9I5UoRZbr5F1olZYkEYqf8XLPGOchcPthTvc7DfWyqJ6FtyTcVeRPXsDfNbHItXA/7422XGanW/dS2n6ZaqeH1n39OAxrhMOM/lQ2ytV7tLzFHBHR0K1WlKasYd0vlY+GSfUjeIBt/BG9P+qKenXhkE0AXHv9e9pBBAFfbUUKQ/SUFwm+OV7K1N41Uwzt+GOcbU1rQea5SJHJJezbuq+GorjxsYq8Ku/501eZg0F0uQspBgzvjhDrjw3Y54VTJhSQgQmneo26I+yxAkH7d78WcyhbtGYE8nr4A/eagjJWGK81PCX9b8ClrnrBgOICmj/r72WwXXGGfPgcUdZHKqiksc7sx//u2j3KY+ewwJm9ldla8vzLCVSQtDrcHSt85gtT0443a+sqFEZKCvqkfY2UhrQAd0Z8bbbXwaOD0yvboRy6pHM0qVmbUkuHMrSH2GM+KreDo2U38mMzBveGEMOw943NfBWLSmx8E9T/9hHqoxWMNEwMvIKkdA4QmNLmak5SeRKSsjQzsbxiE/rSedFPIROYNIcb3SdhppcVUExqiuVaFdjlj2Qhsup7G6EAp8Gi99TLPGvgCCaOrrwOeEm2Sr8eF1t8lmwu2HDnEh8sFSdXlreHAD9EVS2Vvn/elvC9h7kbc62ucrIMe626eaAt4dQsF3uymNpmHypyYfnduNd6ahBmIJgoPqDSYOEdQVhIsM5aYhbUZ6S+W7OPRMe8AEs54QdO6TrNB1UpzNNCj0Hu9Ab4krcb0TNPlcrqoTx63Jmd+NJNEvc0wk8eDPo+C9AbU74mheJ6kNdCanSLY8B9l0jw/IAeWMu/9f47VpdW+2/BWim7DAYpJJVHy+zOWaJZs+xabmjO7gDmTrpFC2kpwmc2+RjGR5kFDb8iB/HBFdiC6UdHN9jx/OdHL3BgoWDxD9yeopa6CPRaT3lh5W+Upjv8svFUTQt8w== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: 172ab1d7-5976-42ba-7b63-08db93a11bbd X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2023 21:40:36.8968 (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: TN7GT6/MjsG+obX4bbIQh6lAQokAxPtxD0WYlcWEs1L6gzaFm3C47jgX/AxNKBzVGd5DTDDDWqMSLgSAx1mRug== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR04MB7294 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, 02 Aug 2023 21:40:44 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185435 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 for feeds is ${DEPLOY_DIR}/feeds/ and each package type will further drill down to ${DEPLOY_DIR_FEED}//${PN} where PN is the name of the feed. 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..381ca7f3e8 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/${PN}" +DEPLOY_DIR_FEED_RPM = "${DEPLOY_DIR_FEED}/rpm/${PN}" +DEPLOY_DIR_FEED_DEB = "${DEPLOY_DIR_FEED}/deb/${PN}" PKGDATA_DIR = "${TMPDIR}/pkgdata/${MACHINE}" PKGDATA_DIR_SDK = "${TMPDIR}/pkgdata/${SDK_SYS}" From patchwork Wed Aug 2 21:35:06 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28329 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 1188DC04A94 for ; Wed, 2 Aug 2023 21:40:44 +0000 (UTC) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.117]) by mx.groups.io with SMTP id smtpd.web11.566.1691012441876901496 for ; Wed, 02 Aug 2023 14:40:42 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=UnBe/wry; spf=pass (domain: ni.com, ip: 40.107.244.117, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nFMr5NqyErnS5J0w6mBMs0r6Lglc49Ppz5C+9KPdfxUjQ8RCgKKiniTodd8r5QvzZrXnu315paQS5MMR4GdkP0OHWF4pKYwBi8sWjwOh26xfeXeBO8T1qVMgHzmJMrDZ7aSMycLsB0fvT5rqgbdk/j6x09F2MGVFdbUSrwX1gHYZuOr2FI3YRaT272HTDht6inBmIb5WRUtHwPhUuEg8JUsbdCft3aaooG3O8kYUJ37irjipyXXHQkrdg3v/+pFeo6APGfDCYqGlELZQ7Ouuep4fh+Y6EBKNTdnKDaN6JstQNM1l6WsX09reFljuTplN/v4nYzjvhcutY7UoIg9aYg== 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=ilVtkFbp8povxKtNiQf88QEAzl59bqlCMbhe29lE9xE=; b=aNgBBGgDgMKHKEf4tzdO9mD56+QwSqzxmlfcHinOLLiAfiK7xLitc1/fOXXiwDQGwGfiiCNv+w/uC6LjDyWEISI8chqDxGmaeohsUJDmDmTiAkolcJ3cVxZuOhfASu0oPhhdXh6NxXztfLmrEyfsWyPCTILwKHIpMwRlU5tvtNkFAJyPyagV51nFk1UAevgwOZQUA15EkVPEE/Wfu37XSQNNBGJ8/uB6teh1yk22Ksx58yEAGvehBAMPSR20YD8b8pB+kdATb6D0qfjqUiepHZkqZcEf46xY6yqYVdk4KOKwRhNoS3jr/zKYTqq8Oabgy42fQ3m4xrZes0vVh/+t4g== 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=ilVtkFbp8povxKtNiQf88QEAzl59bqlCMbhe29lE9xE=; b=UnBe/wrySQToGjqh5P2IQHsDHVDEsGVo21qZcpOLV7CBwoZ3uS+r9xHGuL6ohF8qt7XX3eT/36PFkVVG+iDVl5jMVbzD+DS5wdNVZZeNHqjvzJqvXgYpE+jK0WSoN4h2tsPwHOmFmOs4k8UaJ1MKOD53iVpTXL7zz3nh1V/dxxU= 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 SJ0PR04MB7294.namprd04.prod.outlook.com (2603:10b6:a03:294::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.19; Wed, 2 Aug 2023 21:40:39 +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.045; Wed, 2 Aug 2023 21:40:39 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][PATCH 2/6] package_manager: Add feed support to generate_index_files. Date: Wed, 2 Aug 2023 16:35:06 -0500 Message-ID: <20230802214019.1068795-3-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230802214019.1068795-1-charlie.johnston@ni.com> References: <20230802214019.1068795-1-charlie.johnston@ni.com> X-ClientProxiedBy: DM6PR02CA0081.namprd02.prod.outlook.com (2603:10b6:5:1f4::22) To SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR04MB4879:EE_|SJ0PR04MB7294:EE_ X-MS-Office365-Filtering-Correlation-Id: 825a6679-8d48-4a47-7584-08db93a11d44 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: kvkV2iZ1AbOtlK65CAGrHbDCQKSUqC3a2oKQx3UZr4GqCnCm4HbwYyqRvzYr//HJZtPecg12czvBBL/EqC91J4CDB90Ya2Ay+m8+OveKfiOotLJR3OT1dmA/Fwlj9El1RhnrfzfUnyX2kkJpuQDLRSKYVOf+g1+vRbuj62wGKXxSTnp93UkxK5lXvbGLIqYM9HlJgL9Dyd/5l9VUgwBYuCwQJr75Z+j7tYVAKyJgaTi5/yJhi2335ALSeziOImHnz2887xDrO/8J95sIuYQEFSKClJQyXchkOQfj/ITeAA9dV5CnbyF/kgcuoGEIoYzDe69Q2poPOIe74iKcc3ukiL20cR72JLahOuhps7mHKzc9LUS/s1m7goTgbMIYJvHuhQaPcFgPx7iwLFVkjSRea0D47zq7fkujNHnoqq4Mns7xnwzGY1cHrn6AECdL9LhVdgDLc8eBaQydPEOF+T+JLsTVALQROvuuOpFUghDGoXJxv2KNvMrF74ROOPOwEu2dBk7SwvEw8oucoSBpjh4BtjKsK28ayZOYiZBH4M7GQG3on9Z/wPL+AFFrX/Vdczkr 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)(346002)(396003)(376002)(136003)(366004)(451199021)(8676002)(5660300002)(83380400001)(2616005)(41300700001)(38100700002)(316002)(186003)(8936002)(1076003)(6506007)(26005)(4326008)(6916009)(66946007)(86362001)(66556008)(66476007)(6512007)(2906002)(6666004)(6486002)(36756003)(478600001)(44832011);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 2LLRhav1YJPSRVyf0ZreRcoR5WKI26iJ4NWK+eH33y49K5KAbUFYqZMPAKMmWNIYvCI2wIV4XoC63cqGoSYySuggR0Tz6dGwemqDX1wkfmVoEOWkGAcArPb1BYE38+Lf5FjLmunA6DjGWBoMHoSHkO9UYs6WmBu63rMX/w/deyOoAptRXHARFhbWYtLSMVzFwgMowFljKQ3Ijp/lISp7e4vcpY479VIcPHrTl4fs3iZT3o4qJh8pKYCpIvjsB+1gA8XaGuVeyyZ/21fDOtb/uYwjr94roGsUf2sgJ74nULGRx/Wm/Q1J+0zEfsd/d59x7pbv8KzQE+nnP4epQVl95T9aLsFnKzrITOagQ9b/EzywDy/VBbXtdopnm5kh+zDun45Jm2djQCk+DHE7b0uvmk62e4ouKKhvpOK0ZcUSRD96EX1G0g6KIAYjmVEGTGbLJfSa+QfucUNQiKFWN8g6b0mx7MhA3Soqh10Y8uk9EAvbQRci9LSwA1XYAOqTgDrpjCYH41yTaEVsv51WtdjoKe806CaQ378ewG1qDGBgpKlcplQ9bPsWfOdimPttsfrhSvJHKkIt30hp+cO+l5YpXTxny7Jg/caa8VXt62vcJU82XF/pE2UpIzuVXL533fqL6fFvSMdLpMWZahWmPm61Uq0/jAbubauzkswHWoGYTjgnUnSi1/dKVU0u8s8wLXjODm5oBszrRGg38Hf63jgwaak0ukL9JD4fjcP8Ja9Rq2716dGi53aw0GJGZH9jIkizaprIomn+oafsT/LRYUrVo3VFg0xpSwRoaJZmjQmO2pI9ViI3p5fTFESMcOc3ovdhFmdTReBaTj5SsYbFyb5ywxewD+fkncN3u9B19s7orkzPk1tYajVJDuUqpxzeRSNrlkjYjz9pAj4CI6ZYDgrxbr/lX47tg9OBYWw/hX55agIwBERPL0ThhgbG20lmRatvxRPkZGp8b0cPDD+RSx2yqKwrRkA0GGz2bL64h37dMH0RVwEHOPuxQamasVvfQ42dFTF8XrrC2pbcQwHpFrEDZU0J+100agkW75UWYCn0kgotCAnhMV6ezk+5wymhRh4BHFtmGbTSe3PzYVgEaVKvZzdir1tJwGShW3XRnb/mZ/kN9RZdBnMbfuD90J0Ylq7guyQWTYMKxBNEPC3YhFM9yTYPXOx2gizLDQy6pcbcFxJbV2gofSX6EhConxa7xjJOTXlRCwh4o7UmwD4p4PSHN4cfXkCxw75Td0HcmyJoEfOVG+N7ZNdaBGRQ+XEROM7lvOfWqyX7mQiMaLwxr8XLhmYNEhT6m9TSCnrYdwFl/72Bc0/epv+X6eUjg4LdXHvV51omZMDEQW6bfTDGuHXjHbZ6Sc7OnHxO68bmTyUxV5vGjyRoSjse14J74COs/vrgr2gs3eSJOVrBJunAFn9cQiP57004DjS0Vq2ICFZv4qUD9kjaUGUxG7tET0l7Vb118TknBuqO+eCRrcCcQR0PQSVwziZNX7gBRcAzWvgtc9PjarW6oE9RrwsXuXRimaiaFbfNzpWbHQC6jeO6R8/Lpp68sisS4cXwyo8YpQ48HD/tV9nsNPu6LFsScI8lRQGdVQ3rnYNe4Ezc7bItQIK26Q== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: 825a6679-8d48-4a47-7584-08db93a11d44 X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2023 21:40:39.4417 (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: jyrXjVUObdjhXv4VIZb6nK9v2mivaMJeXBWewaIFfQJeKS9wEpWedGRSGNz8+vRyFOzkmberlHofxT/AlhOcmQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR04MB7294 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, 02 Aug 2023 21:40:44 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185436 Currently, the generate_index_files function only handles the creation of index files in the DEPLOY_DIR_ directories. This change adds an optional isFeed input that will instead point the index generation at a package specific feed directory. If no feedname is specified, the original behavior persists and the index is created in the DEPLOY_DIR_ directory. The directory for index creation when isFeed is true will be DEPLOY_DIR_FEED_. Signed-off-by: Charlie Johnston --- meta/lib/oe/package_manager/__init__.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/meta/lib/oe/package_manager/__init__.py b/meta/lib/oe/package_manager/__init__.py index 0c313190cf..af4254caf5 100644 --- a/meta/lib/oe/package_manager/__init__.py +++ b/meta/lib/oe/package_manager/__init__.py @@ -533,27 +533,29 @@ def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencie raise -def generate_index_files(d): +def generate_index_files(d, isFeed = False): from oe.package_manager.rpm import RpmSubdirIndexer from oe.package_manager.ipk import OpkgIndexer from oe.package_manager.deb import DpkgIndexer 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')) + pkg_class_map = { + "rpm": { 'indexer': RpmSubdirIndexer, 'pkgdir': d.getVar('DEPLOY_DIR_RPM'), 'feedir': d.getVar('DEPLOY_DIR_FEED_RPM')}, + "ipk": { 'indexer': OpkgIndexer, 'pkgdir': d.getVar('DEPLOY_DIR_IPK'), 'feedir': d.getVar('DEPLOY_DIR_FEED_IPK')}, + "deb": { 'indexer': DpkgIndexer, 'pkgdir': d.getVar('DEPLOY_DIR_DEB'), 'feedir': d.getVar('DEPLOY_DIR_FEED_DEB')} } result = None for pkg_class in classes: - if not pkg_class in indexer_map: + if not pkg_class in pkg_class_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() + pkgcfg = pkg_class_map[pkg_class] + feedpath = pkgcfg['feedir'] if isFeed else pkgcfg['pkgdir'] + if os.path.exists(feedpath): + result = pkgcfg['indexer'](d, feedpath).write_index() if result is not None: bb.fatal(result) From patchwork Wed Aug 2 21:35:07 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28331 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 E3AF9C41513 for ; Wed, 2 Aug 2023 21:40:53 +0000 (UTC) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.94]) by mx.groups.io with SMTP id smtpd.web11.569.1691012444686742684 for ; Wed, 02 Aug 2023 14:40:44 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=UGvHOT3k; spf=pass (domain: ni.com, ip: 40.107.244.94, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RH5r81C4Bl9X8eVSWmezlNsJgwjbqwp+53j2Mm4G1Uo5OAaJTk0euJeDq0luzhq4mrNSXSNxo6yC+Ixr7eGNnxNtdnlssre7u8hDlDtYTUluzajwuoBMTeiR6XYhqteoKmIra5mdDeQYm7mLP4SJ2q87IwqeM6tQv9WsRMD5yOHr+1/9bWakGJvGalicLsq4G6xOZHK+1LJQf2m8zUdKUZPxN0UfPokSXdn8zj4/4GpetUDg59+MviFsEZmUj8VfBZWZUSu2eLFyoEAPx74qKQ/p+j7SALpfcOIiWl784HgXHxF7tJLlGWf1sHrfer1xsU12pF7Tqe9IFTAM5mw2yA== 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=TuPwA88eIXUpOOgCZaOYW5rrr+ec8kp5dtlBDAw1nJU=; b=GXw55GQz8L0K4jqbpw99VggxKsVz3bLjGMafWSV9ZptM+LHvqQAtr+D2bbZ6BZq7+x3vh7gpHeUuLD1967PeIHCavBNmyCpzL6gB81Z4OgQkN5V0dL49Nv/Z4gug7XDsZ44UpHlV/EMgiZ/VpJOO2z4Xp3V0bvySG07vvTtLl7XCKTYNmegYmU9Op5dA+rSVgbNz/hRvdPNqjhIhBvU8360OFu+jtOCCT7wPLwTyxDaifWry1U10xem5zMKNfA45B3dtp4ItJA8yFndNKzRH+BOBl+giE2fy3o8fDk48GthapTzj/MFhFySZbe6hql3TvWOiwIX+4vYa5WFrrPUzxA== 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=TuPwA88eIXUpOOgCZaOYW5rrr+ec8kp5dtlBDAw1nJU=; b=UGvHOT3k4cGkdv/+zUEWQZpsFXoEbVrkgBFmGJr4moCpD1/nN7fpuKZUEtA0oQeXHc4dX+T01Z6Prn60OnHpXORVB12LleQsAEO0iF3DsC5+PsxdljrxKbPMMLPCNwQz9lZeZoO62XOiwU0UOIv5GJ9+9dHHAFnFgmkpkbb+P4w= 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 SJ0PR04MB7294.namprd04.prod.outlook.com (2603:10b6:a03:294::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.19; Wed, 2 Aug 2023 21:40:42 +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.045; Wed, 2 Aug 2023 21:40:42 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][PATCH 3/6] package_manager: Add _find_task_pkg_deps helper method. Date: Wed, 2 Aug 2023 16:35:07 -0500 Message-ID: <20230802214019.1068795-4-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230802214019.1068795-1-charlie.johnston@ni.com> References: <20230802214019.1068795-1-charlie.johnston@ni.com> X-ClientProxiedBy: DM6PR10CA0035.namprd10.prod.outlook.com (2603:10b6:5:60::48) To SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR04MB4879:EE_|SJ0PR04MB7294:EE_ X-MS-Office365-Filtering-Correlation-Id: 96cccf26-0445-4bac-3015-08db93a11f0e 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: ZRyijzxkhc53hyhHR0NXE643z/0EF4oMqAIbqS9kjvqUJDiOC+wSeP504NBGkUddMfBaJFot20vbBrc2H6QWSymqKqwQNwCka75kod/YFqWg4QN2LIcUPxPc+J9n9NGNdlY7bqL7FlDZhzDFkEX8tKqX0bvYXxQUVAcokva4gvKQxJWE9Xi6eXkEjDyJtixP52d6cB/YjYBBOyvjmeO8GRHHXWDf0hHy8jkETMgcliuMISgShlTcffcuS0yyzk1ZET6qq7fAIJZx+CMap8jGloV/vYgZty2Pd9IwTE+h6vqe0a1IGC1kroJMSNqzIcVEbWH/tA7w/UM+J0Pia1QdhF+O8IMympXHXOmfEumdpSuRAcanC3osbkhRXE4GI3JZS39vq3yVP3Ld+Coed6waHWmP6w3GkVzKkfp2RqEFJPkw90pAAtP2HcXrhBWLSJMEy1/uH8zYYzH6SL/+cyLqOnQw70voxxdzauD3ykp0FDu/V64CG43VH7bgw8AoTXFYVmnn+v1RSikDr4ymW8DWDT5g2b5QjdsjrRz+lhtTPCSuy91J/WwBG9JphVvIwHPb 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)(346002)(396003)(376002)(136003)(366004)(451199021)(8676002)(5660300002)(83380400001)(2616005)(41300700001)(38100700002)(316002)(186003)(8936002)(1076003)(6506007)(26005)(4326008)(6916009)(66946007)(86362001)(66556008)(66476007)(6512007)(2906002)(6666004)(6486002)(36756003)(478600001)(44832011);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: DDbizLHcuK0ZcG98DCjM7CSNjh6yZXzFxAlZZqikLjiHnu+66Ra/RP3kgOroXygnmFVxDScCgkEOWrTOnSfK06f72OneIqkYLdufPPHCSGkNe5vm5MBsb6x4WoasH08d+r/8AZoz88GjxaIv9LSSW0Vol6o6oQZ2hQQ1Y/HickCrga+Z9co+qeYFbpLpZEjeUtlZMp3XXb3Wq1TXmpJeefFqoYA6rUijah3IBYK3vSnPd14DAD+0RlxP3mrnmeHv/Q10pDQHHHw1i32Nrd3KsUU+sciOMaX7k95Uz7oboGdvKjdicJtwxb8kL/kkqVRC+sOnyDhigMNIR9zHp8JSBosoazwdK12oxg5LH3owZanHQ1k4+FyocNB/oQlTGqr2DigU5eQ9J2RtOboDPJbBIIwnMYdkRKOX/Lq1fJGNgyxEjzLJ3PHPDkz5bzN0WWNEblLkRjpCKtbaTFTi3t3igil3MlZkl/o3mOXFyVYZm6p57C41Qp1KJT6ghCL9jka6eyIfWgj8/RrKpDqEdej6ZsXKs3yLV1r2Fy8xB5cTE5NnRk/9Du2YAlcfkG6EHTCzWhW9K6CG/gzqO1cjpMK0Ji9OPA8BWVI6tSkq2HXEDiXs9utctIXqLBO4ZJmJ0lGQFJTvhPUlo8j5Mi0ine5VlbIlQlmwNzy27pBs7WVF8P3/qxVvRR3o9WRpapI6K8gViVCCtbF/gaVircz7A56QdEGB59pFuSC1uA5AnhbQC1NNnQTsNsvu69wngJBbee/GgZuciaOfn/+u0L6SZcRq62nxM2PXp2X4CChN6/RMZsSJlF9rGYnMmPJYoxFdbGZPfO4b8BWI4JKc5ZLvCvqBKkRHe5FLwLUYEkkAyHP1KrwhAKhuARk3CkiZ8OJj4XX1t9a+kcFI6EZx3J5KBUFmZMtnbnNIsCoBdD8O6nY3c0+yCjW6gxaTqGuNETKAxa3ZLw+3CuYX2a7y8q0JwT40KzUsjUSXGOCkUMElqSXHpjd4l+i2fEm5xaWhja7qlBochvbEyu4QPoJ90bj0hDcBy+Jghav6nI31DHh34WvXguguV+jIRcI7teafa8hpSckodL2cS238CXvgJNYUM9835YVLP2IsXukyPcLzVlXzW7yBJn1XNgm3X0wzWf0Ffo7QknxG/ZvOK/ePOyTy1/7ZhibalHuTUASvPBGszotfZJ4pCzFqJgb2fsPiNvZaqWBtKwG7Np5o4cXfQCsyMq2zadABzVktWp5D6gCGL5AeTju20eUMxQsM5PFujtFHs81iNU+eTDnk/PUZzq/yFeSl7SF2yyHb7UeJR9qGdKmCP4UVvS9/fOXGY5nXuEzyXe2nbYpv/Yz3Bqi6QsBHIt1QpKHTLaLk6h/krIKnnDtE9JqRrQSJTCSNCOIf6+EGVAOP0SufQUum6mSc80pwFQrdyxnL408w2NNI3UTfqo8cf0kjeqGWhyCraHf1YyQwONxGuwRghbc5/pXCsOT9/T/vyM7tYld5P5TUPIZpQaMjOzvWNrRo+B82T0gD88sDIfUGt3xr7a1u5B4mekQAG+xBE6aaZUkDfgJrfb1fCge+NznolAPgTN5vBSf1kLRBgS8oRgWOf9XQ4AYUarW95Yr9Nw== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: 96cccf26-0445-4bac-3015-08db93a11f0e X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2023 21:40:42.4569 (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: qXA0j5gujmM4706KHgu+pm7b1UKzClJKFJ2V7im7rggxlNBcJ4eKMJoY844RQUv+vnTEe1T3fcIzknJ3zQNuiw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR04MB7294 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, 02 Aug 2023 21:40:53 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185437 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 | 51 +++++++++++++------------ 1 file changed, 26 insertions(+), 25 deletions(-) diff --git a/meta/lib/oe/package_manager/__init__.py b/meta/lib/oe/package_manager/__init__.py index af4254caf5..10376dd9cd 100644 --- a/meta/lib/oe/package_manager/__init__.py +++ b/meta/lib/oe/package_manager/__init__.py @@ -473,31 +473,7 @@ 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) for dep in pkgdeps: c = taskdepdata[dep][0] manifest, d2 = oe.sstatesig.find_sstate_manifest(c, taskdepdata[dep][2], taskname, d, multilibs) @@ -533,6 +509,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, isFeed = False): from oe.package_manager.rpm import RpmSubdirIndexer from oe.package_manager.ipk import OpkgIndexer From patchwork Wed Aug 2 21:35:08 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28333 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 01288C04A94 for ; Wed, 2 Aug 2023 21:40:54 +0000 (UTC) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.106]) by mx.groups.io with SMTP id smtpd.web11.571.1691012446627364665 for ; Wed, 02 Aug 2023 14:40:46 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=aN49h5jB; spf=pass (domain: ni.com, ip: 40.107.244.106, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ItOvLBNY+ha4c6Rv9ScN0R+lbWelIrkil632iNO6NX2IObuiwwiwB+jcMQFdQtSmhBe1G0P9V3L60YFqsXCah/w2hUw93Oah8o18/6m0uZV39Cwo948d3M1v7oEYEojg54ilUmGvqTFvdcy+8qPkgQbm+fQUwn0dn3LbYRgr1Yvscj7JQXlN71vBi0HAFMx+RrmGBdnYbCt5jKaWqJEhFANqugL/jZlXnVpPRie5MH343h451oN8USiYNkrgz3s4Bk2otSaWc3XRQbdQtNqN5ppO+WclW/l73riYbryF4Zzo3/jeP4u7kdaA5qyW3YMZPEiINEIMW+Zm196oUdjVcg== 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=uRDSgsXOM6mYi/9X1SJY2pJUML4f21GWOnaQastIA3k=; b=muvvrL5KV47Jih9TACneIFrfBUkql0nnL/fWlbBRDjNGJtWFLD96hcwFdcYvlicsKPR+9Eq80QXEeuhBZG3WWCOwfRnJBAYZfRJAP+jU3KHhXkZU5hGD6LDozJMCHdRUZtB8A4+qzxjsi+kEPtI23x1GJusSrl6TX6zqvhCKm24Z5hmVm12AvJoZ17VHMcohy7aIgziblXv5JU+odU25zjRqXex3IkarRJNFKxtFhhTgNxGHVOYFug16N9wlQsqN11oiYj1F06fRFQfjR63WLo8Pq1eYlsVKihGlSa3uAkqD2YQ5GnA/4g+Td6K/ZZkRFBl0SBY4TagzbXfPsm0YGg== 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=uRDSgsXOM6mYi/9X1SJY2pJUML4f21GWOnaQastIA3k=; b=aN49h5jBkK37Jm7SqxcgLwQ1lTZ8Rhl1GDe/YI/k3FxoUvpdq/lwwBbPJ0U0uEFc5BS2wEpBth2ihNJovoNkvelp/BMVynoeP8n2ZHWinsdVnpVkjlCa3UMbMXhpOgzm90kmiY2x3OSTFSmOzIVSueAzdeN3xlddNl6cQZzk4dM= 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 SJ0PR04MB7294.namprd04.prod.outlook.com (2603:10b6:a03:294::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.19; Wed, 2 Aug 2023 21:40:44 +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.045; Wed, 2 Aug 2023 21:40:44 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][PATCH 4/6] package_manager: Add generate_feed_dirs method. Date: Wed, 2 Aug 2023 16:35:08 -0500 Message-ID: <20230802214019.1068795-5-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230802214019.1068795-1-charlie.johnston@ni.com> References: <20230802214019.1068795-1-charlie.johnston@ni.com> X-ClientProxiedBy: SN7PR04CA0098.namprd04.prod.outlook.com (2603:10b6:806:122::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_|SJ0PR04MB7294:EE_ X-MS-Office365-Filtering-Correlation-Id: e5d4e3e4-b0d5-4b86-551e-08db93a1205e 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: nyNopdV/iF6/VEtiIrYFIhAtoBpFB7PboJ6PvOyJRtJVdtAcxXxY4lY9MDnYH3l5USHvNOGJMfuKmmgwtQGmwB7YblX3/Rz3b/PHG1PU26PT39DNUC5qNKcmNIQerNxJAfBvh0mpoxKDTO0AfQ8SzEkpdeEdWFVMDmDrPJbNvGzFROiZn2ZliNZfNTECIjJiK/F1xsM1ddb/BInuzoeqBSOO1BOid68uG36fDDiWHk0AmmS1fWRDa0QNmTAsYH4rp113cHTN5XL2Bo3f4Unoi0KJGZQ5SY1Fo+qRxpnYDa/ZSwyIsihENMP/dmN86z3Rbk0j/3XdoNjqYDJTsEeUnlcGq8KR0tSACl4M+d1uPFHGVGgb2MZwNlbqihfb2s1Vqw+EibPnj1hrbxXYiG6epTKqXtE8gv33efCAruyyDR+0ynUbZfwzWAywRzvaCi0cIsL02Nag3JBbreyXogpWm1mPqpwwHy/VrQnsNL2241LZT9ahCxVQ6A2gLpI/LQDKnlBc1KtlD2iu6MUKv4z+zfl4lwSWN5oF7wsVY+jWOYAJ5clCsfcrE2zG2Ybq4Bpt 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)(346002)(396003)(376002)(136003)(366004)(451199021)(8676002)(5660300002)(83380400001)(2616005)(41300700001)(38100700002)(316002)(186003)(8936002)(1076003)(6506007)(26005)(4326008)(6916009)(66946007)(86362001)(66556008)(66476007)(6512007)(2906002)(6666004)(6486002)(36756003)(478600001)(44832011);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: pH7NmY6+H7zlJLbYbBdc0SF7rQMdRm9ih9b4WiICFlvuw5veqavGR0or+Qnb1HHIpjb8uBkiq99wpaDwF+W9Z2/0sGo/PQnIf6TjeY8wm8Y72mENeRGlUHzmDaU13ybagRCZJByQs+Y4ySccPeX6GJ6s+aHR35FF1JRPmPpm+WqCMF0Tl/kzzzKaWp9EUjWdCyyRzRY4mroi43tHpLcNjUOW5JrWV0D7GHZqzzqdTUIEZoKlvBvWIsEiVjB7vkyl0U5lVirtSl6zFnBkZPzX0zrthIHIziJbas2xLeKe7cw5Sqni6aiDpmGgPDJZKcq70tL8xaT+myLg0UHcNb4PwA4VCnz6gTE4qskGe1KZ1alwsSbKhR2vqQLRA6uUz8gZ/n6rr51oE7LUDqAJQa8CTfeesgSvZjmgpFXC9BlXi7OPdv65rSqk6hufKdOYu9I12z7J8Lzc3QXWGqgCtQcM4z7OHTPhaNuQAM6k/K3npzX889+S31I5VtXwu2dQoREZzCGMR+mmvfMXyjsaNDaAm4TXrf9/EZdq0CawMnROS2YZPEPo9HMWJ16+UXgsIFq0VhdqgrOZMOgm9cWzLIZdud2tCtto6Fi2vBeL9Iwk9aX+U2Y4O1C5nxjnG0gOLgzsPQFFyMx188jYtW2xaD/9YwvDf22K7/MISiMpdD3cMsGb1wAOtJG5Jcxa3K2/LxvEKgJG2JGEWUm9/WpPeFMwTyVdJdIlwwUfWhcr+BmQY1JhBZ4ZDRc2v7CqEVnVpwvF+IfXHU3+ysL6hsFxUqzHarc5TT/jSvyBRZWTSBwdTl3y4K8Y0UqWgzIfMz1yX+/9PHTkB1aXp34Gqm9JUmuO+OFDP4farsnF61P3O/PzeOBOjJuufCLZo/x1Fkv6QPjsJ2u21EnHcHhws51LKDodp+/nzZ2n4BfKOneZ1nNDZqb68ZKWax6xdvMLI7Lz+E1hdfw7gyFqw5UFsRo3wQQhVevbDpA4v7zjuXmRUTnKFgwaKBWDmWabqzmI4AMSiHP9/b5vLurNZz5gJJEKbk/BKm683cC6GT8RyOO3lA7Iwgh/qy+F6p560OXGylWVEQYaNAam7+7VCGptN73wN1RwleKZa4XdDQGqBCtlypEVFSNRwxxMa6cT9omSV8LwuueJAZVJjm3fX6Tc5rRNcMZxor8XV3bFvvfx2A1txmZFqvhsns/RgCc/sQaf/HIH2vKcVChKsxY1zM/MJH1hl6dA9BObGE65DtZ8DNbnkfslzqNPoxveH/dNa/+a33+7PBcGvsUzcnTA8wuASQ3raTCDxsQghqFNbX5tj5iq14IWFxI2VfTpLA9f709PJDNGDTzV0FCcQCJG8sWPsftvMgJaudZiYF4zEyihW+VAr0T9rBu9A3gXs0TMmabUY8+xueLe+TetdarsdXnJHmI0+weAAg05jjErX0vq99wMluKTtOdWp1gmiEw7Z2coOCuFnW8C4SZmjz2tLHUCZisDZkapZ5F6IlrfPRcaKIebhHUhEHqqFPznzmznW3f2dk4oyS2LjwPkLYOvfMhk38I/QGiJdxPlcirrQV+0YYhbdi9smV+LOiaaGmfglhtDI9n60GAvv3r/6NMaItTRuUQ6JDGHhA== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: e5d4e3e4-b0d5-4b86-551e-08db93a1205e X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2023 21:40:44.6357 (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: dY/NUbvUCwLTmSIeBSDZQnMwJ6Yle3gIPrfoB1b1bJimN72C4MRIFbwlHSK3YLWR3LTQr3EeuBcQ8aiq+nNhyg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR04MB7294 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, 02 Aug 2023 21:40:53 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185438 Add a generate_feed_dirs method that will call the create_packages_dir method for each package class supported in the build environment. The value of the PACKAGE_CLASSES determines which feed types are built. For each package type, the new method will determine the proper name for the package_write_ task, the directory to pull finished packages from, and the feed directory to copy them to. To support side-by-side feeds or situations where one feed is dependent on another, the create_packages_dir method has been updated to support an input called assumeprovidedfeeds which lists feeds whose packages and dependencies can be assumed to be provided in a separate feed. Those packages and dependencies will be excluded the feed directory for the new feed. Signed-off-by: Charlie Johnston --- meta/lib/oe/package_manager/__init__.py | 27 ++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/meta/lib/oe/package_manager/__init__.py b/meta/lib/oe/package_manager/__init__.py index 10376dd9cd..e87ae6d8d7 100644 --- a/meta/lib/oe/package_manager/__init__.py +++ b/meta/lib/oe/package_manager/__init__.py @@ -449,7 +449,23 @@ class PackageManager(object, metaclass=ABCMeta): return res return _append(uris, base_paths) -def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencies): +def generate_feed_dirs(d, assumeprovidedfeeds): + classes = d.getVar('PACKAGE_CLASSES').replace("package_", "").split() + + pkg_class_map = { + "rpm": {"taskname": "package_write_rpm", "pkgdir": d.getVar('DEPLOY_DIR_RPM'), "feeddir": d.getVar('DEPLOY_DIR_FEED_RPM')}, + "ipk": {"taskname": "package_write_ipk", "pkgdir": d.getVar('DEPLOY_DIR_IPK'), "feeddir": d.getVar('DEPLOY_DIR_FEED_IPK')}, + "deb": {"taskname": "package_write_deb", "pkgdir": d.getVar('DEPLOY_DIR_DEB'), "feeddir": d.getVar('DEPLOY_DIR_FEED_DEB')} + } + + for pkg_class in classes: + if not pkg_class in pkg_class_map: + continue + + pkgcfg = pkg_class_map[pkg_class] + create_packages_dir(d, pkgcfg['feeddir'], pkgcfg['pkgdir'], pkgcfg['taskname'], 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 upon into the repo directory. This prevents us seeing other packages that may @@ -474,6 +490,15 @@ def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencie return 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] manifest, d2 = oe.sstatesig.find_sstate_manifest(c, taskdepdata[dep][2], taskname, d, multilibs) From patchwork Wed Aug 2 21:35:09 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28334 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 E5331C00528 for ; Wed, 2 Aug 2023 21:40:53 +0000 (UTC) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.127]) by mx.groups.io with SMTP id smtpd.web11.573.1691012448925498502 for ; Wed, 02 Aug 2023 14:40:49 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=Svt0+CR8; spf=pass (domain: ni.com, ip: 40.107.244.127, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=asjZcazQbnu/DI+6u8FOp162vbA3UGhgUPWNjZPWNMxXSVLqe8Ljx25wmxPcf4a1Q2EQQBCV0YGbYNPAtoVtuHf5FgZbAt2OyBpZQ57QC9e1JvGNro9dh+d2LuNoRfnu8snxbfU2KzqIud/swfA+X6EDSGF8yq+HDwv/GU9dRTi0ImHaGCZCQzt4Wdh0QI8pFwJjEkaxdwvYF4C16YZgEUveMdFPV3Vo8WwqEmY3bQfspIGNih8+2jX67JgvBu8KuniHpFbIcp2mMJwKgzaX9cKWHVQnmBNEro9EtrjE4YiuATQAfDTkAriHViedLYFtVqQ7G2Qilyra+1cdO6Jakw== 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=Pa1VtDkPys8LJ+xwU8hizM36gE3s6N72nNXFPu4yo38=; b=gQPXh22AhR/T6v3q0DSsJBCt85EG+U1WzuP4aCBWgIlAFhfCFuWWisWiyrbadeKlQgawJHoiEyjppaSb5ymbsc7hzivZsop/MTe7ENNq1jq7kPuGjjxfvW1gpvl7NqR3h6B4ocrtUjPqJ1i8bc9G0xYBCwnuVWRGfpG5C6UfUxoNUCqnp0/RW0+ONHGTrqmewlI3PugIlONCoU0kSINUsekI5qz8nYQZ18mue6cke/znlEgiv9gv+Mg9/TXj01gRQYK9TEZWNwau4+9I4YZr2VAmxSPKshFa/wLJwvznRT6j0Z1nLUnoF5ABcb9Wlb8qxk3QuajCYPXdzF+Tzv5oKQ== 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=Pa1VtDkPys8LJ+xwU8hizM36gE3s6N72nNXFPu4yo38=; b=Svt0+CR8PzPlHoWpJucqMD1DatrmW3Ig6QB5MQaSHLoNy4Zmh8/u+lBE8YOvW3bA9bm7t3vCVtMM52MExZbqhmQordVw/hNGKk5siL/wEuoQDxp4zN+/yEtqxJrVvPZWQuYBTxoIr5je5wu6PAeRLDt/L3lsuz2l0x5EdxcB3fM= 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 SJ0PR04MB7294.namprd04.prod.outlook.com (2603:10b6:a03:294::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.19; Wed, 2 Aug 2023 21:40:47 +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.045; Wed, 2 Aug 2023 21:40:47 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][PATCH 5/6] packagefeed.bbclass: Add new bbclass for building feeds. Date: Wed, 2 Aug 2023 16:35:09 -0500 Message-ID: <20230802214019.1068795-6-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230802214019.1068795-1-charlie.johnston@ni.com> References: <20230802214019.1068795-1-charlie.johnston@ni.com> X-ClientProxiedBy: SA9PR03CA0004.namprd03.prod.outlook.com (2603:10b6:806:20::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_|SJ0PR04MB7294:EE_ X-MS-Office365-Filtering-Correlation-Id: 8d3764f6-a87b-4f6a-4b2a-08db93a12223 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: IgPTVe6zCvvMPTP2FXFPONulbY5KI/vkG/Cijz3bIDNcvoAKpOtJqvOGhDSI4Xhcqv4ELgTs/U5af2gpYpx8PqM6E8aUdyXf9aE9dmcn1ZH4axx/MIgI2zWZAnHvsMKFX14lH152YXFfsfiqOVhnHqmXMzH9HWG4XwZzqUZqWZYVx8hmD92MVZwh4U0+yadAMtOISCsTMBYlDojEjRxJFJaOwfIoV1kEGxsM3DeRtvqqz3sAXFRplU7Ciqx2ytM535BiNEsncmgd2EYJ2q/i+QwXI79IHtvhof36fwp+OBdJX9mNeXj09gMM3gXbGf0IgctPNjYcRycbVY7HleKmrYxxju6tm4hzb4D+Grai58JSTx8aVI73khFdnh7BK5eT1aB71durnNc7lLsEVSOy5d8OrTH2yURoLTjgc/2IH/RI44hiWBtqS+V9LJj7paJMNZpcJ+IMuRumrPHF/2gPIVs0LKuphjIUIftG+htE/Bi/wGNOdv05MjSE11S258dJsn2wyefsxnD0na0yrXo7FEhZRDRps0wSR7xyr3YLmJ8z6LnWDmCpjeVybu4svAtZ 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)(346002)(396003)(376002)(136003)(366004)(451199021)(8676002)(5660300002)(2616005)(41300700001)(38100700002)(316002)(186003)(8936002)(1076003)(6506007)(26005)(4326008)(6916009)(66946007)(86362001)(66556008)(66476007)(6512007)(2906002)(6666004)(6486002)(36756003)(478600001)(44832011);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: S94LDe/HGNtIef2l+e9+2ZeqZsPWuEwXspspklhnMW/33sNsplOPCWKwehmzeMeB+j+umH6VufgCRB39/OniTKj36OfF6O3NOpMR7x0u/VkSb2es/fmE04A2/5ElIir5KI9TEmXfR3Iac8wWtgnWI8ppWjNbfi1WBUeKWs0FFGILU+sMt3vxCZ8qvYDl4tb8AdCBmxkcKou1LquY0eW87ZDlGlVMPTA25PL/72hbos8vSQKlrqL1I0r1SN7qYIoiQ/1zLXQSv2VxVdhM7Tqxt47gjEwTF6wCClzJpupMcTqAUmzg6b6YYY91f3NRhiaa8q1EzoOD24QolS1Bc9kt7uURt6eYBW51ERXG+jIIJ5KbTmeP0S8Psdy+DYMqUed9vDzISxCxpl1euCK/sme1Geknt75dESbSHfImAZSgnfzdGhNW583ziM9CyChLNv0cIvt3S2tLYaLnVRKLdvUTCsr/hcL6mYHtSY9wmBjCOo/cZoDP7vs7J0pdUjZ2Dl0RsMJT1dWbXCMQSugsNkXfx9sKwbhHlC+wMYdhLEiJwvuKePO9uPhpoJ6rKyRVKiAzAbsLo8y5285j8S1zcDt9Fw3NLBk1ovgvImiEhwYUM7zON7soRAFJ1xFIaYYBibelgZVa7F/cCNzoxekvNdeeqnsiCeaU/WkbYeI8B9cZD7iLhw5IIPR+KyNVRw+GzvsOc+BErU8UdGYhbA7yJgSSQwOb30j7yE5UaIDw/zl8QeNwBDGitrMZFu0hoaupQSDR9jZTvuu1PzvFunqI6kxCHFHVNg783r/m7gffNCpJnJM4uWL5JJtvbtFoZSNnL+n8XGU75Iqy5u+SyHj0zfl2mOl8ZtjMEhDE2wqfTsCRoRgF51ctrXxVoQZmTNMF7WTAckBNbbQ/d0rXCsEp4LolZxtPnHV2lmQUm3b5j5i85o3KK0gdbs0QqmDQGxmbobPitQegdbtLmyl9g/US4k63bcvIWud5X/+why9PlekgnWUp4qP/N1Is2PItFNNiVkPw6mKSv3od8qck60RQYzV/eYAcBMSHL8i/rH152PesCDuhcBq7kod4t2X6ENlJiliVTCTnlahWcrP2Vp03JFh7YuYZQhHCn1me90jvx71OG0QYEjqrBnStnKLLM81wxrT6ygSRs6NqbgBnquOJr6JyWSGoPn1/o4ytUe+szGCcJS9W1po3dOUVYm8OkAIlKvJHBIpz/0Ag0Kk/7n66xR6qfIpMXZTmUretpmAL++CSprZBi48B15CsrkkmU+ZR1T1CTpMw7wOIAVknXVuL5z38ZZZ5T5KahovT4W70+4GmjKKw+nhazO46CzHoIgou4+IXf5A2W9tWruOD/fhlIQpQwRhFuZTCrizK0UTfm9x/XKVZw61P5O/qIlWfzg1BVoJ7kBKGZ8mePEKY2YBBTUzyRevBSVeNKAs7c0+JpVm5rwgzCmJSQZAtSNdN9++GV9NQb10W8JXEEwZdqY1LYAXPshGTC8KyD19xneBalWu9NiF0fTQeRWaN158fXXkoYquQNFMeJWIS29bu+FV9ZgTyhh+uQlfMGkNZmQXCvtsdQHD7J3iAmZhWMIdfgmWPSbUFNuuZIomxOQqgXEQyE0WVLA== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8d3764f6-a87b-4f6a-4b2a-08db93a12223 X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2023 21:40:47.6145 (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: wWkuR1PA1t2YtakUSYFSTAZs3aU8l+cVjjWD8krZsOwI68AsbYwkv1J+WXh3I1+6GPpoHn/hjognlFtcW5SZwg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR04MB7294 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, 02 Aug 2023 21:40:53 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185439 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 | 26 +++++++++++++++++++++ meta/classes-recipe/packagefeed_deb.bbclass | 8 +++++++ meta/classes-recipe/packagefeed_ipk.bbclass | 8 +++++++ meta/classes-recipe/packagefeed_rpm.bbclass | 8 +++++++ 4 files changed, 50 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..08df96f662 --- /dev/null +++ b/meta/classes-recipe/packagefeed.bbclass @@ -0,0 +1,26 @@ +# +# 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 + + generate_feed_dirs(d, d.getVar("FEED_DEPENDS")) + generate_index_files(d, isFeed=True) +} +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 Wed Aug 2 21:35:10 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Charlie Johnston X-Patchwork-Id: 28332 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 E3ACCC001E0 for ; Wed, 2 Aug 2023 21:40:53 +0000 (UTC) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (NAM12-BN8-obe.outbound.protection.outlook.com [40.107.237.138]) by mx.groups.io with SMTP id smtpd.web11.575.1691012452313609051 for ; Wed, 02 Aug 2023 14:40:52 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@ni.com header.s=selector1 header.b=AN9nXebk; spf=pass (domain: ni.com, ip: 40.107.237.138, mailfrom: charlie.johnston@ni.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ku5PELRniEt44woeeYHN0y2G6q3mBb7F2e1ZTNLHQxco/B0WaH0RT6XdupiXOnYb6ddNs/4kbVpdw+4Op2kssj6raFJK3TGIEjr8kKwldUc57z+NVZEH1vBKvdp8gSHwun3tR7uBBP6SeLCLFNpUTcliIfLHx44sO4z5lW9pn8oAi+rJbXZb3+UOYVGtqvpvP0BiKu2v/7nc7TXLSVwVHzDUNyQif8VT7GtfmrJuGNeboyXyrtQv3rvbukxS5JawLztvvUp5E2PNCrTZ8exbAsKzV75f6I2FBcweTShanYIztkO6nXmuRzruIFEOQ4p6oPANnykoDkqhVsrQL//2sQ== 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=kp3IZuvVfAnQVh7kj9lg+pkZs1BGDtMA7mOv9bcvjlc=; b=nIvYdiLQj5bG8da23wKMIBwDf3uAh++sbT/+XJ78cx2j75/NgkB09gvP8OLpPDlz01AYJZPBwksb2+3kyvDfM3walmOofy5CVIA988wSgHMSgQFdFeueFqvVb03nvPdg7m7YmrARG4Dn2bKOf/sTSqLGvhkHeKb5g3x9oV4i9An8JXMxWHjjbQ15fCPHVWa1BoJvgl2EIdfiEQfKhhMXxOtQpfcfikLMFpGvGskHWP5OvM6javY7JwQk9mOcGjSW1hgMDcJ/Uga+0VE6c6j1HzMfg5Pvbe6aMoFDEF9yONGL2RpB3acMJMESsZ3O+ExTRJ38rT/AuJNiuFhaW+T5rw== 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=kp3IZuvVfAnQVh7kj9lg+pkZs1BGDtMA7mOv9bcvjlc=; b=AN9nXebkXfVQwSHzicavCdXVRnzfge3oFmRiu/0jAPSTFD/Ii6zbcqPotS0USWwb2wvsQzDGfgs5oNFHj+QO1KkusWPOQNM+k1OHG4vxGvatNkhbDYwSiKpUcK8rfZjYzZjifPXNJG4c9QXrJia2qfpW5IcbZa6he2GGr+6j9kI= 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 SJ0PR04MB7294.namprd04.prod.outlook.com (2603:10b6:a03:294::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.19; Wed, 2 Aug 2023 21:40:50 +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.045; Wed, 2 Aug 2023 21:40:49 +0000 From: Charlie Johnston To: openembedded-core@lists.openembedded.org CC: Charlie Johnston Subject: [oe-core][PATCH 6/6] packagefeed.bbclass: Add cleanfunc for cleaning feeds. Date: Wed, 2 Aug 2023 16:35:10 -0500 Message-ID: <20230802214019.1068795-7-charlie.johnston@ni.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20230802214019.1068795-1-charlie.johnston@ni.com> References: <20230802214019.1068795-1-charlie.johnston@ni.com> X-ClientProxiedBy: SA1P222CA0028.NAMP222.PROD.OUTLOOK.COM (2603:10b6:806:22c::30) To SN6PR04MB4879.namprd04.prod.outlook.com (2603:10b6:805:9b::29) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR04MB4879:EE_|SJ0PR04MB7294:EE_ X-MS-Office365-Filtering-Correlation-Id: 8fd94c24-226f-409c-e4f1-08db93a12388 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: lYjoq67coTybtC2HPQNcl73ymO7VgmgOuA4k5qzQK1ydP9GqWPbCGU8g6jcaxzIBUh7j8pH9l7+yziZC2KRklSBmFNES/Ln+zm60XuSNqhoHqJFwUzCutLLYGtE4P10sw5oiOGHpqqFRY0bshCzJ8hMCQ48F2QoUMlYZO39WuyAHs9ttFQT7JO0mATmt/2MOz3ePN/JT4VRzTaX2JbplkA6TCATSBXpf5ydl0OLuECFtliYS0PCknf38aZyZ21t+kAoXDU+xXY3qw4cXsr6h8MUyTKiqrleBJjddtYhFzlnWpxlgIw7LugXsalJrwja7RjxS/IGJS8xswzLS6UJSejKFURpgmMOVeUsmhjq0nEPL8TY4h3Q2gKs0GZ7QWH5TaogKOG54Cyra4nPsxDhT+7H8/u2siUNfif8l4hVLEh0Pnog0hnMMyKY/HPt+B4UNy2zYCFrFSScjjNPKgA23pGuYWumvaLCDpZDGMGVyHbcGMmzftACjswHwE/3umHCdUMF0ULXx7ujXr0gwDDeCpnQi2krAAqlDtzIT2rKUWP+2oU824VsbEY8vX8gAq8pz 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)(346002)(396003)(376002)(136003)(366004)(451199021)(8676002)(5660300002)(83380400001)(2616005)(41300700001)(38100700002)(316002)(186003)(8936002)(1076003)(6506007)(26005)(4326008)(6916009)(66946007)(86362001)(66556008)(66476007)(6512007)(2906002)(6666004)(6486002)(36756003)(478600001)(44832011);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: mfWyvc40Vz2HAKhKijSnRh24KbhhZvhtVwpQ6SqB2Z7EahYhnDu5DdMDipD6kp05OidJyPZmz4mOiMqQ2HI5XdchoHkFRcRj6a4k5UYQfZOb4i45GmRXtdDQwhcVq+nf7qZtpDtNgwA8/6JdQRA1wu3HQdoItfQC4g7d2eG1JTBu3waEfkihveB2mMotEnzKmAug8CE2tPNnxHLBWtN67w7UqmMOdI5ZI2fKLuvXBh+SHGLaUEg4Y+bD8i/YH3nirtf4DZONA57itXoKbdJkpt6ssp8zAJtbYIZWLIJaTPX+hxf/u3ByKphEZVk1ZY13hRmvnhWsx35Jgprzwe3F/YAU6JpCkLGDKDdJAhK25FgNGH/YlQb911wcO0qOOqkBp8Xkv7Awk3wVUfs3kcqSDlha2eYwWJHuPEc2kaqNucA6WolhA0wflkowqLSmKQc7of1F0920ay5rQZcLoATjj2MBNv1ohe9v4ZX5fh8gR1pOhJv9WOg44+0YpxarT3FwCO+kOjMA8aBT/o58PhtF3dlWDorsj97occVRNLz3LVykTD/rTPObdyD/AXoaSgnVwLuKhgruvKK3rFmIj94l42ZKpvT8uipC1X5YLyafDI0dViPg797fdvq8PVeQbCKI+7GGvKjx5BwMgalmDTBcn0tPv8pjw8K5O8N6SiVpaBuGdpJ0Hs3fcBsI3UJ86NTYqkNcILsmvxUVDfmd2lTmjzYEQP3i2msaVKLUaKbKIJOGq8Rf+rz/EDj6U+/+K6vjzAxERlZQOhM3MNY8aSFKYQB5D0mPw3DVMGBcgpDpmpgabZP0ULgMOmKcwQgK4n1O9LXcvz1kmCDeoZ9zBk4dEz1JMojmhOHJ4gqR1BC0L0BBicZ4OCR801JR3Bbl39wlSqC2vSMcQ3w/0mJOKyR3STqslIOTxynJp0Av2ES00xGA88xnC4szzNZXp4qtxKADv1/HDwR4gtp1NGW7YN6b7jn2rv9+xnT8euKDS6KlIMVoOT49B4USydmXeYckWkN3SxX66QoyLtDSWq2hPFyrfuwJwuk3E8UM4ll6Cz5RUr+mSKBjQOyt99QiEWvdF9CBk+CNwWFuPz3mtk73FRDEi0ohRia+/v1H6iBA4VUn2EPetYoFEwGnddfYglq82N1eSDIurSHYvk8tpuNQgrST92maGtihlkByHBKLlafh7SMKqerbh/FWka+34z69cIw7i5olgp2l02sS75IL1+Amz8PME9uAC6brFKQFrctoe1clHz6Qa5GZip5cSjPCvlbeO5s5u7F4VC/8QASBNzZYbOh3+Rp9XeH1QSlkxyxRlBeTufBvjSrvrSlMTkiybA4SZm8JWiRy3Fgh6vaDnzEUgNN0Azs/dnqCI/U7zzKbIcwXzsVnlX0dt8GzWtIX0nWGXFYTjx6/9DXPT/nRpwTFqhkw1qOi63MQVPQ8EFYeXphjIEFVeHClo5xgvTOwq24DgPCzR99DuLOJCOq5l9TG4BQuTgpWtBuljM6vb+8TVCRa63a6M39Vu8na9NITfy6mTeg/gHR2EjGr3DW8vqir9QS62UMqQokWNAwt4YwnYJNYsvCt9ETvm6qNke3kWTFrsFB1fniPyCFj8eUf/zpMJQ== X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8fd94c24-226f-409c-e4f1-08db93a12388 X-MS-Exchange-CrossTenant-AuthSource: SN6PR04MB4879.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Aug 2023 21:40:49.9542 (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: jfySQd+5EvycbtNLqH0yQGALuPCuBl0SgNfrLvXidLJgANSqmfdBq6XV3zakaDPNoyzUEpkXKOsU88n9Ap3n8Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR04MB7294 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, 02 Aug 2023 21:40:53 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-core/message/185440 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 DEPLOY_DIR_FEED_ 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 08df96f662..2eedce9f74 100644 --- a/meta/classes-recipe/packagefeed.bbclass +++ b/meta/classes-recipe/packagefeed.bbclass @@ -23,4 +23,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.getVar("DEPLOY_DIR_FEED_DEB"), + d.getVar("DEPLOY_DIR_FEED_IPK"), + d.getVar("DEPLOY_DIR_FEED_RPM")] + + for dir in deploy_dirs: + oe.path.remove(dir) +}