feat: add config arg

closes #4
This commit is contained in:
kieran 2024-11-14 15:36:34 +00:00
parent 22ff55c667
commit d88b77fb02
No known key found for this signature in database
GPG Key ID: DE71CEB3925BE941

View File

@ -25,16 +25,22 @@ use route96::webhook::Webhook;
#[derive(Parser, Debug)] #[derive(Parser, Debug)]
#[command(version, about)] #[command(version, about)]
struct Args { struct Args {
#[arg(long)]
pub config: Option<String>,
} }
#[rocket::main] #[rocket::main]
async fn main() -> Result<(), Error> { async fn main() -> Result<(), Error> {
pretty_env_logger::init(); pretty_env_logger::init();
let _args: Args = Args::parse(); let args: Args = Args::parse();
let builder = Config::builder() let builder = Config::builder()
.add_source(config::File::with_name("config.toml")) .add_source(config::File::with_name(if let Some(ref c) = args.config {
c.as_str()
} else {
"config.toml"
}))
.add_source(config::Environment::with_prefix("APP")) .add_source(config::Environment::with_prefix("APP"))
.build()?; .build()?;