From 67fccabcf2baed05de3c78746067eb7111ed520e Mon Sep 17 00:00:00 2001 From: Orit Wasserman Date: Mon, 18 Jan 2016 13:17:57 +0100 Subject: [PATCH] radosgw-admin: realm pull should not fail if the realm exists Signed-off-by: Orit Wasserman --- src/rgw/rgw_admin.cc | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/rgw/rgw_admin.cc b/src/rgw/rgw_admin.cc index d922e01609ed3..a3af3ea779d3e 100644 --- a/src/rgw/rgw_admin.cc +++ b/src/rgw/rgw_admin.cc @@ -2402,7 +2402,7 @@ int main(int argc, char **argv) try { decode_json_obj(realm, &p); } catch (JSONDecoder::err& e) { - cout << "failed to decode JSON response: " << e.message << std::endl; + cerr << "failed to decode JSON response: " << e.message << std::endl; return -EINVAL; } RGWPeriod period; @@ -2418,11 +2418,17 @@ int main(int argc, char **argv) } } ret = realm.create(false); - if (ret < 0) { + if (ret < 0 && ret != -EEXIST) { cerr << "Error storing realm " << realm.get_id() << ": " << cpp_strerror(ret) << std::endl; return ret; - } + } else if (ret ==-EEXIST) { + ret = realm.update(); + if (ret < 0) { + cerr << "Error storing realm " << realm.get_id() << ": " + << cpp_strerror(ret) << std::endl; + } + } if (set_default) { ret = realm.set_as_default(); @@ -2572,6 +2578,7 @@ int main(int argc, char **argv) } string default_zonegroup; ret = zonegroup.read_default_id(default_zonegroup); + cout << "read_default_id : " << ret << std::endl; if (ret < 0 && ret != -ENOENT) { cerr << "could not determine default zonegroup: " << cpp_strerror(-ret) << std::endl; } -- 2.39.5