mirror of
https://github.com/edera-dev/krata.git
synced 2025-08-03 05:10:55 +00:00
krata: implement guest tab for automatic guest startup
This commit is contained in:
@ -4,6 +4,7 @@ use env_logger::Env;
|
||||
use krata::dial::ControlDialAddress;
|
||||
use kratad::Daemon;
|
||||
use kratart::Runtime;
|
||||
use log::error;
|
||||
use std::{
|
||||
str::FromStr,
|
||||
sync::{atomic::AtomicBool, Arc},
|
||||
@ -15,6 +16,8 @@ struct Args {
|
||||
listen: String,
|
||||
#[arg(short, long, default_value = "/var/lib/krata")]
|
||||
store: String,
|
||||
#[arg(long, default_value = "false")]
|
||||
no_load_guest_tab: bool,
|
||||
}
|
||||
|
||||
#[tokio::main(flavor = "multi_thread", worker_threads = 10)]
|
||||
@ -26,6 +29,11 @@ async fn main() -> Result<()> {
|
||||
let addr = ControlDialAddress::from_str(&args.listen)?;
|
||||
let runtime = Runtime::new(args.store.clone()).await?;
|
||||
let mut daemon = Daemon::new(args.store.clone(), runtime).await?;
|
||||
if !args.no_load_guest_tab {
|
||||
if let Err(error) = daemon.load_guest_tab().await {
|
||||
error!("failed to load guest tab: {}", error);
|
||||
}
|
||||
}
|
||||
daemon.listen(addr).await?;
|
||||
Ok(())
|
||||
}
|
||||
|
Reference in New Issue
Block a user