pub struct ManagedSpec {
pub directory_url: String,
pub contact: Vec<String>,
pub agree_tos: bool,
pub challenge: ChallengeKind,
pub key_type: ManagedKeyType,
pub renew_before: String,
pub san: Vec<String>,
pub account_key_path: Option<PathBuf>,
pub dns_provider: Option<Value>,
}Expand description
ACME-managed cert spec — operator-supplied, parsed verbatim from
tls.managed per spec/crates/engine-acme.md § Configuration schema.
Every required field is mandatory in JSON: there are no implicit
defaults, since the JSON is generated by vane’s CLI / TUI rather
than hand-written. Defaulting in the schema would let a regression
silently swap directory URLs (LE prod vs staging) or key types.
Fields§
§directory_url: String§contact: Vec<String>§agree_tos: bool§challenge: ChallengeKind§key_type: ManagedKeyType§renew_before: StringRenewal anticipation: kick off renewal when
now + renew_before >= not_after. Duration grammar mirrors
rate_limit.window (extended with h and d units —
renewal windows are typically days, not minutes).
san: Vec<String>§account_key_path: Option<PathBuf>BYO account key (PEM PKCS#8). When absent, the registry
auto-creates and persists via AcmeStore::save_account.
dns_provider: Option<Value>DNS provider config — required when challenge == "dns-01",
must be absent for http-01. The schema is provider-specific
(Cargo-feature-gated parser); core stores the raw JSON.
Implementations§
Source§impl ManagedSpec
impl ManagedSpec
Sourcepub fn renew_before_duration(&self) -> Result<Duration, Error>
pub fn renew_before_duration(&self) -> Result<Duration, Error>
Parsed renew_before. Re-parses on every call; callers that
need the value hot-path-frequent should cache it.
§Errors
Returns Error::compile when the literal is malformed or
non-positive.
Trait Implementations§
Source§impl Clone for ManagedSpec
impl Clone for ManagedSpec
Source§fn clone(&self) -> ManagedSpec
fn clone(&self) -> ManagedSpec
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ManagedSpec
impl Debug for ManagedSpec
Source§impl<'de> Deserialize<'de> for ManagedSpec
impl<'de> Deserialize<'de> for ManagedSpec
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for ManagedSpec
impl PartialEq for ManagedSpec
Source§fn eq(&self, other: &ManagedSpec) -> bool
fn eq(&self, other: &ManagedSpec) -> bool
self and other values to be equal, and is used by ==.