From a08fc639613b3d9bcb3a09875e535287dd58870a Mon Sep 17 00:00:00 2001 From: Andrew Schoen Date: Tue, 30 Jan 2018 11:32:53 -0600 Subject: [PATCH] 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 --- src/ceph-volume/ceph_volume/tests/util/test_prepare.py | 6 +++--- src/ceph-volume/ceph_volume/util/prepare.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) 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 98038825dc3e5..8f1fb7cd9a347 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 dc272d2ac7c2c..c72cb55297950 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: -- 2.39.5