use std::env;
use log::info;
#[derive(Debug)]
pub struct Config {
pub bearer_key: String,
pub zone: String,
pub domain: String,
pub domain_alter: Option<String>,
}
impl Config {
pub fn from_env() -> Result<Self, String> {
let bearer_key =
env::var("CF_BEARER_KEY").map_err(|_| "environment variable CF_BEARER_KEY not set")?;
let zone = env::var("CF_ZONE").map_err(|_| "environment variable CF_ZONE not set")?;
let domain = env::var("CF_DOMAIN").map_err(|_| "environment variable CF_DOMAIN not set")?;
let domain_alter = env::var("CF_DOMAIN_ALTER").map_err(|_| info!("environment variable CF_DOMAIN_ALTER not set")).ok();
Ok(Config {
bearer_key,
zone,
domain,
domain_alter,
})
}
}