[oe-commits] [openembedded-core] 15/25: package_manager.py: fix bitbake package-index failed

git at git.openembedded.org git at git.openembedded.org
Thu Sep 15 21:57:39 UTC 2016


rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit 8c5436118d4c8695ace89dbc2b7957ef6759033a
Author: Hongxu Jia <hongxu.jia at windriver.com>
AuthorDate: Tue Sep 13 04:48:32 2016 -0400

    package_manager.py: fix bitbake package-index failed
    
    Previously the following commit in oe-core move RPM metadata
    from DEPLOY_DIR to WORKDIR.
    -----------
    commit a92c196449c516fe51786d429078bbb1213bb029
    Author: Stephano Cetola <stephano.cetola at linux.intel.com>
    Date:   Wed Aug 10 13:03:16 2016 -0700
    
        Allow for simultaneous do_rootfs tasks with rpm
    
        Give each rootfs its own RPM channel to use.  This puts the RPM metadata
        in a private subdirectory of $WORKDIR, rather than living in DEPLOY_DIR
        where other tasks may race with it.
    -----------
    
    In the modification of 'class RpmIndexer, it should not
    directly set arch_dir with WORKDIR. It caused 'bitbake
    package-index' could not work correctly.
    
    Assign WORKDIR as input parameter at RpmIndexer initial time
    could fix the issue.
    
    Signed-off-by: Hongxu Jia <hongxu.jia at windriver.com>
    Signed-off-by: Ross Burton <ross.burton at intel.com>
---
 meta/lib/oe/package_manager.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index 2802254..30e1de9 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -176,7 +176,7 @@ class RpmIndexer(Indexer):
             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.d.getVar('WORKDIR', True), 'rpms', arch)
+            arch_dir = os.path.join(self.deploy_dir, arch)
             if not os.path.isdir(arch_dir):
                 continue
 
@@ -686,7 +686,8 @@ class RpmPM(PackageManager):
         if not os.path.exists(self.d.expand('${T}/saved')):
             bb.utils.mkdirhier(self.d.expand('${T}/saved'))
 
-        self.indexer = RpmIndexer(self.d, self.deploy_dir)
+        packageindex_dir = os.path.join(self.d.getVar('WORKDIR', True), 'rpms')
+        self.indexer = RpmIndexer(self.d, packageindex_dir)
         self.pkgs_list = RpmPkgsList(self.d, self.target_rootfs, arch_var, os_var)
 
         self.ml_prefix_list, self.ml_os_list = self.indexer.get_ml_prefix_and_os_list(arch_var, os_var)

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list