authtool: only create keyring if --create-keyring (or -c)

This commit is contained in:
Sage Weil 2010-02-02 15:45:33 -08:00
parent f40957ebc3
commit 6285b61d91
2 changed files with 9 additions and 6 deletions

View File

@ -23,7 +23,7 @@ using namespace std;
void usage()
{
cout << " usage: [--gen-key] [--name=<name>] [--caps=<filename>] [--list] [--print-key] <filename>" << std::endl;
cout << " usage: [--create-keyring] [--gen-key] [--name=<name>] [--caps=<filename>] [--list] [--print-key] <filename>" << std::endl;
exit(1);
}
@ -41,6 +41,7 @@ int main(int argc, const char **argv)
bool gen_key = false;
bool list = false;
bool print_key = true;
bool create_keyring = false;
const char *name = "";
const char *caps_fn = NULL;
@ -55,6 +56,8 @@ int main(int argc, const char **argv)
CONF_SAFE_SET_ARG_VAL(&caps_fn, OPT_STR);
} else if (CONF_ARG_EQ("print-key", 'p')) {
CONF_SAFE_SET_ARG_VAL(&print_key, OPT_BOOL);
} else if (CONF_ARG_EQ("create-keyring", 'c')) {
CONF_SAFE_SET_ARG_VAL(&create_keyring, OPT_BOOL);
} else if (!fn) {
fn = args[i];
} else
@ -85,7 +88,7 @@ int main(int argc, const char **argv)
cerr << "error reading file " << fn << std::endl;
exit(1);
}
} else if (r == -ENOENT) {
} else if (create_keyring && r == -ENOENT) {
cout << "creating " << fn << std::endl;
} else {
cerr << "can't open " << fn << ": " << strerror(errno) << std::endl;

View File

@ -278,8 +278,8 @@ EOF
EOF
fi
[ "$cephx" -eq 1 ] && $SUDO $CEPH_BIN/authtool --gen-key --name=mon. $keyring_fn
[ "$cephx" -eq 1 ] && $SUDO $CEPH_BIN/authtool --gen-key --name=client.admin --caps=$admin_caps $keyring_fn
[ "$cephx" -eq 1 ] && $SUDO $CEPH_BIN/authtool --create-keyring --gen-key --name=mon. $keyring_fn
[ "$cephx" -eq 1 ] && $SUDO $CEPH_BIN/authtool --create-keyring --gen-key --name=client.admin --caps=$admin_caps $keyring_fn
# build a fresh fs monmap, mon fs
str="$CEPH_BIN/monmaptool --create --clobber"
@ -346,7 +346,7 @@ EOF
osd = "allow rwx"
EOF
fi
$SUDO $CEPH_BIN/authtool --gen-key --name=osd.$osd --caps=$osd_caps $key_fn
$SUDO $CEPH_BIN/authtool --create-keyring --gen-key --name=osd.$osd --caps=$osd_caps $key_fn
echo adding osd$osd key to auth repository
$SUDO $CEPH_ADM -i $key_fn auth add osd.$osd
fi
@ -385,7 +385,7 @@ EOF
EOF
fi
fi
$SUDO $CEPH_BIN/authtool --gen-key --name=mds.$name --caps=$mds_caps $key_fn
$SUDO $CEPH_BIN/authtool --create-keyring --gen-key --name=mds.$name --caps=$mds_caps $key_fn
$SUDO $CEPH_ADM -i $key_fn auth add mds.$name
fi