mirror of
https://git.yoctoproject.org/poky
synced 2026-05-09 17:39:31 +00:00
package_manager: call createrepo with --dbpath pointing inside WORKDIR
Rpm database in staging area is used only by createrepo. createrepo fails with the error "rpmdb: BDB0060 PANIC: fatal region error detected" if rpm database is broken during previous run of createrepo. Made createrepo to create rpm db in $WORKDIR/rpmdb/ from scratch for every build and architecture. This should potentially fix the failure as every run of createrepo will be using separate db. [YOCTO #6571] (From OE-Core rev: fbaddd724855a829698d853a70eee86118d6a5e7) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
673d0224cd
commit
b544b4b236
@@ -111,11 +111,15 @@ class RpmIndexer(Indexer):
|
||||
index_cmds = []
|
||||
rpm_dirs_found = False
|
||||
for arch in archs:
|
||||
dbpath = os.path.join(self.d.getVar('WORKDIR', True), 'rpmdb', arch)
|
||||
if os.path.exists(dbpath):
|
||||
bb.utils.remove(dbpath, True)
|
||||
arch_dir = os.path.join(self.deploy_dir, arch)
|
||||
if not os.path.isdir(arch_dir):
|
||||
continue
|
||||
|
||||
index_cmds.append("%s --update -q %s" % (rpm_createrepo, arch_dir))
|
||||
index_cmds.append("%s --dbpath %s --update -q %s" % \
|
||||
(rpm_createrepo, dbpath, arch_dir))
|
||||
|
||||
rpm_dirs_found = True
|
||||
|
||||
|
||||
Reference in New Issue
Block a user