Skip to content

Commit 57cf580

Browse files
authored
Feat/support ccn query (#2507)
* feat: query limit * feat: query limit * feat: query limit * feat: test
1 parent b5b4f29 commit 57cf580

File tree

4 files changed

+40
-4
lines changed

4 files changed

+40
-4
lines changed

.changelog/2507.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
```release-note:enhancement
2+
resource/tencentcloud_ccn_attachment: support tke cluster addon modify
3+
```
4+

tencentcloud/services/ccn/data_source_tc_ccn_instances_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ resource tencentcloud_ccn main {
5656
name = "ci-temp-test-ccn"
5757
description = "ci-temp-test-ccn-des"
5858
qos = "AG"
59+
charge_type = "PREPAID"
60+
bandwidth_limit_type = "INTER_REGION_LIMIT"
5961
}
6062
6163
data tencentcloud_ccn_instances id_instances {

tencentcloud/services/ccn/resource_tc_ccn_attachment_test.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,8 @@ resource tencentcloud_ccn main {
124124
name = "ci-temp-test-ccn"
125125
description = "ci-temp-test-ccn-des"
126126
qos = "AG"
127+
charge_type = "PREPAID"
128+
bandwidth_limit_type = "INTER_REGION_LIMIT"
127129
}
128130
129131
resource tencentcloud_ccn_attachment attachment {
@@ -155,6 +157,8 @@ resource tencentcloud_ccn vpngw_ccn_main {
155157
name = "ci-temp-test-vpngw-ccn"
156158
description = "ci-temp-test-vpngw-ccn-des"
157159
qos = "AG"
160+
charge_type = "PREPAID"
161+
bandwidth_limit_type = "INTER_REGION_LIMIT"
158162
}
159163
160164
resource tencentcloud_ccn_attachment vpngw_ccn_attachment {

tencentcloud/services/ccn/service_tencentcloud_ccn.go

Lines changed: 30 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -390,11 +390,37 @@ func (me *VpcService) DescribeCcnAttachedInstance(ctx context.Context, ccnId,
390390
func (me *VpcService) DescribeCcnAttachedInstances(ctx context.Context, ccnId string) (infos []CcnAttachedInstanceInfo, errRet error) {
391391

392392
logId := tccommon.GetLogId(ctx)
393-
request := vpc.NewDescribeCcnAttachedInstancesRequest()
393+
var (
394+
request = vpc.NewDescribeCcnAttachedInstancesRequest()
395+
response = vpc.NewDescribeCcnAttachedInstancesResponse()
396+
result []*vpc.CcnAttachedInstance
397+
err error
398+
limit uint64 = 20
399+
offset uint64 = 0
400+
)
401+
394402
request.CcnId = &ccnId
403+
395404
ratelimit.Check(request.GetAction())
396-
response, err := me.client.UseVpcClient().DescribeCcnAttachedInstances(request)
397405

406+
for {
407+
request.Limit = &limit
408+
request.Offset = &offset
409+
response, err = me.client.UseVpcClient().DescribeCcnAttachedInstances(request)
410+
if err != nil {
411+
errRet = err
412+
return
413+
}
414+
415+
if response == nil || len(response.Response.InstanceSet) < 1 {
416+
break
417+
}
418+
result = append(result, response.Response.InstanceSet...)
419+
if len(response.Response.InstanceSet) < int(limit) {
420+
break
421+
}
422+
offset += limit
423+
}
398424
defer func() {
399425
if errRet != nil {
400426
responseStr := ""
@@ -420,9 +446,9 @@ func (me *VpcService) DescribeCcnAttachedInstances(ctx context.Context, ccnId st
420446
request.ToJsonString(),
421447
response.ToJsonString())
422448

423-
infos = make([]CcnAttachedInstanceInfo, 0, len(response.Response.InstanceSet))
449+
infos = make([]CcnAttachedInstanceInfo, 0, len(result))
424450

425-
for _, item := range response.Response.InstanceSet {
451+
for _, item := range result {
426452

427453
var info CcnAttachedInstanceInfo
428454

0 commit comments

Comments
 (0)