From 4557dd84f55aafa6b76472261b8152fd2d714a27 Mon Sep 17 00:00:00 2001 From: gujing <925973396@qq.com> Date: Thu, 17 Mar 2022 11:06:06 +0800 Subject: [PATCH] load response seperately for DescribeLoadBalancers,DescribeLoadBalancerAttribute --- pkg/provider/alibaba/slb/loadbalancer.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/pkg/provider/alibaba/slb/loadbalancer.go b/pkg/provider/alibaba/slb/loadbalancer.go index 7867590a0..b292b9d21 100644 --- a/pkg/provider/alibaba/slb/loadbalancer.go +++ b/pkg/provider/alibaba/slb/loadbalancer.go @@ -348,9 +348,20 @@ func loadResponse(resp interface{}, lb *model.LoadBalancer) { lb.LoadBalancerAttribute.MasterZoneId = v.FieldByName("MasterZoneId").String() lb.LoadBalancerAttribute.SlaveZoneId = v.FieldByName("SlaveZoneId").String() lb.LoadBalancerAttribute.DeleteProtection = model.FlagType(v.FieldByName("DeleteProtection").String()) - lb.LoadBalancerAttribute.InternetChargeType = model.InternetChargeType(v.FieldByName("InternetChargeType").String()) lb.LoadBalancerAttribute.LoadBalancerSpec = model.LoadBalancerSpecType(v.FieldByName("LoadBalancerSpec").String()) lb.LoadBalancerAttribute.ModificationProtectionStatus = model.ModificationProtectionType( v.FieldByName("ModificationProtectionStatus").String()) lb.LoadBalancerAttribute.ResourceGroupId = v.FieldByName("ResourceGroupId").String() + + switch t := resp.(type) { + // DescribeLoadBalancers + case slb.LoadBalancer: + lb.LoadBalancerAttribute.InternetChargeType = model.InternetChargeType(v.FieldByName("InternetChargeTypeAlias").String()) + // DescribeLoadBalancerAttribute + case slb.DescribeLoadBalancerAttributeResponse: + lb.LoadBalancerAttribute.InternetChargeType = model.InternetChargeType(v.FieldByName("InternetChargeType").String()) + default: + klog.Errorf("not support type: %T", t) + } + }