make netzur config optional

This commit is contained in:
rchac committed 2025-10-05 16:29:12 -06:00
1 parent acfd560ab2
commit 7d8c841981
2 files changed
+32 -7

No files matched your search

@@ -58,8 +58,9 @@ pub struct Config {
/// Spylnx Integration
pub spylnx_integration: super::spylnx_integration::SplynxIntegration,
/// Netzur Integration
pub netzur_integration: super::netzur_integration::NetzurIntegration,
/// Netzur Integration configuration. Optional so older configs without this
/// section still deserialize cleanly.
pub netzur_integration: Option<super::netzur_integration::NetzurIntegration>,
/// UISP Integration
pub uisp_integration: super::uisp_integration::UispIntegration,
@@ -150,7 +151,7 @@ impl Default for Config {
ip_ranges: super::ip_ranges::IpRanges::default(),
integration_common: super::integration_common::IntegrationConfig::default(),
spylnx_integration: super::spylnx_integration::SplynxIntegration::default(),
netzur_integration: super::netzur_integration::NetzurIntegration::default(),
netzur_integration: Some(super::netzur_integration::NetzurIntegration::default()),
uisp_integration: super::uisp_integration::UispIntegration::default(),
powercode_integration: super::powercode_integration::PowercodeIntegration::default(),
sonar_integration: super::sonar_integration::SonarIntegration::default(),
+28 -4
View File
@@ -595,19 +595,37 @@ fn splynx_strategy() -> PyResult<String> {
#[pyfunction]
fn netzur_api_key() -> PyResult<String> {
let config = lqos_config::load_config().unwrap();
Ok(config.netzur_integration.api_key.clone())
Ok(
config
.netzur_integration
.as_ref()
.map(|cfg| cfg.api_key.clone())
.unwrap_or_default(),
)
}
#[pyfunction]
fn netzur_api_url() -> PyResult<String> {
let config = lqos_config::load_config().unwrap();
Ok(config.netzur_integration.api_url.clone())
Ok(
config
.netzur_integration
.as_ref()
.map(|cfg| cfg.api_url.clone())
.unwrap_or_default(),
)
}
#[pyfunction]
fn netzur_api_timeout() -> PyResult<u64> {
let config = lqos_config::load_config().unwrap();
Ok(config.netzur_integration.timeout_secs)
Ok(
config
.netzur_integration
.as_ref()
.map(|cfg| cfg.timeout_secs)
.unwrap_or(60),
)
}
#[pyfunction]
@@ -625,7 +643,13 @@ fn automatic_import_splynx() -> PyResult<bool> {
#[pyfunction]
fn automatic_import_netzur() -> PyResult<bool> {
let config = lqos_config::load_config().unwrap();
Ok(config.netzur_integration.enable_netzur)
Ok(
config
.netzur_integration
.as_ref()
.map(|cfg| cfg.enable_netzur)
.unwrap_or(false),
)
}
#[pyfunction]