bugfix in sysexec_chroot_noerr, path not passed along
[bootmanager.git] / source / utils.py
index 70f37fd..76d2d47 100644 (file)
@@ -43,7 +43,7 @@ VERBOSE_MODE = True
 # in seconds : if no input, proceed
 PROMPT_TIMEOUT = 5
 
-def prompt_for_breakpoint_mode ():
+def prompt_for_breakpoint_mode():
 
     global BREAKPOINT_MODE
     if PROMPT_MODE:
@@ -80,6 +80,9 @@ def breakpoint (message, cmd = None):
         print(message)
         os.system(cmd)
 
+    else:
+        print("Ignoring breakpoint (BREAKPOINT_MODE=False) : {}".format(message))    
+
 
 ########################################
 def makedirs(path):
@@ -210,7 +213,7 @@ def sysexec_chroot_noerr(path, cmd, log=None, shell=False):
     """
     try:
         rc = 0
-        rc = sysexec_chroot(cmd, log, shell=shell)
+        rc = sysexec_chroot(path, cmd, log, shell=shell)
     except BootManagerException as e:
         pass
 
@@ -222,8 +225,8 @@ def sysexec_noerr(cmd, log=None, shell=False):
     same as sysexec, but capture boot manager exceptions
     """
     try:
-        rc= 0
-        rc= sysexec(cmd, log, shell=shell)
+        rc = 0
+        rc = sysexec(cmd, log, shell=shell)
     except BootManagerException as e:
         pass
 
@@ -310,3 +313,12 @@ def sha1_file(filename):
         return m.hexdigest()
     except IOError:
         raise BootManagerException("Cannot calculate SHA1 hash of {}".format(filename))
+
+def display_disks_status(PARTITIONS, message, log):
+    log.write("{} - PARTITIONS status - BEG\n".format(message))
+    sysexec_noerr("vgdisplay", log)
+    sysexec_noerr("pvdisplay", log)
+    for name, path in PARTITIONS.items():
+        log.write("PARTITIONS[{}]={}\n".format(name,path))
+        sysexec_noerr("ls -l {}".format(path), log)
+    log.write("{} - PARTITIONS status - END\n".format(message))