From dc1f4bd19d60266e921d386e1bf14431982e85cc Mon Sep 17 00:00:00 2001 From: Silas Brack Date: Sat, 7 Mar 2026 17:26:09 +0100 Subject: [PATCH] Configure using environment variables --- Cargo.toml | 2 +- src/main.rs | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 659e8bc..b4a5cac 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -10,7 +10,7 @@ rusqlite = { version = "0.35", features = ["bundled"] } reqwest = { version = "0.12", features = ["json"] } serde = { version = "1", features = ["derive"] } serde_json = "1" -clap = { version = "4", features = ["derive"] } +clap = { version = "4", features = ["derive", "env"] } tracing = "0.1" tracing-subscriber = "0.3" sha2 = "0.10" diff --git a/src/main.rs b/src/main.rs index 6925ea8..dc49008 100644 --- a/src/main.rs +++ b/src/main.rs @@ -3,13 +3,13 @@ use clap::{Parser, Subcommand}; #[derive(Parser)] #[command(name = "mkv", about = "Distributed key-value store")] struct Cli { - #[arg(short, long, default_value = "/tmp/mkv/index.db")] + #[arg(short, long, env = "MKV_DB", default_value = "/tmp/mkv/index.db")] db: String, - #[arg(short, long, required = true, value_delimiter = ',')] + #[arg(short, long, env = "MKV_VOLUMES", required = true, value_delimiter = ',')] volumes: Vec, - #[arg(short, long, default_value_t = 2)] + #[arg(short, long, env = "MKV_REPLICAS", default_value_t = 2)] replicas: usize, #[command(subcommand)] @@ -20,7 +20,7 @@ struct Cli { enum Commands { /// Start the index server Serve { - #[arg(short, long, default_value_t = 3000)] + #[arg(short, long, env = "MKV_PORT", default_value_t = 3000)] port: u16, }, /// Rebuild SQLite index from volume servers