From 71bfd5be2d7c90ecee19b2a736e793d9a432d1c8 Mon Sep 17 00:00:00 2001 From: Alex Auvolat Date: Wed, 5 Apr 2023 09:50:26 +0200 Subject: [PATCH] Remove ACME config, not used as we are doing ACME in Tricot now --- src/config/mod.rs | 5 ++--- src/config/options.rs | 14 -------------- src/config/runtime.rs | 24 +----------------------- 3 files changed, 3 insertions(+), 40 deletions(-) diff --git a/src/config/mod.rs b/src/config/mod.rs index 00577c6..9281f44 100644 --- a/src/config/mod.rs +++ b/src/config/mod.rs @@ -3,10 +3,9 @@ mod options; mod options_test; mod runtime; -pub use options::{ConfigOpts, ConfigOptsAcme, ConfigOptsBase, ConfigOptsConsul}; +pub use options::{ConfigOpts, ConfigOptsBase, ConfigOptsConsul}; pub use runtime::{ - RuntimeConfig, RuntimeConfigAcme, RuntimeConfigConsul, RuntimeConfigFirewall, RuntimeConfigIgd, - RuntimeConfigStun, + RuntimeConfig, RuntimeConfigConsul, RuntimeConfigFirewall, RuntimeConfigIgd, RuntimeConfigStun, }; pub const EXPIRATION_TIME: u16 = 300; diff --git a/src/config/options.rs b/src/config/options.rs index fc9df16..adb16f5 100644 --- a/src/config/options.rs +++ b/src/config/options.rs @@ -24,17 +24,6 @@ pub struct ConfigOptsBase { pub ipv6_only: bool, } -/// ACME configuration options -#[derive(Clone, Default, Deserialize)] -pub struct ConfigOptsAcme { - /// Whether ACME is enabled [default: false] - #[serde(default)] - pub enable: bool, - - /// The default domain holder's e-mail [default: None] - pub email: Option, -} - /// Consul configuration options #[derive(Clone, Default, Deserialize)] pub struct ConfigOptsConsul { @@ -56,7 +45,6 @@ pub struct ConfigOptsConsul { /// Model of all potential configuration options pub struct ConfigOpts { pub base: ConfigOptsBase, - pub acme: ConfigOptsAcme, pub consul: ConfigOptsConsul, } @@ -64,12 +52,10 @@ impl ConfigOpts { pub fn from_env() -> Result { let base: ConfigOptsBase = envy::prefixed("DIPLONAT_").from_env()?; let consul: ConfigOptsConsul = envy::prefixed("DIPLONAT_CONSUL_").from_env()?; - let acme: ConfigOptsAcme = envy::prefixed("DIPLONAT_ACME_").from_env()?; RuntimeConfig::new(Self { base: base, consul: consul, - acme: acme, }) } diff --git a/src/config/runtime.rs b/src/config/runtime.rs index d1a3f89..8084439 100644 --- a/src/config/runtime.rs +++ b/src/config/runtime.rs @@ -5,18 +5,13 @@ use std::time::Duration; use anyhow::{anyhow, bail, Context, Result}; -use crate::config::{ConfigOpts, ConfigOptsAcme, ConfigOptsBase, ConfigOptsConsul}; +use crate::config::{ConfigOpts, ConfigOptsBase, ConfigOptsConsul}; // This code is inspired by the Trunk crate (https://github.com/thedodd/trunk) // In this file, we take ConfigOpts and transform them into ready-to-use // RuntimeConfig. We apply default values and business logic. -#[derive(Debug)] -pub struct RuntimeConfigAcme { - pub email: String, -} - #[derive(Debug)] pub struct RuntimeConfigConsul { pub node_name: String, @@ -46,7 +41,6 @@ pub struct RuntimeConfigStun { #[derive(Debug)] pub struct RuntimeConfig { - pub acme: Option, pub consul: RuntimeConfigConsul, pub firewall: RuntimeConfigFirewall, pub igd: Option, @@ -55,7 +49,6 @@ pub struct RuntimeConfig { impl RuntimeConfig { pub fn new(opts: ConfigOpts) -> Result { - let acme = RuntimeConfigAcme::new(opts.acme)?; let consul = RuntimeConfigConsul::new(opts.consul)?; let firewall = RuntimeConfigFirewall::new(&opts.base)?; let igd = match opts.base.ipv6_only { @@ -65,7 +58,6 @@ impl RuntimeConfig { let stun = RuntimeConfigStun::new(&opts.base)?; Ok(Self { - acme, consul, firewall, igd, @@ -74,20 +66,6 @@ impl RuntimeConfig { } } -impl RuntimeConfigAcme { - pub fn new(opts: ConfigOptsAcme) -> Result> { - if !opts.enable { - return Ok(None); - } - - let email = opts.email.expect( - "'DIPLONAT_ACME_EMAIL' environment variable is required if 'DIPLONAT_ACME_ENABLE' == 'true'", - ); - - Ok(Some(Self { email })) - } -} - impl RuntimeConfigConsul { pub(super) fn new(opts: ConfigOptsConsul) -> Result { let node_name = opts