Skip to content

Commit 6b0fde7

Browse files
committed
add new auth for tencentcloud cos backend
1 parent a9a3ce5 commit 6b0fde7

File tree

4 files changed

+77
-21
lines changed

4 files changed

+77
-21
lines changed

tencentcloud/services/tke/resource_tc_kubernetes_scale_worker.go

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

tencentcloud/services/tke/resource_tc_kubernetes_scale_worker_extension.go

Lines changed: 71 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -678,9 +678,78 @@ func resourceTencentCloudKubernetesScaleWorkerReadPostFillRequest1(ctx context.C
678678
return nil
679679
}
680680

681-
func resourceTencentCloudKubernetesScaleWorkerReadPreRequest1(ctx context.Context, req *cvm.DescribeInstancesRequest) error {
681+
func resourceTencentCloudKubernetesScaleWorkerReadPreRequest1(ctx context.Context, req *cvm.DescribeInstancesRequest) (resp *cvm.DescribeInstancesResponse, err error) {
682+
logId := tccommon.GetLogId(ctx)
683+
meta := tccommon.ProviderMetaFromContext(ctx)
682684
ctxData := tccommon.DataFromContext(ctx)
683685
instanceIds := ctxData.Get("instanceIds").([]*string)
684-
req.InstanceIds = instanceIds
686+
req.Limit = helper.Int64(0)
687+
req.Offset = helper.Int64(100)
688+
if len(instanceIds) <= 100 {
689+
req.InstanceIds = instanceIds
690+
resp, err = meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseCvmV20170312Client().DescribeInstances(req)
691+
log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, req.GetAction(), req.ToJsonString(), resp.ToJsonString())
692+
if err != nil {
693+
return nil, err
694+
}
695+
} else {
696+
var (
697+
tmpTotalCount int64
698+
tmpInstanceSet []*cvm.Instance
699+
)
700+
subSlices := spliteInstanceIds(instanceIds, 100)
701+
for _, subsubSlice := range subSlices {
702+
req.InstanceIds = subsubSlice
703+
tmpResp, err := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseCvmV20170312Client().DescribeInstances(req)
704+
log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, req.GetAction(), req.ToJsonString(), tmpResp.ToJsonString())
705+
if err != nil {
706+
return nil, err
707+
}
708+
709+
if tmpResp.Response.TotalCount != nil {
710+
tmpTotalCount += *tmpResp.Response.TotalCount
711+
}
712+
713+
if len(tmpResp.Response.InstanceSet) != 0 {
714+
tmpInstanceSet = append(tmpInstanceSet, tmpResp.Response.InstanceSet...)
715+
}
716+
}
717+
718+
resp.Response.TotalCount = &tmpTotalCount
719+
resp.Response.InstanceSet = tmpInstanceSet
720+
}
721+
722+
return resp, nil
723+
}
724+
725+
func resourceTencentCloudKubernetesScaleWorkerReadPostHandleResponse0(ctx context.Context, resp *tke.DescribeClustersResponseParams) error {
726+
logId := tccommon.GetLogId(ctx)
727+
d := tccommon.ResourceDataFromContext(ctx)
728+
meta := tccommon.ProviderMetaFromContext(ctx)
729+
service := TkeService{client: meta.(tccommon.ProviderMeta).GetAPIV3Conn()}
730+
respData1, err := service.DescribeKubernetesScaleWorkerById1(ctx)
731+
if err != nil {
732+
return err
733+
}
734+
735+
if respData1 == nil {
736+
d.SetId("")
737+
log.Printf("[WARN]%s resource `kubernetes_scale_worker` [%s] not found, please check if it has been deleted.\n", logId, d.Id())
738+
return nil
739+
}
740+
685741
return nil
686742
}
743+
744+
func spliteInstanceIds(slice []*string, size int) [][]*string {
745+
var result [][]*string
746+
for i := 0; i < len(slice); i += size {
747+
end := i + size
748+
if end > len(slice) {
749+
end = len(slice)
750+
}
751+
result = append(result, slice[i:end])
752+
}
753+
754+
return result
755+
}

tencentcloud/services/tke/service_tencentcloud_tke.go

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3438,15 +3438,11 @@ func (me *TkeService) DescribeKubernetesScaleWorkerById1(ctx context.Context) (r
34383438

34393439
ratelimit.Check(request.GetAction())
34403440

3441-
if err := resourceTencentCloudKubernetesScaleWorkerReadPreRequest1(ctx, request); err != nil {
3441+
response, err := resourceTencentCloudKubernetesScaleWorkerReadPreRequest1(ctx, request)
3442+
if err != nil {
34423443
return nil, err
34433444
}
34443445

3445-
response, err := me.client.UseCvmV20170312Client().DescribeInstances(request)
3446-
if err != nil {
3447-
errRet = err
3448-
return
3449-
}
34503446
log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, request.GetAction(), request.ToJsonString(), response.ToJsonString())
34513447

34523448
if err := resourceTencentCloudKubernetesScaleWorkerReadPostRequest1(ctx, request, response); err != nil {

website/docs/r/kubernetes_scale_worker.html.markdown

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

125125
* `cluster_id` - (Required, String, ForceNew) ID of the cluster.
126126
* `worker_config` - (Required, List, ForceNew) Deploy the machine configuration information of the 'WORK' service, and create <=20 units for common users.
127-
* `create_result_output_file` - (Optional, String, ForceNew) Used to save results of CVMs creation error messages.
127+
* `create_result_output_file` - (Optional, String) Used to save results of CVMs creation error messages.
128128
* `data_disk` - (Optional, List, ForceNew) Configurations of tke data disk.
129129
* `desired_pod_num` - (Optional, Int, ForceNew) Indicate to set desired pod number in current node. Valid when the cluster enable customized pod cidr.
130130
* `docker_graph_path` - (Optional, String, ForceNew) Docker graph path. Default is `/var/lib/docker`.

0 commit comments

Comments
 (0)