Bug 1382032

Summary: The Calamari API sometimes incorrectly prints standard output as an error
Product: Red Hat Ceph Storage Reporter: Andrew Schoen <aschoen>
Component: CalamariAssignee: Andrew Schoen <aschoen>
Calamari sub component: Back-end QA Contact: ceph-qe-bugs <ceph-qe-bugs>
Status: CLOSED NOTABUG Docs Contact:
Severity: medium    
Priority: unspecified CC: bancinco, ceph-eng-bugs, flucifre, gmeno, hnallurv, kdreyer, sankarshan
Version: 2.1   
Target Milestone: rc   
Target Release: 2.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1287904 Environment:
Last Closed: 2016-10-05 20:39:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 1287904    
Bug Blocks: 1287905, 1291304, 1322504    

Comment 2 Andrew Schoen 2016-10-05 14:44:47 UTC
*** Bug 1287904 has been marked as a duplicate of this bug. ***

Comment 3 Andrew Schoen 2016-10-05 14:46:39 UTC
*** Bug 1287905 has been marked as a duplicate of this bug. ***

Comment 4 Andrew Schoen 2016-10-05 20:39:10 UTC
In looking into this I've found that calamari is doing the correct thing, it's that ceph is writing the output of that command to stderr instead of stdout.

Here's a link to the code in calamari that creates that json output from the description, https://github.com/ceph/calamari/blob/1.4/calamari-common/calamari_common/remote/mon_remote.py#L358-L370

I'm going to close this as NOTABUG because I don't think we can expect uniformity from stderr/stdout and stderr does not always imply an error condition, which is why we have that 'status' field.

I will open an upstream ceph bug though to see if we can get the CLI to standardize on using stdout for CLI output, unless there is an error then stderr will be used.