From: Orit Wasserman Date: Fri, 8 Jan 2016 11:03:23 +0000 (+0100) Subject: radosgw-admin: zonegroup set and zone set should set the realm id X-Git-Tag: v10.1.0~354^2~86 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=0ef1fae43fce915b30eb9e56835acb996f86714f;p=ceph.git radosgw-admin: zonegroup set and zone set should set the realm id Signed-off-by: Orit Wasserman --- diff --git a/src/rgw/rgw_admin.cc b/src/rgw/rgw_admin.cc index 4e2d4dcc54a..57c488bf201 100644 --- a/src/rgw/rgw_admin.cc +++ b/src/rgw/rgw_admin.cc @@ -2650,6 +2650,9 @@ int main(int argc, char **argv) if (ret < 0) { return 1; } + if (zonegroup.realm_id.empty()) { + zonegroup.realm_id = realm.get_id(); + } ret = zonegroup.create(); if (ret < 0 && ret != -EEXIST) { cerr << "ERROR: couldn't create zonegroup info: " << cpp_strerror(-ret) << std::endl; @@ -2935,6 +2938,16 @@ int main(int argc, char **argv) return 1; } + if(zone.realm_id.empty()) { + RGWRealm realm(realm_id, realm_name); + int ret = realm.init(g_ceph_context, store); + if (ret < 0) { + cerr << "failed to init realm: " << cpp_strerror(-ret) << std::endl; + return -ret; + } + zone.realm_id = realm.get_id(); + } + if (zone.get_name().empty()) { zone.set_name(zone_name); if (zone.get_name().empty()) {