Skip to content

Commit f9856d8

Browse files
authored
fix(clb): [137109981] tencentcloud_clb_target_group_instance_attachment operation increases status query (#3139)
* add * add
1 parent 934851b commit f9856d8

File tree

2 files changed

+43
-3
lines changed

2 files changed

+43
-3
lines changed

.changelog/3139.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_clb_target_group_instance_attachment: operation increases status query
3+
```

tencentcloud/services/clb/service_tencentcloud_clb.go

Lines changed: 40 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1277,17 +1277,30 @@ func (me *ClbService) RegisterTargetInstances(ctx context.Context, targetGroupId
12771277
Weight: &weight,
12781278
},
12791279
}
1280+
1281+
var requestId string
12801282
err = resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError {
1281-
_, err := me.client.UseClbClient().RegisterTargetGroupInstances(request)
1283+
result, err := me.client.UseClbClient().RegisterTargetGroupInstances(request)
12821284
if err != nil {
12831285
return tccommon.RetryError(err, tccommon.InternalError)
12841286
}
1287+
1288+
if result == nil || result.Response == nil || result.Response.RequestId == nil {
1289+
return resource.NonRetryableError(fmt.Errorf("Register target group instance failed, Response is nil."))
1290+
}
1291+
1292+
requestId = *result.Response.RequestId
12851293
return nil
12861294
})
12871295
if err != nil {
12881296
return err
12891297
}
12901298

1299+
retryErr := waitForTaskFinish(requestId, me.client.UseClbClient())
1300+
if retryErr != nil {
1301+
return retryErr
1302+
}
1303+
12911304
return nil
12921305
}
12931306

@@ -1301,17 +1314,29 @@ func (me *ClbService) DeregisterTargetInstances(ctx context.Context, targetGroup
13011314
},
13021315
}
13031316

1317+
var requestId string
13041318
err = resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError {
1305-
_, err := me.client.UseClbClient().DeregisterTargetGroupInstances(request)
1319+
result, err := me.client.UseClbClient().DeregisterTargetGroupInstances(request)
13061320
if err != nil {
13071321
return tccommon.RetryError(err, tccommon.InternalError)
13081322
}
1323+
1324+
if result == nil || result.Response == nil || result.Response.RequestId == nil {
1325+
return resource.NonRetryableError(fmt.Errorf("Deregister target group instance failed, Response is nil."))
1326+
}
1327+
1328+
requestId = *result.Response.RequestId
13091329
return nil
13101330
})
13111331
if err != nil {
13121332
return err
13131333
}
13141334

1335+
retryErr := waitForTaskFinish(requestId, me.client.UseClbClient())
1336+
if retryErr != nil {
1337+
return retryErr
1338+
}
1339+
13151340
return nil
13161341
}
13171342

@@ -1542,9 +1567,10 @@ func (me *ClbService) ModifyTargetGroupInstancesWeight(ctx context.Context, targ
15421567
request.TargetGroupId = &targetGroupId
15431568
request.TargetGroupInstances = []*clb.TargetGroupInstance{&instance}
15441569

1570+
var requestId string
15451571
err := resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError {
15461572
ratelimit.Check(request.GetAction())
1547-
_, err := me.client.UseClbClient().ModifyTargetGroupInstancesWeight(request)
1573+
result, err := me.client.UseClbClient().ModifyTargetGroupInstancesWeight(request)
15481574
if err != nil {
15491575
if e, ok := err.(*sdkErrors.TencentCloudSDKError); ok {
15501576
if e.GetCode() == "FailedOperation.ResourceInOperating" {
@@ -1555,12 +1581,23 @@ func (me *ClbService) ModifyTargetGroupInstancesWeight(ctx context.Context, targ
15551581
return tccommon.RetryError(err, tccommon.InternalError)
15561582
}
15571583

1584+
if result == nil || result.Response == nil || result.Response.RequestId == nil {
1585+
return resource.NonRetryableError(fmt.Errorf("Modify target group instance weight failed, Response is nil."))
1586+
}
1587+
1588+
requestId = *result.Response.RequestId
15581589
return nil
15591590
})
15601591

15611592
if err != nil {
15621593
return err
15631594
}
1595+
1596+
retryErr := waitForTaskFinish(requestId, me.client.UseClbClient())
1597+
if retryErr != nil {
1598+
return retryErr
1599+
}
1600+
15641601
return nil
15651602
}
15661603

0 commit comments

Comments
 (0)