WIP: feat: implementation for opnsense os-node_exporter #173
@ -20,21 +20,20 @@ impl<'a> NodeExporterConfig<'a> {
|
|||||||
pub fn get_full_config(&self) -> &Option<NodeExporter> {
|
pub fn get_full_config(&self) -> &Option<NodeExporter> {
|
||||||
&self.opnsense.opnsense.node_exporter
|
&self.opnsense.opnsense.node_exporter
|
||||||
}
|
}
|
||||||
fn with_node_exporter<F, R>(&mut self, f: F) -> R
|
|
||||||
|
wjro marked this conversation as resolved
Outdated
|
|||||||
|
fn with_node_exporter<F, R>(&mut self, f: F) -> Result<R, &'static str>
|
||||||
where
|
where
|
||||||
F: FnOnce(&mut NodeExporter) -> R,
|
F: FnOnce(&mut NodeExporter) -> R,
|
||||||
{
|
{
|
||||||
match &mut self.opnsense.opnsense.node_exporter.as_mut() {
|
match &mut self.opnsense.opnsense.node_exporter.as_mut() {
|
||||||
Some(node_exporter) => f(node_exporter),
|
Some(node_exporter) => Ok(f(node_exporter)),
|
||||||
None => unimplemented!(
|
None => Err("node exporter is not yet installed"),
|
||||||
|
wjro marked this conversation as resolved
Outdated
letian
commented
is it expected to have a line return here? is it expected to have a line return here?
|
|||||||
"
|
|
||||||
node exporter is not yet installed"
|
|
||||||
),
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn enable(&mut self, enabled: bool) {
|
pub fn enable(&mut self, enabled: bool) -> Result<(), &'static str> {
|
||||||
self.with_node_exporter(|node_exporter| node_exporter.enabled = enabled as u8)
|
self.with_node_exporter(|node_exporter| node_exporter.enabled = enabled as u8)
|
||||||
|
.map(|_| ())
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn reload_restart(&self) -> Result<(), Error> {
|
pub async fn reload_restart(&self) -> Result<(), Error> {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user
white line missing