mod argparse; mod server; #[macro_use] extern crate tracing; use anyhow::Result as AnyResult; use argparse::{process_cmd, Args}; use serde::Deserialize; use structopt::StructOpt; use u_lib::api::ClientHandler; use u_lib::logging::init_logger; use u_lib::utils::{env::default_host, load_env}; #[derive(Deserialize)] struct AccessEnv { admin_auth_token: String, #[serde(default = "default_host")] u_server: String, } #[actix_web::main] async fn main() -> AnyResult<()> { let env = load_env::()?; let client = ClientHandler::new(&env.u_server, Some(env.admin_auth_token)); let args = Args::from_args(); init_logger(None::<&str>); let result = process_cmd(client, args).await.to_string(); println!("{result}"); Ok(()) }