summaryrefslogtreecommitdiffstats
path: root/meta/lib/oe/package_manager.py
diff options
context:
space:
mode:
authorChen Qi <Qi.Chen@windriver.com>2016-12-23 10:59:21 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-23 12:05:22 +0000
commit2a64701acf9ba86a4e0a5c89a77f984ce1cfc427 (patch)
tree1e2b73521cde37b2e2a2592cb586bd5647048b86 /meta/lib/oe/package_manager.py
parent83ec24789fd2897b1fcc43e73279899b998408fa (diff)
downloadpoky-2a64701acf9ba86a4e0a5c89a77f984ce1cfc427.tar.gz
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>
Diffstat (limited to 'meta/lib/oe/package_manager.py')
-rw-r--r--meta/lib/oe/package_manager.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
index a02bff4caf..f92f2b3304 100644
--- a/meta/lib/oe/package_manager.py
+++ b/meta/lib/oe/package_manager.py
@@ -667,11 +667,11 @@ class RpmPM(PackageManager):
667 self.install_dir_path = os.path.join(self.target_rootfs, self.install_dir_name) 667 self.install_dir_path = os.path.join(self.target_rootfs, self.install_dir_name)
668 self.rpm_cmd = bb.utils.which(os.getenv('PATH'), "rpm") 668 self.rpm_cmd = bb.utils.which(os.getenv('PATH'), "rpm")
669 self.smart_cmd = bb.utils.which(os.getenv('PATH'), "smart") 669 self.smart_cmd = bb.utils.which(os.getenv('PATH'), "smart")
670 # 0 = default, only warnings 670 # 0 = --log-level=warning, only warnings
671 # 1 = --log-level=info (includes information about executing scriptlets and their output) 671 # 1 = --log-level=info (includes information about executing scriptlets and their output), default
672 # 2 = --log-level=debug 672 # 2 = --log-level=debug
673 # 3 = --log-level=debug plus dumps of scriplet content and command invocation 673 # 3 = --log-level=debug plus dumps of scriplet content and command invocation
674 self.debug_level = int(d.getVar('ROOTFS_RPM_DEBUG') or "0") 674 self.debug_level = int(d.getVar('ROOTFS_RPM_DEBUG') or "1")
675 self.smart_opt = ["--log-level=%s" % 675 self.smart_opt = ["--log-level=%s" %
676 ("warning" if self.debug_level == 0 else 676 ("warning" if self.debug_level == 0 else
677 "info" if self.debug_level == 1 else 677 "info" if self.debug_level == 1 else
@@ -2026,8 +2026,9 @@ class DpkgPM(OpkgDpkgPM):
2026 try: 2026 try:
2027 bb.note("Executing %s for package: %s ..." % 2027 bb.note("Executing %s for package: %s ..." %
2028 (control_script.name.lower(), pkg_name)) 2028 (control_script.name.lower(), pkg_name))
2029 subprocess.check_output([p_full, control_script.argument], 2029 output = subprocess.check_output([p_full, control_script.argument],
2030 stderr=subprocess.STDOUT) 2030 stderr=subprocess.STDOUT).decode("utf-8")
2031 bb.note(output)
2031 except subprocess.CalledProcessError as e: 2032 except subprocess.CalledProcessError as e:
2032 bb.note("%s for package %s failed with %d:\n%s" % 2033 bb.note("%s for package %s failed with %d:\n%s" %
2033 (control_script.name, pkg_name, e.returncode, 2034 (control_script.name, pkg_name, e.returncode,