]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/orchestrator: DG loads properly the unmanaged attribute 40117/head
authorJuan Miguel Olmo Martínez <jolmomar@redhat.com>
Mon, 15 Mar 2021 13:19:33 +0000 (14:19 +0100)
committerJuan Miguel Olmo Martínez <jolmomar@redhat.com>
Mon, 15 Mar 2021 13:19:33 +0000 (14:19 +0100)
Fixes: https://tracker.ceph.com/issues/49805
Signed-off-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
src/python-common/ceph/deployment/drive_group.py
src/python-common/ceph/tests/test_service_spec.py

index 92a89435fa29066147c3fb4cec895629a3a7fce0..58123ea0538387ee25fc2f42c1dbf166ec6e8054 100644 (file)
@@ -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
index b871e0ddc262b580d07892d75fabc892f2b6131a..41d64b534f4c2229f40227a50d0143a44d850eae 100644 (file)
@@ -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