[PATCH 5/5] Update packages after unpacking root cache

Paul Howarth paul at city-fan.org
Wed Aug 11 10:54:01 UTC 2010


Fix problem introduced in commit 3bc5fb958deb809fc04d6a74ce6688e093f5831a
where the buildroot is no longer updated after unpacking the root cache.

http://bugzilla.redhat.com/557526
---
 py/mock/backend.py            |    3 +++
 py/mock/plugins/root_cache.py |    4 ++--
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/py/mock/backend.py b/py/mock/backend.py
index d604df6..9fbfbea 100644
--- a/py/mock/backend.py
+++ b/py/mock/backend.py
@@ -34,6 +34,7 @@ class Root(object):
         self._state = 'unstarted'
         self.uidManager = uidManager
         self._hooks = {}
+        self.chrootWasCached = False
         self.chrootWasCleaned = False
         self.preExistingDeps = ""
         self.logging_initialized = False
@@ -311,6 +312,8 @@ class Root(object):
             self._mountall()
             if self.chrootWasCleaned:
                 self._yum(self.chroot_setup_cmd, returnOutput=1)
+            if self.chrootWasCached:
+                self._yum('update', returnOutput=1)
 
             # create user
             self._makeBuildUser()
diff --git a/py/mock/plugins/root_cache.py b/py/mock/plugins/root_cache.py
index 60b8138..007627c 100644
--- a/py/mock/plugins/root_cache.py
+++ b/py/mock/plugins/root_cache.py
@@ -86,7 +86,7 @@ class RootCache(object):
         except OSError:
             pass
 
-        # optimization: dont unpack root cache if chroot was not cleaned
+        # optimization: don't unpack root cache if chroot was not cleaned
         if os.path.exists(self.rootCacheFile) and self.rootObj.chrootWasCleaned:
             self.state("unpacking root cache")
             self._rootCacheLock()
@@ -95,8 +95,8 @@ class RootCache(object):
                 shell=False
                 )
             self._rootCacheUnlock()
-            self.chroot_setup_cmd = "update"
             self.rootObj.chrootWasCleaned = False
+            self.rootObj.chrootWasCached = True
 
     decorate(traceLog())
     def _rootCachePostInitHook(self):
-- 
1.7.2.1



More information about the buildsys mailing list