@@ -2821,6 +2821,7 @@ func (me *TkeService) DescribeKubernetesAddonById(ctx context.Context, clusterId
28212821 logId := tccommon .GetLogId (ctx )
28222822
28232823 request := tke .NewDescribeAddonRequest ()
2824+ response := tke .NewDescribeAddonResponse ()
28242825 request .ClusterId = & clusterId
28252826 request .AddonName = & addonName
28262827
@@ -2830,14 +2831,31 @@ func (me *TkeService) DescribeKubernetesAddonById(ctx context.Context, clusterId
28302831 }
28312832 }()
28322833
2833- ratelimit .Check (request .GetAction ())
2834+ err := resource .Retry (tccommon .ReadRetryTimeout , func () * resource.RetryError {
2835+ ratelimit .Check (request .GetAction ())
2836+ result , e := me .client .UseTkeClient ().DescribeAddon (request )
2837+ if e != nil {
2838+ return tccommon .RetryError (e )
2839+ } else {
2840+ log .Printf ("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n " , logId , request .GetAction (), request .ToJsonString (), result .ToJsonString ())
2841+ }
2842+
2843+ if result == nil || result .Response == nil {
2844+ return resource .NonRetryableError (fmt .Errorf ("Describe kubernetes addon failed, Response is nil." ))
2845+ }
2846+
2847+ if result .Response .Addons == nil {
2848+ return resource .NonRetryableError (fmt .Errorf ("Addons is nil." ))
2849+ }
2850+
2851+ response = result
2852+ return nil
2853+ })
28342854
2835- response , err := me .client .UseTkeClient ().DescribeAddon (request )
28362855 if err != nil {
28372856 errRet = err
28382857 return
28392858 }
2840- log .Printf ("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n " , logId , request .GetAction (), request .ToJsonString (), response .ToJsonString ())
28412859
28422860 if len (response .Response .Addons ) < 1 {
28432861 return
0 commit comments