diff --git a/src/context.rs b/src/context.rs index 0bdf157..9aa9c21 100644 --- a/src/context.rs +++ b/src/context.rs @@ -34,23 +34,19 @@ pub trait ControllerEvents { where T: Resource + Sync; - async fn user_created(&self, obj: &T, username: &str) -> Result<(), Self::Error> + async fn user_created(&self, obj: &T) -> Result<(), Self::Error> where T: Resource + Sync; - async fn group_created(&self, obj: &T, name: &str) -> Result<(), Self::Error> + async fn group_created(&self, obj: &T) -> Result<(), Self::Error> where T: Resource + Sync; - async fn user_deleted(&self, obj: &T, username: &str) -> Result<(), Self::Error> + async fn user_deleted(&self, obj: &T) -> Result<(), Self::Error> where T: Resource + Sync; - async fn group_deleted(&self, obj: &T, name: &str) -> Result<(), Self::Error> - where - T: Resource + Sync; - - async fn user_not_found(&self, obj: &T, username: &str) -> Result<(), Self::Error> + async fn group_deleted(&self, obj: &T) -> Result<(), Self::Error> where T: Resource + Sync; @@ -87,16 +83,16 @@ impl ControllerEvents for Recorder { .await } - async fn user_created(&self, obj: &T, username: &str) -> Result<(), Self::Error> + async fn user_created(&self, obj: &T) -> Result<(), Self::Error> where T: Resource + Sync, { self.publish( &Event { type_: EventType::Normal, - reason: "UserCreated".into(), - note: Some(format!("Created user '{username}'")), - action: "UserCreated".into(), + reason: "Created".into(), + note: Some("Created user".into()), + action: "Created".into(), secondary: None, }, &obj.object_ref(&()), @@ -104,16 +100,16 @@ impl ControllerEvents for Recorder { .await } - async fn group_created(&self, obj: &T, name: &str) -> Result<(), Self::Error> + async fn group_created(&self, obj: &T) -> Result<(), Self::Error> where T: Resource + Sync, { self.publish( &Event { type_: EventType::Normal, - reason: "GroupCreated".into(), - note: Some(format!("Created group '{name}'")), - action: "GroupCreated".into(), + reason: "Created".into(), + note: Some("Created group".into()), + action: "Created".into(), secondary: None, }, &obj.object_ref(&()), @@ -121,16 +117,16 @@ impl ControllerEvents for Recorder { .await } - async fn user_deleted(&self, obj: &T, username: &str) -> Result<(), Self::Error> + async fn user_deleted(&self, obj: &T) -> Result<(), Self::Error> where T: Resource + Sync, { self.publish( &Event { type_: EventType::Normal, - reason: "UserDeleted".into(), - note: Some(format!("Deleted user '{username}'")), - action: "UserDeleted".into(), + reason: "Deleted".into(), + note: Some("Deleted user".into()), + action: "Deleted".into(), secondary: None, }, &obj.object_ref(&()), @@ -138,33 +134,16 @@ impl ControllerEvents for Recorder { .await } - async fn group_deleted(&self, obj: &T, name: &str) -> Result<(), Self::Error> + async fn group_deleted(&self, obj: &T) -> Result<(), Self::Error> where T: Resource + Sync, { self.publish( &Event { type_: EventType::Normal, - reason: "GroupDeleted".into(), - note: Some(format!("Deleted group '{name}'")), - action: "GroupDeleted".into(), - secondary: None, - }, - &obj.object_ref(&()), - ) - .await - } - - async fn user_not_found(&self, obj: &T, username: &str) -> Result<(), Self::Error> - where - T: Resource + Sync, - { - self.publish( - &Event { - type_: EventType::Warning, - reason: "UserNotFound".into(), - note: Some(format!("User '{username}' not found")), - action: "UserNotFound".into(), + reason: "Deleted".into(), + note: Some("Deleted group".into()), + action: "Deleted".into(), secondary: None, }, &obj.object_ref(&()), diff --git a/src/resources/group.rs b/src/resources/group.rs index b476696..8e9fa03 100644 --- a/src/resources/group.rs +++ b/src/resources/group.rs @@ -39,7 +39,7 @@ impl Reconcile for Group { lldap_client.create_group(&name).await?; - ctx.recorder.group_created(self.as_ref(), &name).await?; + ctx.recorder.group_created(self.as_ref()).await?; } else { trace!("Group already exists"); } @@ -66,7 +66,7 @@ impl Reconcile for Group { lldap_client.delete_group(group.id).await?; - ctx.recorder.group_deleted(self.as_ref(), &name).await?; + ctx.recorder.group_deleted(self.as_ref()).await?; } else { trace!(name, "Group does not exist") } diff --git a/src/resources/service_user.rs b/src/resources/service_user.rs index 6aece96..1ee9dc9 100644 --- a/src/resources/service_user.rs +++ b/src/resources/service_user.rs @@ -144,7 +144,7 @@ impl Reconcile for ServiceUser { debug!(name, username, "Creating new user"); let user = lldap_client.create_user(&username).await?; - ctx.recorder.user_created(self.as_ref(), &username).await?; + ctx.recorder.user_created(self.as_ref()).await?; Ok(user) } @@ -208,14 +208,11 @@ impl Reconcile for ServiceUser { Err(lldap::Error::GraphQl(err)) if err.message == format!("Entity not found: `No such user: '{username}'`") => { - ctx.recorder - .user_not_found(self.as_ref(), &username) - .await?; warn!(name, username, "User not found"); Ok(()) } Ok(_) => { - ctx.recorder.user_deleted(self.as_ref(), &username).await?; + ctx.recorder.user_deleted(self.as_ref()).await?; Ok(()) } Err(err) => Err(err), diff --git a/src/resources/user_attribute.rs b/src/resources/user_attribute.rs index a3a95e8..49cd429 100644 --- a/src/resources/user_attribute.rs +++ b/src/resources/user_attribute.rs @@ -11,11 +11,7 @@ use serde::{Deserialize, Serialize}; use serde_json::json; use tracing::{debug, trace, warn}; -use crate::{ - context::ControllerEvents, - lldap, - resources::{Error, user_attribute}, -}; +use crate::{context::ControllerEvents, lldap, resources::Error}; use super::Reconcile;