[gnome-continuous-yocto/gnomeostree-3.28-rocko: 4270/8267] package_manager: default to have scriptlet output captured in log



commit 2a64701acf9ba86a4e0a5c89a77f984ce1cfc427
Author: Chen Qi <Qi Chen windriver com>
Date:   Fri Dec 23 10:59:21 2016 +0800

    package_manager: default to have scriptlet output captured in log
    
    We need to have scriptlet output captured in log. If we don't do so,
    some useful information from scriptlets (especially postinstall script)
    would be missing. In case a script has a warning message but it does not
    necessarily have to fail, the message should be captured.
    
    Opkg has already done that. Change for rpm and dpkg so that scriptlet
    output is captured and no warning message is missing.
    
    (From OE-Core rev: 0e52e0c619e02327602d83999a61d978d3a9240e)
    
    Signed-off-by: Chen Qi <Qi Chen windriver com>
    Signed-off-by: Ross Burton <ross burton intel com>
    Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>

 meta/lib/oe/package_manager.py |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)
---
diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index a02bff4..f92f2b3 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -667,11 +667,11 @@ class RpmPM(PackageManager):
         self.install_dir_path = os.path.join(self.target_rootfs, self.install_dir_name)
         self.rpm_cmd = bb.utils.which(os.getenv('PATH'), "rpm")
         self.smart_cmd = bb.utils.which(os.getenv('PATH'), "smart")
-        # 0 = default, only warnings
-        # 1 = --log-level=info (includes information about executing scriptlets and their output)
+        # 0 = --log-level=warning, only warnings
+        # 1 = --log-level=info (includes information about executing scriptlets and their output), default
         # 2 = --log-level=debug
         # 3 = --log-level=debug plus dumps of scriplet content and command invocation
-        self.debug_level = int(d.getVar('ROOTFS_RPM_DEBUG') or "0")
+        self.debug_level = int(d.getVar('ROOTFS_RPM_DEBUG') or "1")
         self.smart_opt = ["--log-level=%s" %
                          ("warning" if self.debug_level == 0 else
                           "info" if self.debug_level == 1 else
@@ -2026,8 +2026,9 @@ class DpkgPM(OpkgDpkgPM):
                     try:
                         bb.note("Executing %s for package: %s ..." %
                                  (control_script.name.lower(), pkg_name))
-                        subprocess.check_output([p_full, control_script.argument],
-                                stderr=subprocess.STDOUT)
+                        output = subprocess.check_output([p_full, control_script.argument],
+                                stderr=subprocess.STDOUT).decode("utf-8")
+                        bb.note(output)
                     except subprocess.CalledProcessError as e:
                         bb.note("%s for package %s failed with %d:\n%s" %
                                 (control_script.name, pkg_name, e.returncode,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]