Skip to content

Commit 942a291

Browse files
tongyimingmikatong
andauthored
fix lighthouse disk isolate status (#2414)
* fix lighthouse disk isolate status * add changelog --------- Co-authored-by: mikatong <mikatong@tencent.com>
1 parent 5ca0292 commit 942a291

File tree

4 files changed

+28
-2
lines changed

4 files changed

+28
-2
lines changed

.changelog/2414.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:bug
2+
resource/tencentcloud_lighthouse_disk: update the completion condition of disk isolation
3+
```

tencentcloud/resource_tc_lighthouse_disk.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,7 @@ func resourceTencentCloudLighthouseDiskDelete(d *schema.ResourceData, meta inter
342342
return err
343343
}
344344

345-
conf := BuildStateChangeConf([]string{}, []string{"SUCCESS"}, 20*readRetryTimeout, time.Second, service.LighthouseDiskLatestOperationRefreshFunc(d.Id(), []string{}))
345+
conf := BuildStateChangeConf([]string{}, []string{"SUCCESS"}, 20*readRetryTimeout, time.Second, service.LighthouseDiskIsolateRefreshFunc(d.Id(), []string{}))
346346

347347
if _, e := conf.WaitForState(); e != nil {
348348
return e

tencentcloud/resource_tc_lighthouse_disk_test.go

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,13 @@ func TestAccTencentCloudLighthouseDiskResource_basic(t *testing.T) {
1414
Steps: []resource.TestStep{
1515
{
1616
Config: testAccLighthouseDisk,
17-
Check: resource.ComposeTestCheckFunc(resource.TestCheckResourceAttrSet("tencentcloud_lighthouse_disk.disk", "id")),
17+
Check: resource.ComposeTestCheckFunc(
18+
resource.TestCheckResourceAttrSet("tencentcloud_lighthouse_disk.disk", "id"),
19+
resource.TestCheckResourceAttr("tencentcloud_lighthouse_disk.disk", "disk_name", "test"),
20+
resource.TestCheckResourceAttr("tencentcloud_lighthouse_disk.disk", "disk_size", "20"),
21+
resource.TestCheckResourceAttr("tencentcloud_lighthouse_disk.disk", "disk_type", "CLOUD_SSD"),
22+
resource.TestCheckResourceAttr("tencentcloud_lighthouse_disk.disk", "zone", "ap-guangzhou-3"),
23+
),
1824
},
1925
},
2026
})

tencentcloud/service_tencentcloud_lighthouse.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -428,6 +428,23 @@ func (me *LightHouseService) LighthouseDiskLatestOperationRefreshFunc(diskId str
428428
}
429429
}
430430

431+
func (me *LightHouseService) LighthouseDiskIsolateRefreshFunc(diskId string, failStates []string) resource.StateRefreshFunc {
432+
return func() (interface{}, string, error) {
433+
ctx := contextNil
434+
435+
object, err := me.DescribeLighthouseDiskById(ctx, diskId)
436+
437+
if err != nil {
438+
return nil, "", err
439+
}
440+
441+
if helper.PString(object.LatestOperationState) != "OPERATING" && helper.PString(object.DiskState) == "SHUTDOWN" {
442+
return object, "SUCCESS", nil
443+
}
444+
return object, "FAILED", nil
445+
}
446+
}
447+
431448
func (me *LightHouseService) LighthouseDiskTerminateRefreshFunc(diskId string, failStates []string) resource.StateRefreshFunc {
432449
return func() (interface{}, string, error) {
433450
ctx := contextNil

0 commit comments

Comments
 (0)