cdk_mintd/env_vars/
onchain.rs1use std::env;
4
5use crate::config::Onchain;
6
7pub const ENV_ONCHAIN_BACKEND: &str = "CDK_MINTD_ONCHAIN_BACKEND";
9pub const ENV_ONCHAIN_MIN_MINT: &str = "CDK_MINTD_ONCHAIN_MIN_MINT";
10pub const ENV_ONCHAIN_MAX_MINT: &str = "CDK_MINTD_ONCHAIN_MAX_MINT";
11pub const ENV_ONCHAIN_MIN_MELT: &str = "CDK_MINTD_ONCHAIN_MIN_MELT";
12pub const ENV_ONCHAIN_MAX_MELT: &str = "CDK_MINTD_ONCHAIN_MAX_MELT";
13
14impl Onchain {
15 pub fn from_env(mut self) -> Self {
16 if let Ok(backend_str) = env::var(ENV_ONCHAIN_BACKEND) {
18 if let Ok(backend) = backend_str.parse() {
19 self.onchain_backend = backend;
20 } else {
21 tracing::warn!("Unknown onchain backend set in env var will attempt to use config file. {backend_str}");
22 }
23 }
24
25 if let Ok(min_mint_str) = env::var(ENV_ONCHAIN_MIN_MINT) {
27 if let Ok(amount) = min_mint_str.parse::<u64>() {
28 self.min_mint = amount.into();
29 }
30 }
31
32 if let Ok(max_mint_str) = env::var(ENV_ONCHAIN_MAX_MINT) {
33 if let Ok(amount) = max_mint_str.parse::<u64>() {
34 self.max_mint = amount.into();
35 }
36 }
37
38 if let Ok(min_melt_str) = env::var(ENV_ONCHAIN_MIN_MELT) {
39 if let Ok(amount) = min_melt_str.parse::<u64>() {
40 self.min_melt = amount.into();
41 }
42 }
43
44 if let Ok(max_melt_str) = env::var(ENV_ONCHAIN_MAX_MELT) {
45 if let Ok(amount) = max_melt_str.parse::<u64>() {
46 self.max_melt = amount.into();
47 }
48 }
49
50 self
51 }
52}