Skip to content

Commit

Permalink
chore(bors): merge pull request #805
Browse files Browse the repository at this point in the history
805: Cherry-pick PR #791 r=datacore-vvarakantham a=datacore-vvarakantham



Co-authored-by: Vandana Varakantham <vandana.varakantham@datacore.com>
  • Loading branch information
mayastor-bors and datacore-vvarakantham committed Apr 11, 2024
2 parents 85562ed + f8c92e9 commit f833a40
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 8 deletions.
3 changes: 2 additions & 1 deletion control-plane/agents/src/bin/ha/node/detector.rs
Original file line number Diff line number Diff line change
Expand Up @@ -395,10 +395,11 @@ impl Event for PathRecord {
fn event(&self, action: EventAction) -> EventMessage {
let event_source = EventSource::new(self.reporter.node_name().to_string())
.with_nvme_path_data(&self.nqn, &self.path);
let volume_id = self.nqn.split(':').last().unwrap_or("").to_string();
EventMessage {
category: EventCategory::NvmePath as i32,
action: action as i32,
target: "".to_string(),
target: volume_id,
metadata: Some(EventMeta::from_source(event_source)),
}
}
Expand Down
18 changes: 11 additions & 7 deletions control-plane/agents/src/bin/ha/node/server.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,7 @@ use crate::{
path_provider::get_nvme_path_entry,
Cli,
};
use agents::{
errors::{SvcError, SvcError::SubsystemNotFound},
eventing::EventWithMeta,
};
use agents::errors::{SvcError, SvcError::SubsystemNotFound};
use events_api::event::{EventAction, EventCategory, EventMessage, EventMeta, EventSource};
use grpc::{
common::MapWrapper,
Expand Down Expand Up @@ -243,7 +240,7 @@ impl NodeAgentSvc {
}
"live" => {
tracing::info!(new_path, "New NVMe path is ready to serve I/O");
self.event(EventAction::NvmePathFix, event_meta(&nqn, &new_path))
self.event(EventAction::NvmePathFix, &nqn, event_meta(&nqn, &new_path))
.generate();
break;
}
Expand Down Expand Up @@ -430,12 +427,19 @@ impl ParsedUri {
}
}

/// Event trait definition for creating events and adding meta data for NvmePath events.
trait EventWithMeta {
/// Create event message with meta data.
fn event(&self, action: EventAction, nqn: &str, meta: EventMeta) -> EventMessage;
}

impl EventWithMeta for NodeAgentSvc {
fn event(&self, event_action: EventAction, meta: EventMeta) -> EventMessage {
fn event(&self, event_action: EventAction, nqn: &str, meta: EventMeta) -> EventMessage {
let volume_id = nqn.split(':').last().unwrap_or_default().to_string();
EventMessage {
category: EventCategory::NvmePath as i32,
action: event_action as i32,
target: "".to_string(),
target: volume_id,
metadata: Some(meta),
}
}
Expand Down

0 comments on commit f833a40

Please sign in to comment.