summaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2021-04-25 10:19:16 +0300
committerLars Wirzenius <liw@liw.fi>2021-04-25 11:36:36 +0300
commitf612b399e5de7de24db1059962b8bf09b9511d98 (patch)
treeb49a1bcedc49d900ce25b2a9ff5074129041b695 /share
parent0c770c2e6b5d415657e9168b551d528a0a3b1be9 (diff)
downloadsubplot-f612b399e5de7de24db1059962b8bf09b9511d98.tar.gz
fix: improve logging in runcmd_run
kwargs are logged as a dict. This helps me debug why reference.md fails.
Diffstat (limited to 'share')
-rw-r--r--share/python/lib/runcmd.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/share/python/lib/runcmd.py b/share/python/lib/runcmd.py
index c4d297c..1eddb9e 100644
--- a/share/python/lib/runcmd.py
+++ b/share/python/lib/runcmd.py
@@ -65,20 +65,24 @@ def runcmd_run(ctx, argv, **kwargs):
if pp:
env["PATH"] = pp + ":" + env["PATH"]
+ kwargs["stdout"] = subprocess.PIPE
+ kwargs["stderr"] = subprocess.PIPE
+
logging.debug(f"runcmd_run")
log_dict(dict(enumerate(argv)), "argv", level=1)
log_dict(env, "env:", level=1)
- p = subprocess.Popen(
- argv, stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=env, **kwargs
- )
+ log_dict(kwargs, "kwargs:", level=1)
+
+ p = subprocess.Popen(argv, env=env, **kwargs)
stdout, stderr = p.communicate("")
+
ns["argv"] = argv
ns["stdout.raw"] = stdout
ns["stderr.raw"] = stderr
ns["stdout"] = stdout.decode("utf-8")
ns["stderr"] = stderr.decode("utf-8")
ns["exit"] = p.returncode
- log_dict(ctx.as_dict(), "ctx", level=1)
+
log_dict(ns.as_dict(), "ns", level=1)