Skip to content

Commit 9a8d0af

Browse files
author
hellertang
authored
Merge pull request #650 from tencentcloudstack/feature/read_cvm_data_disks
fix read cvm data_disks bug
2 parents e88ba55 + 3af98bf commit 9a8d0af

File tree

1 file changed

+10
-48
lines changed

1 file changed

+10
-48
lines changed

tencentcloud/resource_tc_instance.go

Lines changed: 10 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -910,54 +910,16 @@ func resourceTencentCloudInstanceRead(d *schema.ResourceData, meta interface{})
910910

911911
//set data_disks
912912
dataDiskList := make([]map[string]interface{}, 0, len(instance.DataDisks))
913-
if v, ok := d.GetOk("data_disks"); ok {
914-
// record the used disk id
915-
usedDiskId := make(map[string]bool, len(instance.DataDisks))
916-
for _, d := range v.([]interface{}) {
917-
value := d.(map[string]interface{})
918-
var (
919-
snapshotId, diskId string
920-
deleteWithInstanceBool bool
921-
encryptBool bool
922-
throughputPerformance int
923-
)
924-
diskType := value["data_disk_type"].(string)
925-
diskSize := int64(value["data_disk_size"].(int))
926-
if v, ok := value["data_disk_snapshot_id"]; ok && v != nil {
927-
snapshotId = v.(string)
928-
}
929-
if deleteWithInstance, ok := value["delete_with_instance"]; ok {
930-
deleteWithInstanceBool = deleteWithInstance.(bool)
931-
}
932-
if encrypt, ok := value["encrypt"]; ok {
933-
encryptBool = encrypt.(bool)
934-
}
935-
936-
if tp, ok := value["throughput_performance"]; ok && tp != 0 {
937-
//this value is not in the resp
938-
throughputPerformance = tp.(int)
939-
}
940-
// find the disk id value
941-
for _, disk := range instance.DataDisks {
942-
if diskType == *disk.DiskType && diskSize == *disk.DiskSize &&
943-
deleteWithInstanceBool == *disk.DeleteWithInstance && !usedDiskId[*disk.DiskId] {
944-
945-
usedDiskId[*disk.DiskId] = true
946-
diskId = *disk.DiskId
947-
break
948-
}
949-
}
950-
951-
dataDisk := make(map[string]interface{}, 5)
952-
dataDisk["data_disk_snapshot_id"] = snapshotId
953-
dataDisk["data_disk_type"] = diskType
954-
dataDisk["data_disk_size"] = diskSize
955-
dataDisk["data_disk_id"] = diskId
956-
dataDisk["delete_with_instance"] = deleteWithInstanceBool
957-
dataDisk["encrypt"] = encryptBool
958-
dataDisk["throughput_performance"] = throughputPerformance
959-
dataDiskList = append(dataDiskList, dataDisk)
960-
}
913+
for _, disk := range instance.DataDisks {
914+
dataDisk := make(map[string]interface{}, 5)
915+
dataDisk["data_disk_snapshot_id"] = disk.SnapshotId
916+
dataDisk["data_disk_type"] = disk.DiskType
917+
dataDisk["data_disk_size"] = disk.DiskSize
918+
dataDisk["data_disk_id"] = disk.DiskId
919+
dataDisk["delete_with_instance"] = disk.DeleteWithInstance
920+
dataDisk["encrypt"] = disk.Encrypt
921+
dataDisk["throughput_performance"] = disk.ThroughputPerformance
922+
dataDiskList = append(dataDiskList, dataDisk)
961923
}
962924
_ = d.Set("data_disks", dataDiskList)
963925

0 commit comments

Comments
 (0)