]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/orch: fix RGWSpec loading
authorSage Weil <sage@redhat.com>
Fri, 6 Mar 2020 01:57:56 +0000 (19:57 -0600)
committerSage Weil <sage@redhat.com>
Fri, 6 Mar 2020 01:57:56 +0000 (19:57 -0600)
Fixes ServiceSpec.from_json

Signed-off-by: Sage Weil <sage@redhat.com>
src/pybind/mgr/orchestrator/_interface.py

index 25627418aeeab79aff39098f8400d1658f48f096..c448c634fe225fe391ac6df3120e367088bc5280 100644 (file)
@@ -1667,14 +1667,20 @@ class RGWSpec(ServiceSpec):
 
     """
     def __init__(self,
-                 rgw_realm,  # type: str
-                 rgw_zone,  # type: str
+                 rgw_realm=None,  # type: Optional[str]
+                 rgw_zone=None,  # type: Optional[str]
+                 service_id=None, # type: Optional[str]
                  placement=None,
                  service_type='rgw',
                  rgw_frontend_port=None,  # type: Optional[int]
                  ):
         assert service_type == 'rgw'
-        super(RGWSpec, self).__init__('rgw', service_id=rgw_realm+'.'+rgw_zone, placement=placement)
+        if service_id:
+            (rgw_realm, rgw_zone) = service_id.split('.', 1)
+        else:
+            service_id = '%s.%s' % (rgw_realm, rgw_zone)
+        super(RGWSpec, self).__init__('rgw', service_id=service_id, placement=placement)
+
 
         self.rgw_realm = rgw_realm
         self.rgw_zone = rgw_zone