From 48514a61be57917b26c95154ef62808d4906dd30 Mon Sep 17 00:00:00 2001 From: Balakrishnan Balasubramanian Date: Thu, 23 Mar 2023 15:30:55 -0400 Subject: [PATCH] refactor and log --- main.go | 49 ++++++++++++++++++++++++------------------------- 1 file changed, 24 insertions(+), 25 deletions(-) diff --git a/main.go b/main.go index 79fec74..79d4c57 100644 --- a/main.go +++ b/main.go @@ -5,6 +5,7 @@ import ( "encoding/json" "flag" "fmt" + "log" "net" "os" @@ -35,40 +36,38 @@ func main() { provider := cloudflare.Provider{APIToken: token} zone := domain + "." fmt.Println(zone, sub, cname) - setRecords := func() ([]libdns.Record, error) { + makeRecord := func() (libdns.Record, error) { switch { case cname != "": - return provider.SetRecords(ctx, zone, []libdns.Record{ - { - Type: "CNAME", - Name: sub, - Value: cname, - }, - }) + return libdns.Record{ + Type: "CNAME", + Name: sub, + Value: cname, + }, nil case len(ip) == net.IPv4len: - return provider.SetRecords(ctx, zone, []libdns.Record{ - { - Type: "A", - Name: sub, - Value: ip.To4().String(), - }, - }) + return libdns.Record{ + Type: "A", + Name: sub, + Value: ip.To4().String(), + }, nil case len(ip) == net.IPv6len: - return provider.SetRecords(ctx, zone, []libdns.Record{ - { - Type: "AAAA", - Name: sub, - Value: ip.To16().String(), - }, - }) + return libdns.Record{ + Type: "AAAA", + Name: sub, + Value: ip.To16().String(), + }, nil } - return nil, fmt.Errorf("neither cname nor valid ip is set") + return libdns.Record{}, fmt.Errorf("neither cname nor valid ip is set") } if sub != "" { - newRecs, err := setRecords() + record, err := makeRecord() + if err != nil { + panic(err) + } + log.Printf("setting record, %+v", record) + newRecs, err := provider.SetRecords(ctx, zone, []libdns.Record{record}) if err != nil { - fmt.Printf("%#v\n", err) panic(err) } fmt.Println(newRecs)