]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr/rgw: fix setting rgw realm token in secondary site rgw spec 61715/head
authorAdam King <adking@redhat.com>
Thu, 27 Jun 2024 21:09:20 +0000 (17:09 -0400)
committerAdam King <adking@redhat.com>
Fri, 7 Feb 2025 20:53:56 +0000 (15:53 -0500)
This was setting a field called "rgw_token" in the rgw spec
but this is not a real field in rgw specs. Instead we should
be setting "rgw_realm_token" which is what the field is
actually called.

Setting this nonexistent field causes the spec to be deleted
the first time cephadm needs to convert it from a json string
back into a python object (which happens whenever the module
restarts or the active mgr changes) which then causes all the
rgw daemons attached to the service to be removed

Fixes: https://tracker.ceph.com/issues/66824
Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit 95ae364325ddf3acc2ef9bac3e923fe9ca4ef6ba)

src/python-common/ceph/rgw/rgwam_core.py

index 7041ea1544f0069c4cdc4b3e7b08152d0f0ca28a..7908543ca51c8754ed78fbdd12fe9903b3b98370 100644 (file)
@@ -795,7 +795,7 @@ class RGWAM:
             realm_token_b = secondary_realm_token.to_json().encode('utf-8')
             realm_token_s = base64.b64encode(realm_token_b).decode('utf-8')
             rgw_spec.update_endpoints = True
-            rgw_spec.rgw_token = realm_token_s
+            rgw_spec.rgw_realm_token = realm_token_s
             rgw_spec.rgw_zonegroup = zonegroup.name  # master zonegroup is used
             self.env.mgr.apply_rgw(rgw_spec)