From 9cba5ce94a9aa88889021b61d87df6d9ae2b4756 Mon Sep 17 00:00:00 2001 From: Brendan Golden Date: Sun, 18 Jun 2023 18:34:27 +0100 Subject: [PATCH] fmt: fmt and clippy --- src/bin/update_groups.rs | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/src/bin/update_groups.rs b/src/bin/update_groups.rs index 21c1878..c1e7e18 100644 --- a/src/bin/update_groups.rs +++ b/src/bin/update_groups.rs @@ -1,7 +1,7 @@ -use std::env; use dotenv::dotenv; use ldap3::{LdapConn, Mod}; -use skynet_ldap_server::{Config, get_config}; +use skynet_ldap_server::{get_config, Config}; +use std::env; #[async_std::main] async fn main() -> tide::Result<()> { @@ -9,58 +9,57 @@ async fn main() -> tide::Result<()> { //update_users(&config).await; update_admin(&config).await?; - + Ok(()) } - //async fn update_users(config: &Config) { - + //} -fn uid_to_dn(uid: &str) -> String{ +fn uid_to_dn(uid: &str) -> String { format!("uid={},ou=users,dc=skynet,dc=ie", uid) } -async fn update_admin(config: &Config) -> tide::Result<()>{ +async fn update_admin(config: &Config) -> tide::Result<()> { dotenv().ok(); - + // read from teh env if let Ok(x) = env::var("USERS_ADMIN") { let users = x.split(',').collect::>(); - - update_group(config,"skynet-admins", &users, true).await?; + + update_group(config, "skynet-admins", &users, true).await?; // admins automatically get added as users - update_group(config,"skynet-users", &users, false).await?; + update_group(config, "skynet-users", &users, false).await?; } Ok(()) } -async fn update_group(config: &Config, group: &str, users: &Vec<&str>, replace: bool) -> tide::Result<()>{ +async fn update_group(config: &Config, group: &str, users: &[&str], replace: bool) -> tide::Result<()> { let mut ldap = LdapConn::new(&config.ldap_host)?; // use the admin account ldap.simple_bind(&config.ldap_admin, &config.ldap_admin_pw)?.success()?; let dn = format!("cn={},ou=groups,dc=skynet,dc=ie", group); - let members = users.clone().into_iter().map(|uid| uid_to_dn(uid)).collect(); + let members = users.iter().map(|uid| uid_to_dn(uid)).collect(); let mods = if replace { vec![Mod::Replace("member".to_string(), members)] } else { vec![Mod::Add("member".to_string(), members)] }; - + if let Err(x) = ldap.modify(&dn, mods) { println!("{:?}", x); } let dn_linux = format!("cn={}-linux,ou=groups,dc=skynet,dc=ie", group); - let members_linux = users.clone().into_iter().map(|uid| uid.to_string()).collect(); + let members_linux = users.iter().map(|uid| uid.to_string()).collect(); let mods = if replace { vec![Mod::Replace("memberUid".to_string(), members_linux)] } else { vec![Mod::Add("memberUid".to_string(), members_linux)] }; - if let Err(x) = ldap.modify(&dn_linux, mods){ + if let Err(x) = ldap.modify(&dn_linux, mods) { println!("{:?}", x); }; @@ -68,4 +67,4 @@ async fn update_group(config: &Config, group: &str, users: &Vec<&str>, replace: ldap.unbind()?; Ok(()) -} \ No newline at end of file +}