Make admin init noninteractive

This commit is contained in:
john
2026-06-20 16:56:44 +08:00
parent a2333f991b
commit 371aedd6a9
+14 -5
View File
@@ -9,11 +9,20 @@ if (!isDatabaseConfigured()) {
process.exit(1);
}
const rl = readline.createInterface({ input, output });
const username = (await rl.question('admin username [admin]: ')).trim() || 'admin';
const password = await rl.question('admin password: ');
const confirm = await rl.question('confirm password: ');
rl.close();
const [usernameArg, passwordArg, confirmArg] = process.argv.slice(2);
let username = (usernameArg ?? '').trim();
let password = passwordArg ?? '';
let confirm = confirmArg ?? '';
if (!username || !password || !confirm) {
const rl = readline.createInterface({ input, output });
username = username || (await rl.question('admin username [admin]: ')).trim() || 'admin';
password = password || (await rl.question('admin password: '));
confirm = confirm || (await rl.question('confirm password: '));
rl.close();
} else {
username = username.trim() || 'admin';
}
if (!password || password !== confirm) {
console.error('密码为空或两次输入不一致');