use anyhow::Result;
use clap::Parser;
use std::path::PathBuf;

#[derive(Debug, Parser)]
#[command(author, version, about = "Deployer bootstrap orchestration service")]
struct Args {
    /// Configuration file path
    #[arg(short, long, default_value = "deployer.toml")]
    config: PathBuf,
}

#[tokio::main]
async fn main() -> Result<()> {
    photon_runtime::init_tracing("deployer_server=debug,tower_http=debug")?;

    let args = Args::parse();
    let config = deployer_server::config::load_config(&args.config)?;
    tracing::info!(
        "Starting Deployer server with config: {:?}",
        config.redacted()
    );

    deployer_server::run(config).await
}
