]> git.apps.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>
Wed, 3 Jul 2024 18:10:57 +0000 (14:10 -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>
src/python-common/ceph/rgw/rgwam_core.py

index 92e3ce8606e47e25c5ae1a2fcf83d099bd9be63f..67101004a261d2f4db0eb9b431ec7e9fa07fd2f3 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)