A simple lib for configuring your applications via environment variables.
1.80.0+
This version is explicitly tested in CI and may be bumped in any release as needed. Maintaining compatibility with older compilers is a priority though, so the bar for bumping the minimum supported version is set very high. Any changes to the supported minimum version will be called out in the release notes.
[dependencies]
env-vars-config = "0.1"
use std::env;
use env_vars_config::env_vars_config;
env_vars_config! {
SERVER_ADDRESS: String = "0.0.0.0:8080",
WORKERS_COUNT: i32 = 32,
OTEL_SERVICE_NAME: String = "test-service",
}
fn main() {
println!("server address: {}", config::SERVER_ADDRESS.as_str());
println!("workers count: {}", config::WORKERS_COUNT.clone());
println!("otel service name: {}", config::OTEL_SERVICE_NAME.clone());
println!(
"otel service name (from env): {}",
env::var("OTEL_SERVICE_NAME").unwrap()
);
}