From: Andrew Schoen Date: Tue, 30 Jan 2018 17:32:53 +0000 (-0600) Subject: ceph_volume: modify util.prepare.check_id to handle stdout as a list X-Git-Tag: v13.0.2~387^2~4 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=a08fc639613b3d9bcb3a09875e535287dd58870a;p=ceph.git ceph_volume: modify util.prepare.check_id to handle stdout as a list process.call returns stdout as a list, not a string Signed-off-by: Andrew Schoen --- diff --git a/src/ceph-volume/ceph_volume/tests/util/test_prepare.py b/src/ceph-volume/ceph_volume/tests/util/test_prepare.py index 98038825dc3..8f1fb7cd9a3 100644 --- a/src/ceph-volume/ceph_volume/tests/util/test_prepare.py +++ b/src/ceph-volume/ceph_volume/tests/util/test_prepare.py @@ -20,7 +20,7 @@ class TestCheckID(object): stdout = dict(nodes=[ dict(id=0), ]) - stdout = json.dumps(stdout) + stdout = ['', json.dumps(stdout)] monkeypatch.setattr('ceph_volume.process.call', lambda *a, **kw: (stdout, '', 0)) result = prepare.check_id(0) assert result @@ -30,7 +30,7 @@ class TestCheckID(object): stdout = dict(nodes=[ dict(id=0), ]) - stdout = json.dumps(stdout) + stdout = ['', json.dumps(stdout)] monkeypatch.setattr('ceph_volume.process.call', lambda *a, **kw: (stdout, '', 0)) result = prepare.check_id(1) assert not result @@ -39,7 +39,7 @@ class TestCheckID(object): stdout = dict(nodes=[ dict(id=0), ]) - stdout = json.dumps(stdout) + stdout = ['', json.dumps(stdout)] monkeypatch.setattr('ceph_volume.process.call', lambda *a, **kw: (stdout, '', 0)) result = prepare.check_id("foo") assert not result diff --git a/src/ceph-volume/ceph_volume/util/prepare.py b/src/ceph-volume/ceph_volume/util/prepare.py index dc272d2ac7c..c72cb552979 100644 --- a/src/ceph-volume/ceph_volume/util/prepare.py +++ b/src/ceph-volume/ceph_volume/util/prepare.py @@ -96,7 +96,7 @@ def check_id(osd_id): if returncode != 0: raise RuntimeError('Unable check if OSD id exists: %s' % osd_id) - output = json.loads(stdout) + output = json.loads(''.join(stdout).strip()) osds = output['nodes'] found_osd = any([str(osd['id']) == str(osd_id) for osd in osds]) if found_osd: