From 4c6de20d756afc036ca7340c222e635d3d512d56 Mon Sep 17 00:00:00 2001 From: Lennart <18233294+lennart-k@users.noreply.github.com> Date: Sat, 26 Apr 2025 11:01:20 +0200 Subject: [PATCH] cli: Allow changing principal type --- src/commands/principals.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/commands/principals.rs b/src/commands/principals.rs index 6a1236d..40b5a1c 100644 --- a/src/commands/principals.rs +++ b/src/commands/principals.rs @@ -47,6 +47,8 @@ struct EditArgs { remove_password: bool, #[arg(short, long, help = "Change principal displayname")] name: Option, + #[arg(value_enum, short, long, help = "Change the principal type")] + principal_type: Option, } #[derive(Debug, Subcommand)] @@ -122,6 +124,7 @@ pub async fn cmd_principals(args: PrincipalsArgs) -> anyhow::Result<()> { remove_password, password, name, + principal_type, }) => { let mut principal = user_store .get_principal(&id) @@ -146,6 +149,9 @@ pub async fn cmd_principals(args: PrincipalsArgs) -> anyhow::Result<()> { if name.is_some() { principal.displayname = name; } + if let Some(principal_type) = principal_type { + principal.principal_type = principal_type; + } user_store.insert_principal(principal, true).await?; println!("Principal {id} updated"); }