From 0af4ad8614e426adf60eec32bd4b36974c5cb30b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Juan=20Miguel=20Olmo=20Mart=C3=ADnez?= Date: Mon, 15 Mar 2021 14:19:33 +0100 Subject: [PATCH] mgr/orchestrator: DG loads properly the unmanaged attribute MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Fixes: https://tracker.ceph.com/issues/49805 Signed-off-by: Juan Miguel Olmo Martínez --- src/python-common/ceph/deployment/drive_group.py | 2 ++ src/python-common/ceph/tests/test_service_spec.py | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/src/python-common/ceph/deployment/drive_group.py b/src/python-common/ceph/deployment/drive_group.py index 92a89435fa290..58123ea053838 100644 --- a/src/python-common/ceph/deployment/drive_group.py +++ b/src/python-common/ceph/deployment/drive_group.py @@ -255,6 +255,8 @@ class DriveGroupSpec(ServiceSpec): else: args.update(cls._drive_group_spec_from_json(json_drive_group)) + args['unmanaged'] = json_drive_group.pop('unmanaged', False) + return cls(**args) @classmethod diff --git a/src/python-common/ceph/tests/test_service_spec.py b/src/python-common/ceph/tests/test_service_spec.py index b871e0ddc262b..41d64b534f4c2 100644 --- a/src/python-common/ceph/tests/test_service_spec.py +++ b/src/python-common/ceph/tests/test_service_spec.py @@ -139,6 +139,16 @@ def test_servicespec_map_test(s_type, o_spec, s_id): assert spec.validate() is None ServiceSpec.from_json(spec.to_json()) +def test_osd_unmanaged(): + osd_spec = {"placement": {"host_pattern": "*"}, + "service_id": "all-available-devices", + "service_name": "osd.all-available-devices", + "service_type": "osd", + "spec": {"data_devices": {"all": True}, "filter_logic": "AND", "objectstore": "bluestore"}, + "unmanaged": True} + + dg_spec = ServiceSpec.from_json(osd_spec) + assert dg_spec.unmanaged == True def test_yaml(): y = """service_type: crash -- 2.47.3