mirror of
https://github.com/dathere/ckan-devstaller.git
synced 2025-11-09 13:39:49 +00:00
Simplify user creation and sysadmin assignment
Refactored user management logic to always add user and sysadmin privileges.
This commit is contained in:
parent
2d897b9546
commit
3b76862c0a
1 changed files with 6 additions and 13 deletions
17
src/main.rs
17
src/main.rs
|
|
@ -259,19 +259,12 @@ fn main() -> Result<()> {
|
||||||
let sysadmin_password = config.sysadmin.password;
|
let sysadmin_password = config.sysadmin.password;
|
||||||
let sysadmin_email = config.sysadmin.email;
|
let sysadmin_email = config.sysadmin.email;
|
||||||
let existing_users = cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini user list").read()?;
|
let existing_users = cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini user list").read()?;
|
||||||
let user_check = cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini user show {username}").run();
|
cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini search-index clear").run().ok();
|
||||||
match user_check {
|
|
||||||
Ok(_) => {
|
|
||||||
// User exists, just make sure they're a sysadmin
|
|
||||||
cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini sysadmin add {username}").run().ok();
|
|
||||||
println!("User {username} already exists, ensured sysadmin privileges.");
|
|
||||||
},
|
|
||||||
Err(_) => {
|
|
||||||
// User doesn't exist, create them
|
|
||||||
cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini user add {username} password=password email={username}@localhost").run()?;
|
cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini user add {username} password=password email={username}@localhost").run()?;
|
||||||
cmd!(sh, "ckan -c /etc/ckan/default/ckan.ini sysadmin add {username}").run()?;
|
cmd!(
|
||||||
}
|
sh,
|
||||||
}
|
"ckan -c /etc/ckan/default/ckan.ini sysadmin add admin_user"
|
||||||
|
)
|
||||||
.run()?;
|
.run()?;
|
||||||
println!(
|
println!(
|
||||||
"{}",
|
"{}",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue