]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
mgr/rgw: fix setting rgw realm token in secondary site rgw spec
authorAdam King <adking@redhat.com>
Thu, 27 Jun 2024 21:09:20 +0000 (17:09 -0400)
committerAdam King <adking@redhat.com>
Mon, 15 Jul 2024 22:25:33 +0000 (18:25 -0400)
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 333f490158525ee5a98d343f43d8814c69de3b0c..49e69aa657b5be057bdd3df949f699ae7610c405 100644 (file)
@@ -837,7 +837,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)