[Piuparts-commits] [SCM] piuparts git repository branch, piatti, updated. 0.42-30-gaa772de

Andreas Beckmann debian at abeckmann.de
Thu Jan 19 22:37:51 UTC 2012


The following commit has been merged in the piatti branch:
commit 0f51f6af85d2bf58fb04e041a8645198fdac4310
Author: Andreas Beckmann <debian at abeckmann.de>
Date:   Wed Jan 11 13:44:39 2012 +0100

    move root_info into chroot_status["tree"]
    
    prepare bundling all chroot state properties into one dict
    
    Signed-off-by: Andreas Beckmann <debian at abeckmann.de>

diff --git a/piuparts.py b/piuparts.py
index 77e58ca..6014137 100644
--- a/piuparts.py
+++ b/piuparts.py
@@ -1838,8 +1838,8 @@ def process_changes(changes):
     return package_list
 
 
-def check_results(chroot, root_info, file_owners, deps_info=None):
-    """Check that current chroot state matches 'root_info'.
+def check_results(chroot, chroot_state, file_owners, deps_info=None):
+    """Check that current chroot state matches 'chroot_state'.
 
     If settings.warn_on_others is True and deps_info is not None, then only
     print a warning rather than failing if the current chroot contains files
@@ -1849,6 +1849,7 @@ def check_results(chroot, root_info, file_owners, deps_info=None):
     installed.)
     """
 
+    root_info = chroot_state["tree"]
     ok = True
     if settings.check_broken_diversions:
         (removed, added) = chroot.get_modified_diversions(chroot.pre_install_diversions)
@@ -1914,7 +1915,7 @@ def check_results(chroot, root_info, file_owners, deps_info=None):
     return ok
 
 
-def install_purge_test(chroot, root_info, selections, package_files, packages):
+def install_purge_test(chroot, chroot_state, selections, package_files, packages):
     """Do an install-purge test. Return True if successful, False if not.
        Assume 'root' is a directory already populated with a working
        chroot, with packages in states given by 'selections'."""
@@ -1986,10 +1987,10 @@ def install_purge_test(chroot, root_info, selections, package_files, packages):
     chroot.check_for_no_processes()
     chroot.check_for_broken_symlinks()
 
-    return check_results(chroot, root_info, file_owners, deps_info=deps_info)
+    return check_results(chroot, chroot_state, file_owners, deps_info=deps_info)
 
 
-def install_upgrade_test(chroot, root_info, selections, package_files, packages, old_packages):
+def install_upgrade_test(chroot, chroot_state, selections, package_files, packages, old_packages):
     """Install old_packages via apt-get, then upgrade from package files.
     Return True if successful, False if not."""
 
@@ -2018,14 +2019,14 @@ def install_upgrade_test(chroot, root_info, selections, package_files, packages,
     chroot.check_for_no_processes()
     chroot.check_for_broken_symlinks()
 
-    return check_results(chroot, root_info, file_owners)
+    return check_results(chroot, chroot_state, file_owners)
 
 
-def save_meta_data(filename, root_info, selections):
+def save_meta_data(filename, chroot_state, selections):
     """Save directory tree meta data into a file for fast access later."""
     logging.debug("Saving chroot meta data to %s" % filename)
     f = file(filename, "w")
-    pickle.dump((root_info, selections), f)
+    pickle.dump((chroot_state, selections), f)
     f.close()
 
 
@@ -2033,9 +2034,9 @@ def load_meta_data(filename):
     """Load meta data saved by 'save_meta_data'."""
     logging.debug("Loading chroot meta data from %s" % filename)
     f = file(filename, "r")
-    (root_info, selections) = pickle.load(f)
+    (chroot_state, selections) = pickle.load(f)
     f.close()
-    return root_info, selections
+    return chroot_state, selections
 
 
 def install_and_upgrade_between_distros(package_files, packages):
@@ -2072,7 +2073,7 @@ def install_and_upgrade_between_distros(package_files, packages):
 
     if settings.end_meta:
         # load root_info and selections
-        root_info, selections = load_meta_data(settings.end_meta)
+        chroot_state, selections = load_meta_data(settings.end_meta)
         chroot.pre_install_diversions = []  # FIXME: diversion info needs to be restored
     else:
         if not settings.basetgz:
@@ -2085,13 +2086,14 @@ def install_and_upgrade_between_distros(package_files, packages):
         chroot.check_for_no_processes()
 
         # set root_info and selections
-        root_info = chroot.save_meta_data()
+        chroot_state = {}
+        chroot_state["tree"] = chroot.save_meta_data()
         selections = chroot.get_selections()
         diversions = chroot.get_diversions()
 
         if settings.save_end_meta:
             # save root_info and selections
-            save_meta_data(settings.save_end_meta, root_info, selections)
+            save_meta_data(settings.save_end_meta, chroot_state, selections)
             # FIXME: diversion info needs to be stored
 
         chroot.remove()
@@ -2136,7 +2138,7 @@ def install_and_upgrade_between_distros(package_files, packages):
 
     # use root_info and selections
     chroot.restore_selections(selections, packages)
-    result = check_results(chroot, root_info, file_owners)
+    result = check_results(chroot, chroot_state, file_owners)
 
     chroot.check_for_no_processes()
 
@@ -2521,12 +2523,13 @@ def process_packages(package_list):
         chroot.create()
         cid = do_on_panic(chroot.remove)
 
-        root_info = chroot.save_meta_data()
+        chroot_state = {}
+        chroot_state["tree"] = chroot.save_meta_data()
         chroot.pre_install_diversions = chroot.get_diversions()
         selections = chroot.get_selections()
 
         if not settings.no_install_purge_test:
-            if not install_purge_test(chroot, root_info, selections,
+            if not install_purge_test(chroot, chroot_state, selections,
                       package_files, packages):
                 logging.error("FAIL: Installation and purging test.")
                 panic()
@@ -2541,7 +2544,7 @@ def process_packages(package_list):
                 known_packages = chroot.get_known_packages(packages_to_query)
                 if not known_packages:
                     logging.info("Can't test upgrade: packages not known by apt-get.")
-                elif install_upgrade_test(chroot, root_info, selections, package_files,
+                elif install_upgrade_test(chroot, chroot_state, selections, package_files,
                         packages, known_packages):
                     logging.info("PASS: Installation, upgrade and purging tests.")
                 else:

-- 
piuparts git repository



More information about the Piuparts-commits mailing list