fix: support DiscoveryStrategy in OKDSetup01InventoryScore #224

Merged
stremblay merged 3 commits from fix/support-discovery-strategy-OKDSetup01InventoryScore into master 2026-01-28 20:48:29 +00:00
2 changed files with 14 additions and 4 deletions

View File

@@ -4,7 +4,10 @@ use crate::{
infra::inventory::InventoryRepositoryFactory,
interpret::{Interpret, InterpretError, InterpretName, InterpretStatus, Outcome},
inventory::{HostRole, Inventory},
modules::inventory::{DiscoverHostForRoleScore, HarmonyDiscoveryStrategy},
modules::{
inventory::{DiscoverHostForRoleScore, HarmonyDiscoveryStrategy},
okd::bootstrap_okd_node::OKDNodeInterpret,
},
score::Score,
topology::HAClusterTopology,
};
@@ -21,11 +24,16 @@ use serde::Serialize;
// -------------------------------------------------------------------------------------------------
#[derive(Debug, Clone, Serialize, new)]
pub struct OKDSetup01InventoryScore {}
pub struct OKDSetup01InventoryScore {
pub discovery_strategy: HarmonyDiscoveryStrategy,
}
impl Score<HAClusterTopology> for OKDSetup01InventoryScore {
fn create_interpret(&self) -> Box<dyn Interpret<HAClusterTopology>> {
Box::new(OKDSetup01InventoryInterpret::new(self.clone()))
Box::new(OKDNodeInterpret::new(
HostRole::Bootstrap,
self.discovery_strategy.clone(),
))
}
fn name(&self) -> String {

View File

@@ -67,7 +67,9 @@ impl OKDInstallationPipeline {
discovery_strategy: HarmonyDiscoveryStrategy,
) -> Vec<Box<dyn Score<HAClusterTopology>>> {
vec![
Box::new(OKDSetup01InventoryScore::new()),
Box::new(OKDSetup01InventoryScore {
discovery_strategy: discovery_strategy.clone(),
}),
Box::new(OKDSetup02BootstrapScore::new()),
Box::new(OKDSetup03ControlPlaneScore {
discovery_strategy: discovery_strategy.clone(),