get_str_vec(prefix, pvec);
set<int> osds;
- if (whostr == "*") {
+ if (whostr == "*" || whostr == "all" || whostr == "any") {
cluster_state.with_osdmap([&](const OSDMap& osdmap) {
for (int i = 0; i < osdmap.get_max_osd(); i++)
if (osdmap.is_up(i)) {
COMMAND("osd scrub " \
"name=who,type=CephString", \
- "initiate scrub on osd <who>", "osd", "rw", "cli,rest")
+ "initiate scrub on osd <who>, or use <all|any|*> to scrub all", \
+ "osd", "rw", "cli,rest")
COMMAND("osd deep-scrub " \
"name=who,type=CephString", \
- "initiate deep scrub on osd <who>", "osd", "rw", "cli,rest")
+ "initiate deep scrub on osd <who>, or use <all|any|*> to deep scrub all", \
+ "osd", "rw", "cli,rest")
COMMAND("osd repair " \
"name=who,type=CephString", \
- "initiate repair on osd <who>", "osd", "rw", "cli,rest")
+ "initiate repair on osd <who>, or use <all|any|*> to repair all", \
+ "osd", "rw", "cli,rest")
}
goto reply;
- } else if ((prefix == "osd scrub" ||
- prefix == "osd deep-scrub" ||
- prefix == "osd repair")) {
+ } else if (prefix == "osd scrub" ||
+ prefix == "osd deep-scrub" ||
+ prefix == "osd repair") {
string whostr;
cmd_getval(g_ceph_context, cmdmap, "who", whostr);
vector<string> pvec;
get_str_vec(prefix, pvec);
- if (whostr == "*") {
+ if (whostr == "*" || whostr == "all" || whostr == "any") {
ss << "osds ";
int c = 0;
for (int i = 0; i < osdmap.get_max_osd(); i++)