From a22fb5d7a2a4ff183ad3ff2f3b7c86bc225b3e1d Mon Sep 17 00:00:00 2001
From: Javier Viola <363911+pepoviola@users.noreply.github.com>
Date: Fri, 19 Apr 2024 13:48:46 -0300
Subject: [PATCH] feat(orchestrator): expose logs methods for NetworkNodes
 (#201)

Add:
 - logs methods in NetworkNode
---
 crates/orchestrator/src/network/node.rs | 6 ++++++
 crates/provider/src/kubernetes/node.rs  | 1 +
 2 files changed, 7 insertions(+)

diff --git a/crates/orchestrator/src/network/node.rs b/crates/orchestrator/src/network/node.rs
index 19acb8b..bc3bee8 100644
--- a/crates/orchestrator/src/network/node.rs
+++ b/crates/orchestrator/src/network/node.rs
@@ -174,6 +174,12 @@ impl NetworkNode {
         }
     }
 
+    /// Get the logs of the node
+    /// TODO: do we need the `since` param, maybe we could be handy later for loop filtering
+    pub async fn logs(&self) -> Result<String, anyhow::Error> {
+        Ok(self.inner.logs().await?)
+    }
+
     async fn fetch_metrics(&self) -> Result<(), anyhow::Error> {
         let response = reqwest::get(&self.prometheus_uri).await?;
         let metrics = prom_metrics_parser::parse(&response.text().await?)?;
diff --git a/crates/provider/src/kubernetes/node.rs b/crates/provider/src/kubernetes/node.rs
index 8a158d8..4dcc16a 100644
--- a/crates/provider/src/kubernetes/node.rs
+++ b/crates/provider/src/kubernetes/node.rs
@@ -435,6 +435,7 @@ where
         PathBuf::from(file)
     }
 
+    // TODO: handle log rotation as we do in v1
     async fn logs(&self) -> Result<String, ProviderError> {
         self.k8s_client
             .pod_logs(&self.namespace_name(), &self.name)
-- 
GitLab