From c578990f8c67dff92d2dcdc9d65192b71834b75b Mon Sep 17 00:00:00 2001 From: Alejandro Mery Date: Mon, 23 Oct 2023 21:35:59 +0000 Subject: [PATCH] jpictl: refactor dns command initialization Signed-off-by: Alejandro Mery --- cmd/jpictl/dns.go | 46 +++++++++++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 19 deletions(-) diff --git a/cmd/jpictl/dns.go b/cmd/jpictl/dns.go index 4431801..c3788e0 100644 --- a/cmd/jpictl/dns.go +++ b/cmd/jpictl/dns.go @@ -72,6 +72,29 @@ func populateDNSManager(mgr *dns.Manager, m *cluster.Cluster) error { return err } +// revive:disable:flag-parameter +func newDNSManagerCommand(_ *cobra.Command, + resolve bool, withCredentials bool) (*dns.Manager, error) { + // revive:enable:flag-parameter + var cred dns.Provider + + if withCredentials { + var err error + + cred, err = dns.DefaultDNSProvider() + if err != nil { + return nil, err + } + } + + m, err := cfg.LoadZones(resolve) + if err != nil { + return nil, err + } + + return newDNSManager(m, cred) +} + // Command var dnsCmd = &cobra.Command{ Use: "dns", @@ -81,13 +104,8 @@ var dnsWriteCmd = &cobra.Command{ Use: "write", Short: "dns write generates public DNS records", PreRun: setVerbosity, - RunE: func(_ *cobra.Command, _ []string) error { - m, err := cfg.LoadZones(true) - if err != nil { - return err - } - - mgr, err := newDNSManager(m, nil) + RunE: func(cmd *cobra.Command, _ []string) error { + mgr, err := newDNSManagerCommand(cmd, true, false) if err != nil { return err } @@ -101,18 +119,8 @@ var dnsSyncCmd = &cobra.Command{ Use: "sync", Short: "dns sync updates public DNS records", PreRun: setVerbosity, - RunE: func(_ *cobra.Command, _ []string) error { - cred, err := dns.DefaultDNSProvider() - if err != nil { - return err - } - - m, err := cfg.LoadZones(true) - if err != nil { - return err - } - - mgr, err := newDNSManager(m, cred) + RunE: func(cmd *cobra.Command, _ []string) error { + mgr, err := newDNSManagerCommand(cmd, true, true) if err != nil { return err }