diff --git a/harmony/src/domain/topology/k8s_anywhere/k8s_anywhere.rs b/harmony/src/domain/topology/k8s_anywhere/k8s_anywhere.rs index 5b691cc9..76280d86 100644 --- a/harmony/src/domain/topology/k8s_anywhere/k8s_anywhere.rs +++ b/harmony/src/domain/topology/k8s_anywhere/k8s_anywhere.rs @@ -1222,9 +1222,11 @@ fn extract_base_domain(host: &str) -> Option { #[cfg(test)] mod tests { use super::*; + use std::sync::Mutex; use std::sync::atomic::{AtomicUsize, Ordering}; static TEST_COUNTER: AtomicUsize = AtomicUsize::new(0); + static ENV_LOCK: Mutex<()> = Mutex::new(()); /// Sets environment variables with unique names to avoid concurrency issues between tests. /// Returns the names of the (config_var, profile_var) used. @@ -1289,6 +1291,7 @@ mod tests { #[test] fn test_remote_k8s_from_env_var_only_context() { + let _lock = ENV_LOCK.lock().unwrap_or_else(|e| e.into_inner()); run_in_isolated_env(|| { unsafe { std::env::remove_var("KUBECONFIG"); @@ -1305,6 +1308,7 @@ mod tests { #[test] fn test_remote_k8s_from_env_var_unknown_key_trim() { + let _lock = ENV_LOCK.lock().unwrap_or_else(|e| e.into_inner()); run_in_isolated_env(|| { unsafe { std::env::remove_var("KUBECONFIG"); @@ -1324,6 +1328,7 @@ mod tests { #[test] fn test_remote_k8s_from_env_var_empty_malformed() { + let _lock = ENV_LOCK.lock().unwrap_or_else(|e| e.into_inner()); run_in_isolated_env(|| { unsafe { std::env::remove_var("KUBECONFIG"); @@ -1341,6 +1346,7 @@ mod tests { #[test] fn test_remote_k8s_from_env_var_kubeconfig_fallback() { + let _lock = ENV_LOCK.lock().unwrap_or_else(|e| e.into_inner()); run_in_isolated_env(|| { unsafe { std::env::set_var("KUBECONFIG", "/fallback/path"); @@ -1357,6 +1363,7 @@ mod tests { #[test] fn test_remote_k8s_from_env_var_kubeconfig_no_fallback_if_provided() { + let _lock = ENV_LOCK.lock().unwrap_or_else(|e| e.into_inner()); run_in_isolated_env(|| { unsafe { std::env::set_var("KUBECONFIG", "/fallback/path"); diff --git a/harmony/src/infra/brocade.rs b/harmony/src/infra/brocade.rs index 58a1241d..2bc90d2b 100644 --- a/harmony/src/infra/brocade.rs +++ b/harmony/src/infra/brocade.rs @@ -139,7 +139,7 @@ impl SwitchClient for BrocadeSwitchClient { pub struct UnmanagedSwitch; impl UnmanagedSwitch { - pub async fn init( ) -> Result { + pub async fn init() -> Result { Ok(Self) } } @@ -162,7 +162,14 @@ impl SwitchClient for UnmanagedSwitch { channel_name: &str, switch_ports: Vec, ) -> Result { - todo!("unmanaged switch. Nothing to do.") + todo!("unmanaged switch. Nothing to do.") + } + + async fn clear_port_channel(&self, ids: &Vec) -> Result<(), SwitchError> { + todo!("unmanged switch. Nothing to do.") + } + async fn configure_interface(&self, ports: &Vec) -> Result<(), SwitchError> { + todo!("unmanged switch. Nothing to do.") } }