use clap::Parser;
#[derive(Parser, Debug, Clone)]
#[command(name = "restic-123pan")]
#[command(about = "Restic REST API backend server using 123pan cloud storage")]
pub struct Config {
#[arg(long, env = "PAN123_CLIENT_ID")]
pub client_id: String,
#[arg(long, env = "PAN123_CLIENT_SECRET")]
pub client_secret: String,
#[arg(long, env = "PAN123_REPO_PATH", default_value = "/restic-backup")]
pub repo_path: String,
#[arg(long, env = "LISTEN_ADDR", default_value = "127.0.0.1:8000")]
pub listen_addr: String,
#[arg(long, env = "RUST_LOG", default_value = "info")]
pub log_level: String,
#[arg(long, env = "DB_PATH", default_value = "cache-123pan.db")]
pub db_path: String,
#[arg(long, env = "FORCE_CACHE_REBUILD", default_value = "false")]
pub force_cache_rebuild: bool,
}
impl Config {
#[allow(dead_code)]
pub fn parse_config() -> Self {
Config::parse()
}
}