feat: added the steps to install discord-webhook-receiver for k8s anywhere topology if not already installed #50
| @ -30,7 +30,11 @@ pub trait Monitor<T: Topology>: Debug + Send + Sync { | |||||||
| 
 | 
 | ||||||
| #[async_trait] | #[async_trait] | ||||||
| pub trait EnsureAlertReceiver<T: Topology>: Debug + DynClone + Send + Sync { | pub trait EnsureAlertReceiver<T: Topology>: Debug + DynClone + Send + Sync { | ||||||
|     async fn ensure_alert_receiver(&self, inventory: Inventory, topology: &T) -> Result<Outcome, InterpretError>; |     async fn ensure_alert_receiver( | ||||||
|  |         &self, | ||||||
|  |         inventory: Inventory, | ||||||
|  |         topology: &T, | ||||||
|  |     ) -> Result<Outcome, InterpretError>; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| dyn_clone::clone_trait_object!(<T> EnsureAlertReceiver<T>); | dyn_clone::clone_trait_object!(<T> EnsureAlertReceiver<T>); | ||||||
|  | |||||||
| @ -11,7 +11,8 @@ use crate::{ | |||||||
|     inventory::Inventory, |     inventory::Inventory, | ||||||
|     score::Score, |     score::Score, | ||||||
|     topology::{ |     topology::{ | ||||||
|         oberservability::monitoring::{AlertReceiver, EnsureAlertReceiver}, HelmCommand, K8sAnywhereTopology, Topology |         HelmCommand, K8sAnywhereTopology, Topology, | ||||||
|  |         oberservability::monitoring::{AlertReceiver, EnsureAlertReceiver}, | ||||||
|     }, |     }, | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| @ -24,8 +25,14 @@ pub struct DiscordWebhookConfig { | |||||||
| 
 | 
 | ||||||
| #[async_trait] | #[async_trait] | ||||||
| impl<T: Topology + DiscordWebhookReceiver> EnsureAlertReceiver<T> for DiscordWebhookConfig { | impl<T: Topology + DiscordWebhookReceiver> EnsureAlertReceiver<T> for DiscordWebhookConfig { | ||||||
|     async fn ensure_alert_receiver(&self, inventory: Inventory, topology: &T) -> Result<Outcome, InterpretError> { |     async fn ensure_alert_receiver( | ||||||
|         topology.ensure_discord_webhook_receiver(&inventory, self.clone()).await |         &self, | ||||||
|  |         inventory: Inventory, | ||||||
|  |         topology: &T, | ||||||
|  |     ) -> Result<Outcome, InterpretError> { | ||||||
|  |         topology | ||||||
|  |             .ensure_discord_webhook_receiver(&inventory, self.clone()) | ||||||
|  |             .await | ||||||
|     } |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user