Skip to content

Commit 33b5445

Browse files
authored
fix(tke): [124389107] tencentcloud_kubernetes_addon add operation wait (#3389)
* add * add * add
1 parent 22626e2 commit 33b5445

File tree

4 files changed

+129
-6
lines changed

4 files changed

+129
-6
lines changed

.changelog/3389.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:enhancement
2+
resource/tencentcloud_kubernetes_addon: add operation wait
3+
```

tencentcloud/services/tke/resource_tc_kubernetes_addon.go

Lines changed: 104 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

tencentcloud/services/tke/service_tencentcloud_tke.go

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -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

website/docs/r/kubernetes_addon.html.markdown

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ The following arguments are supported:
4343

4444
* `addon_name` - (Required, String, ForceNew) Name of addon.
4545
* `cluster_id` - (Required, String, ForceNew) ID of cluster.
46-
* `addon_version` - (Optional, String) Version of addon.
46+
* `addon_version` - (Optional, String) Version of addon. If no set, the latest version will be installed by default.
4747
* `raw_values` - (Optional, String) Params of addon, base64 encoded json format.
4848

4949
## Attributes Reference

0 commit comments

Comments
 (0)