Enhance user management in main.rs

Added logic to list existing users and add a new admin user.
This commit is contained in:
Abdur Rahman 2025-09-04 07:43:06 +00:00 committed by GitHub
parent bb0c3d36a9
commit bfb6bc2f72
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -258,11 +258,13 @@ fn main() -> Result<()> {
let sysadmin_username = config.sysadmin.username;
let sysadmin_password = config.sysadmin.password;
let sysadmin_email = config.sysadmin.email;
cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini user remove {username}").run().ok(); // Try to remove the existing user (use .ok() so it doesn't fail if user doesn't exist)
cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini user add {sysadmin_username} password={sysadmin_password} email={sysadmin_email}").run()?;
let existing_users = cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini user list").read()?;
println!("Existing users: {}", existing_users);
cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini user add admin_user password=password email=admin@localhost").run()?;
cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini sysadmin add admin_user").run()?;
cmd!(
sh,
"ckan -c /etc/ckan/default/ckan.ini sysadmin add {sysadmin_username}"
"ckan -c /etc/ckan/default/ckan.ini sysadmin add admin_user"
)
.run()?;
println!(