complete get_container_ip effect handler

This commit is contained in:
Shadowy Super Coder
2024-03-20 21:26:18 -06:00
parent 4a27128a1c
commit 405b3be496
2 changed files with 20 additions and 2 deletions

View File

@@ -385,6 +385,10 @@ impl NetService {
))
}
}
pub fn get_ip(&self) -> Ipv4Addr {
self.ip.to_owned()
}
}
impl Drop for NetService {

View File

@@ -1,3 +1,5 @@
use std::any::Any;
use std::borrow::Borrow;
use std::collections::BTreeSet;
use std::ffi::OsString;
use std::net::Ipv4Addr;
@@ -23,7 +25,8 @@ use crate::db::model::package::{
use crate::disk::mount::filesystem::idmapped::IdMapped;
use crate::disk::mount::filesystem::loop_dev::LoopDev;
use crate::disk::mount::filesystem::overlayfs::OverlayGuard;
use crate::prelude::*;
use crate::net::net;
use crate::{net, prelude::*};
use crate::s9pk::rpc::SKIP_ENV;
use crate::service::cli::ContainerCliContext;
use crate::service::ServiceActorSeed;
@@ -337,7 +340,18 @@ async fn get_system_smtp(
todo!()
}
async fn get_container_ip(context: EffectContext, _: Empty) -> Result<Ipv4Addr, Error> {
todo!()
match context.0.upgrade() {
Some(c) => {
let net_service = c.persistent_container.net_service.lock().await;
Ok(net_service.get_ip())
},
None => {
Err(Error::new(
eyre!("Upgrade on Weak<ServiceActorSeed> resulted in a None variant"),
crate::ErrorKind::NotFound
))
}
}
}
async fn get_service_port_forward(
context: EffectContext,