Configure using environment variables

This commit is contained in:
Silas Brack 2026-03-07 17:26:09 +01:00
parent 689b85e6f2
commit dc1f4bd19d
2 changed files with 5 additions and 5 deletions

View file

@ -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"

View file

@ -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<String>,
#[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