mirror of
https://github.com/edera-dev/krata.git
synced 2025-08-04 05:31:32 +00:00
hypha: implement basic networking support
This commit is contained in:
@ -3,7 +3,8 @@ use env_logger::Env;
|
||||
use hypha::container::init::ContainerInit;
|
||||
use std::env;
|
||||
|
||||
fn main() -> Result<()> {
|
||||
#[tokio::main]
|
||||
async fn main() -> Result<()> {
|
||||
env::set_var("RUST_BACKTRACE", "1");
|
||||
env_logger::Builder::from_env(Env::default().default_filter_or("warn")).init();
|
||||
if env::var("HYPHA_UNSAFE_ALWAYS_ALLOW_INIT").unwrap_or("0".to_string()) != "1" {
|
||||
@ -18,6 +19,6 @@ fn main() -> Result<()> {
|
||||
}
|
||||
}
|
||||
let mut container = ContainerInit::new();
|
||||
container.init()?;
|
||||
container.init().await?;
|
||||
Ok(())
|
||||
}
|
||||
|
@ -110,12 +110,13 @@ fn main() -> Result<()> {
|
||||
Commands::List { .. } => {
|
||||
let containers = controller.list()?;
|
||||
let mut table = cli_tables::Table::new();
|
||||
let header = vec!["domain", "uuid", "image"];
|
||||
let header = vec!["domain", "uuid", "ipv4", "image"];
|
||||
table.push_row(&header)?;
|
||||
for container in containers {
|
||||
let row = vec![
|
||||
container.domid.to_string(),
|
||||
container.uuid.to_string(),
|
||||
container.ipv4,
|
||||
container.image,
|
||||
];
|
||||
table.push_row_string(&row)?;
|
||||
|
20
hypha/bin/network.rs
Normal file
20
hypha/bin/network.rs
Normal file
@ -0,0 +1,20 @@
|
||||
use anyhow::Result;
|
||||
use clap::Parser;
|
||||
use env_logger::Env;
|
||||
use hypha::network::HyphaNetwork;
|
||||
|
||||
#[derive(Parser, Debug)]
|
||||
struct NetworkArgs {
|
||||
#[arg(short, long)]
|
||||
interface: String,
|
||||
#[arg(short, long, default_value = "192.168.42.1/24")]
|
||||
network: String,
|
||||
}
|
||||
|
||||
fn main() -> Result<()> {
|
||||
env_logger::Builder::from_env(Env::default().default_filter_or("warn")).init();
|
||||
let args = NetworkArgs::parse();
|
||||
let mut network = HyphaNetwork::new(&args.interface, &[&args.network])?;
|
||||
network.run()?;
|
||||
Ok(())
|
||||
}
|
Reference in New Issue
Block a user