]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
rgw: use zonegroup's master zone endpoints for bucket redirect
authorCasey Bodley <cbodley@redhat.com>
Tue, 4 Apr 2017 14:41:51 +0000 (10:41 -0400)
committerCasey Bodley <cbodley@redhat.com>
Tue, 4 Apr 2017 14:58:39 +0000 (10:58 -0400)
if no zonegroup endpoints are set, fall back to master zone endpoints

Fixes: http://tracker.ceph.com/issues/19488
Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/rgw/rgw_op.cc

index a4572dd3a9478139b37753cfe125636fe7175651..c70c76c3ffb1ce3eabc4a2a15879b5d2e90849c4 100644 (file)
@@ -465,6 +465,12 @@ int rgw_build_bucket_policies(RGWRados* store, struct req_state* s)
     if (!r) {
       if (!zonegroup.endpoints.empty()) {
        s->zonegroup_endpoint = zonegroup.endpoints.front();
+      } else {
+        // use zonegroup's master zone endpoints
+        auto z = zonegroup.zones.find(zonegroup.master_zone);
+        if (z != zonegroup.zones.end() && !z->second.endpoints.empty()) {
+          s->zonegroup_endpoint = z->second.endpoints.front();
+        }
       }
       s->zonegroup_name = zonegroup.get_name();
     }