use clap::Parser;
use plane_common::names::{AcmeDnsServerName, OrRandom};
use url::Url;
#[derive(Parser)]
pub struct DnsOpts {
#[clap(long)]
name: Option<AcmeDnsServerName>,
#[clap(long)]
controller_url: Url,
#[clap(long)]
zone: String,
#[clap(long, default_value = "53")]
port: u16,
}
impl DnsOpts {
pub fn into_config(self) -> crate::dns::DnsConfig {
crate::dns::DnsConfig {
name: self.name.or_random(),
controller_url: self.controller_url,
port: self.port,
zone: Some(self.zone),
}
}
}