WIP: initial layout for MonitoringStackScore
This commit is contained in:
parent
db9c8d83e6
commit
40cd765019
@ -10,3 +10,4 @@ pub mod load_balancer;
|
||||
pub mod okd;
|
||||
pub mod opnsense;
|
||||
pub mod tftp;
|
||||
pub mod monitoring;
|
||||
|
||||
3
harmony/src/modules/monitoring/mod.rs
Normal file
3
harmony/src/modules/monitoring/mod.rs
Normal file
@ -0,0 +1,3 @@
|
||||
mod monitoring_alerting;
|
||||
mod resources;
|
||||
pub use monitoring_alerting::*;
|
||||
23
harmony/src/modules/monitoring/monitoring_alerting.rs
Normal file
23
harmony/src/modules/monitoring/monitoring_alerting.rs
Normal file
@ -0,0 +1,23 @@
|
||||
use serde::Serialize;
|
||||
|
||||
use crate::{
|
||||
interpret::Interpret, maestro::Maestro, modules::helm::chart::HelmChartScore, score::Score, topology::{K8sclient, Topology}
|
||||
};
|
||||
|
||||
#[derive(Debug, Clone, Serialize)]
|
||||
pub struct MonitoringAlertingStackScore {
|
||||
monitoring: HelmChartScore,
|
||||
alerting: HelmChartScore,
|
||||
alert_manager: HelmChartScore,
|
||||
}
|
||||
|
||||
impl<T: Topology> Score<T> for MonitoringAlertingStackScore {
|
||||
|
||||
fn create_interpret(&self) -> Box<dyn Interpret<T>> {
|
||||
todo!()
|
||||
}
|
||||
|
||||
fn name(&self) -> String {
|
||||
format!("Monitoring: {}\n, Alerting: {}\n, Alert Manager: {}\n", self.monitoring, self.alerting, self.alert_manager)
|
||||
}
|
||||
}
|
||||
19
harmony/src/modules/monitoring/resources/grafana.rs
Normal file
19
harmony/src/modules/monitoring/resources/grafana.rs
Normal file
@ -0,0 +1,19 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use non_blank_string_rs::NonBlankString;
|
||||
|
||||
use crate::modules::helm::chart::HelmChartScore;
|
||||
|
||||
|
||||
pub fn grafana_score(ns: &str) -> HelmChartScore {
|
||||
HelmChartScore {
|
||||
namespace: Some(NonBlankString::from_str(ns).unwrap()),
|
||||
release_name: NonBlankString::from_str("es").unwrap(),
|
||||
chart_name: NonBlankString::from_str(
|
||||
"oci://registry-1.docker.io/bitnamicharts/grafana",
|
||||
)
|
||||
.unwrap(),
|
||||
chart_version: None,
|
||||
values_overrides: None,
|
||||
}
|
||||
}
|
||||
3
harmony/src/modules/monitoring/resources/mod.rs
Normal file
3
harmony/src/modules/monitoring/resources/mod.rs
Normal file
@ -0,0 +1,3 @@
|
||||
mod grafana;
|
||||
mod prometheus;
|
||||
mod prometheus_alert_manager;
|
||||
19
harmony/src/modules/monitoring/resources/prometheus.rs
Normal file
19
harmony/src/modules/monitoring/resources/prometheus.rs
Normal file
@ -0,0 +1,19 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use non_blank_string_rs::NonBlankString;
|
||||
|
||||
use crate::modules::helm::chart::HelmChartScore;
|
||||
|
||||
|
||||
pub fn elasticsearch_score(ns: &str) -> HelmChartScore {
|
||||
HelmChartScore {
|
||||
namespace: Some(NonBlankString::from_str(ns).unwrap()),
|
||||
release_name: NonBlankString::from_str("es").unwrap(),
|
||||
chart_name: NonBlankString::from_str(
|
||||
todo()!
|
||||
)
|
||||
.unwrap(),
|
||||
chart_version: None,
|
||||
values_overrides: None,
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,20 @@
|
||||
use std::str::FromStr;
|
||||
|
||||
use non_blank_string_rs::NonBlankString;
|
||||
|
||||
use crate::modules::helm::chart::HelmChartScore;
|
||||
|
||||
|
||||
pub fn elasticsearch_score(ns: &str) -> HelmChartScore {
|
||||
HelmChartScore {
|
||||
namespace: Some(NonBlankString::from_str(ns).unwrap()),
|
||||
release_name: NonBlankString::from_str("es").unwrap(),
|
||||
chart_name: NonBlankString::from_str(
|
||||
todo()!
|
||||
)
|
||||
.unwrap(),
|
||||
chart_version: None,
|
||||
values_overrides: None,
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user