From 88cd40c08109bf732934fa4c8d602c701c1eb2a0 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Fri, 22 Jan 2021 12:52:05 +0000 Subject: [PATCH] lib/oe/package_manager: ensure repodata is wiped When building package indexes for RPM feeds, delete repodata first to be absolutely sure that the indexes are up to date. We've seen some mysterious failures where the repodata doesn't match the repository, so hopefully this will stop that happening. [ YOCTO #14190 ] Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/lib/oe/package_manager/rpm/__init__.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/meta/lib/oe/package_manager/rpm/__init__.py b/meta/lib/oe/package_manager/rpm/__init__.py index 898184442f..6df0092281 100644 --- a/meta/lib/oe/package_manager/rpm/__init__.py +++ b/meta/lib/oe/package_manager/rpm/__init__.py @@ -33,6 +33,9 @@ class RpmIndexer(Indexer): class RpmSubdirIndexer(RpmIndexer): def write_index(self): bb.note("Generating package index for %s" %(self.deploy_dir)) + # Remove the existing repodata to ensure that we re-generate it no matter what + bb.utils.remove(os.path.join(self.deploy_dir, "repodata"), recurse=True) + self.do_write_index(self.deploy_dir) for entry in os.walk(self.deploy_dir): if os.path.samefile(self.deploy_dir, entry[0]): -- 2.40.1