1 个不稳定版本
0.1.0 | 2022年12月4日 |
---|
#903 in 配置
4KB
conf_from_env
此库自动从环境变量中读取配置。配置在配置值的一个结构体中定义,在秘密的一个结构体中定义。预期环境变量具有与结构体属性相同的名称,全部大写。
示例
LOG_LEVEL=info
REDIS_HOST=127.0.0.1
REDIS_USER=lala
REDIS_PASSWORD=lili
pub struct Config {
pub log_level: String,
pub redis_host: String,
pub redis_user: String,
timeout: u32
}
#[derive(SetStructFromEnv, Clone)]
pub struct Secrets {
pub redis_password: String,
}
pub type CoSe = ConfigAndSecrets<Config, Secrets>;
fn main() {
let cose = CoSe::from_env();
println!("config and secrets: {:?}", cose);
}
依赖项
~1.5MB
~36K SLoC