summaryrefslogtreecommitdiff
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:04:00 +0000
commit0e52e0c619e02327602d83999a61d978d3a9240e (patch)
treec7d22ded4f9ef2a83e5fc1d39d328eb9af570eca
parente1fe3f8a601ba289a2e9963ef3f1309e431704eb (diff)
downloadopenembedded-core-0e52e0c619e02327602d83999a61d978d3a9240e.tar.gz
openembedded-core-0e52e0c619e02327602d83999a61d978d3a9240e.tar.bz2
openembedded-core-0e52e0c619e02327602d83999a61d978d3a9240e.zip
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. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
-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):
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,