Files
unshell/unshell-server/src/main.rs
T

39 lines
959 B
Rust
Raw Normal View History

2025-12-01 16:38:33 -07:00
use unshell_server::{database::Database, start_api};
2025-11-28 18:39:14 -07:00
2025-12-01 09:54:12 -07:00
use clap::Parser;
use static_init::dynamic;
#[dynamic]
static DEFAULT_HOST: String = "localhost".to_string();
2025-12-01 16:38:33 -07:00
#[dynamic]
static DATABASE_NAME: String = "database".to_string();
2025-12-01 09:54:12 -07:00
/// A fictional versioning CLI
#[derive(Debug, Parser)]
#[command(name = "unshell-server")]
#[command(about = "UnShell server", long_about = None)]
pub struct Args {
/// Host to listen on
#[clap(long, default_value_t = DEFAULT_HOST.clone())]
host: String,
/// Port to listen
#[arg(short, long, default_value_t = 3000)]
port: usize,
2025-12-01 16:38:33 -07:00
/// Name of database folder
#[clap(short, long, default_value_t = DATABASE_NAME.clone())]
database_name: String,
2025-12-01 09:54:12 -07:00
}
2025-11-28 18:39:14 -07:00
#[tokio::main]
async fn main() {
2025-12-01 09:54:12 -07:00
let args = Args::parse();
2025-11-29 13:15:09 -07:00
unshell_lib::logger::PrettyLogger::init();
2025-11-28 18:39:14 -07:00
2025-12-01 16:38:33 -07:00
let database = Database::new(args.database_name);
start_api(&format!("{}:{}", args.host, args.port), database).await;
2025-11-28 18:39:14 -07:00
}