From 20f12ba5fd725d257e034877c5a57a158fc7f046 Mon Sep 17 00:00:00 2001 From: yzy613 <59520517+yzy613@users.noreply.github.com> Date: Mon, 11 Mar 2024 10:37:50 +0800 Subject: [PATCH] perf(huaweicloud): Safe*() --- internal/client/huaweicloud.go | 76 ++++++++++++++++++++++++---------- 1 file changed, 53 insertions(+), 23 deletions(-) diff --git a/internal/client/huaweicloud.go b/internal/client/huaweicloud.go index 3963b1c..c20524c 100644 --- a/internal/client/huaweicloud.go +++ b/internal/client/huaweicloud.go @@ -84,16 +84,26 @@ func (hc *HuaweiCloud) Run(enabled common.Enable, ipv4, ipv6 string) (msg []stri } func (hc *HuaweiCloud) getZoneId() (err error) { - auth := basic.NewCredentialsBuilder(). + auth, err := basic.NewCredentialsBuilder(). WithAk(hc.AccessKeyId). WithSk(hc.SecretAccessKey). - Build() + SafeBuild() + if err != nil { + return + } - dnsClient := dns.NewDnsClient( - dns.DnsClientBuilder(). - WithRegion(region.ValueOf("cn-east-3")). - WithCredential(auth). - Build()) + hr, err := region.SafeValueOf("cn-east-3") + if err != nil { + return + } + hhc, err := dns.DnsClientBuilder(). + WithRegion(hr). + WithCredential(auth). + SafeBuild() + if err != nil { + return + } + dnsClient := dns.NewDnsClient(hhc) request := &model.ListPublicZonesRequest{} response, err := dnsClient.ListPublicZones(request) @@ -112,16 +122,26 @@ func (hc *HuaweiCloud) getZoneId() (err error) { } func (hc *HuaweiCloud) getParseRecord(domain, recordType string) (recordSetId, recordIP string, err error) { - auth := basic.NewCredentialsBuilder(). + auth, err := basic.NewCredentialsBuilder(). WithAk(hc.AccessKeyId). WithSk(hc.SecretAccessKey). - Build() + SafeBuild() + if err != nil { + return + } - dnsClient := dns.NewDnsClient( - dns.DnsClientBuilder(). - WithRegion(region.ValueOf("cn-east-3")). - WithCredential(auth). - Build()) + hr, err := region.SafeValueOf("cn-east-3") + if err != nil { + return + } + hhc, err := dns.DnsClientBuilder(). + WithRegion(hr). + WithCredential(auth). + SafeBuild() + if err != nil { + return + } + dnsClient := dns.NewDnsClient(hhc) request := &model.ListRecordSetsByZoneRequest{} request.ZoneId = hc.ZoneId @@ -145,25 +165,35 @@ func (hc *HuaweiCloud) getParseRecord(domain, recordType string) (recordSetId, r } func (hc *HuaweiCloud) updateParseRecord(ipAddr, recordSetId, recordType, domain string) (err error) { - auth := basic.NewCredentialsBuilder(). + auth, err := basic.NewCredentialsBuilder(). WithAk(hc.AccessKeyId). WithSk(hc.SecretAccessKey). - Build() + SafeBuild() + if err != nil { + return + } - dnsClient := dns.NewDnsClient( - dns.DnsClientBuilder(). - WithRegion(region.ValueOf("cn-east-3")). - WithCredential(auth). - Build()) + hr, err := region.SafeValueOf("cn-east-3") + if err != nil { + return + } + hhc, err := dns.DnsClientBuilder(). + WithRegion(hr). + WithCredential(auth). + SafeBuild() + if err != nil { + return + } + dnsClient := dns.NewDnsClient(hhc) request := &model.UpdateRecordSetRequest{} request.ZoneId = hc.ZoneId request.RecordsetId = recordSetId - var listRecordsbody = []string{ + var listRecordsBody = []string{ ipAddr, } request.Body = &model.UpdateRecordSetReq{ - Records: &listRecordsbody, + Records: &listRecordsBody, Type: recordType, Name: domain, }