Merge branch 'integration/new-container-runtime' of github.com:Start9Labs/start-os into integration/new-container-runtime

This commit is contained in:
J H
2024-03-23 09:13:00 -06:00
48 changed files with 309 additions and 836 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

@@ -260,16 +260,24 @@ enum AllowedStatuses {
OnlyRunning, // onlyRunning
OnlyStopped,
Any,
Disabled,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize, TS)]
#[ts(export)]
#[serde(rename_all = "camelCase")]
struct ExportActionParams {
#[ts(type = "string")]
id: ActionId,
metadata: ActionMetadata
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize, TS)]
#[ts(export)]
#[serde(rename_all = "camelCase")]
struct ActionMetadata {
name: String,
description: String,
id: String,
warning: Option<String>,
disabled: bool,
#[ts(type = "{[key: string]: any}")]
input: Value,
allowed_statuses: AllowedStatuses,
@@ -337,7 +345,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,