Actions
Bug #5728
closedCapture std(err|out) and exit code for better error reporting
% Done:
0%
Source:
other
Tags:
Backport:
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Description
When a remote function is executed and it fails it will usually error out with something similar to:
... File "/home/ubuntu/ceph-dep/ceph-deploy/virtualenv/lib/python2.6/site-packages/pushy-0.5.1-py2.6.egg/pushy/protocol/baseconnection.py", line 639, in __handle raise e pushy.protocol.proxy.ExceptionProxy: Command '['sudo', 'ceph', '--cluster=ceph', '-n', 'mon.', '-k', 'mon', 'remove', 'burnupi21']' returned non-zero exit status 22
"Exit status 22" is not meaningful at all, and although having the command is handy, it also doesn't represent the problem.
This happens because in a lot of places in ceph-deploy we are just using `subprocess.check_call` which will immediately error out with a similar exception but with no info from stderr because it was not captured explicitly.
Actions