@@ -1086,7 +1086,7 @@ func resourceTencentCloudInstanceRead(d *schema.ResourceData, meta interface{})
1086
1086
tmpDataDisks = v .([]interface {})
1087
1087
}
1088
1088
1089
- for index , disk := range instance .DataDisks {
1089
+ for _ , disk := range instance .DataDisks {
1090
1090
dataDisk := make (map [string ]interface {}, 5 )
1091
1091
dataDisk ["data_disk_id" ] = disk .DiskId
1092
1092
if disk .DiskId == nil {
@@ -1095,15 +1095,6 @@ func resourceTencentCloudInstanceRead(d *schema.ResourceData, meta interface{})
1095
1095
dataDisk ["data_disk_size" ] = size
1096
1096
}
1097
1097
1098
- dataDisk ["delete_with_instance_prepaid" ] = false
1099
- if len (tmpDataDisks ) == len (instance .DataDisks ) {
1100
- tmpDataDisk := tmpDataDisks [index ].(map [string ]interface {})
1101
- if deleteWithInstancePrepaid , ok := tmpDataDisk ["delete_with_instance_prepaid" ]; ok {
1102
- deleteWithInstancePrepaidBool := deleteWithInstancePrepaid .(bool )
1103
- dataDisk ["delete_with_instance_prepaid" ] = deleteWithInstancePrepaidBool
1104
- }
1105
- }
1106
-
1107
1098
dataDisk ["data_disk_type" ] = disk .DiskType
1108
1099
dataDisk ["data_disk_snapshot_id" ] = disk .SnapshotId
1109
1100
dataDisk ["delete_with_instance" ] = disk .DeleteWithInstance
@@ -1120,7 +1111,16 @@ func resourceTencentCloudInstanceRead(d *schema.ResourceData, meta interface{})
1120
1111
})
1121
1112
}
1122
1113
1123
- // get data disk name
1114
+ // set data disk delete_with_instance_prepaid
1115
+ for i := range dataDiskList {
1116
+ dataDiskList [i ]["delete_with_instance_prepaid" ] = false
1117
+ tmpDataDisk := tmpDataDisks [i ].(map [string ]interface {})
1118
+ if deleteWithInstancePrepaidBool , ok := tmpDataDisk ["delete_with_instance_prepaid" ].(bool ); ok {
1119
+ dataDiskList [i ]["delete_with_instance_prepaid" ] = deleteWithInstancePrepaidBool
1120
+ }
1121
+ }
1122
+
1123
+ // set data disk name
1124
1124
finalDiskIds := make ([]* string , 0 , len (dataDiskList ))
1125
1125
for _ , item := range dataDiskList {
1126
1126
diskId := item ["data_disk_id" ].(* string )
@@ -1329,6 +1329,18 @@ func resourceTencentCloudInstanceRead(d *schema.ResourceData, meta interface{})
1329
1329
dataDiskList = append (dataDiskList , tmpDataDisk )
1330
1330
}
1331
1331
1332
+ // set data disk delete_with_instance_prepaid
1333
+ if v , ok := d .GetOk ("data_disks" ); ok {
1334
+ tmpDataDisks := v .([]interface {})
1335
+ for i := range tmpDataDisks {
1336
+ dataDiskList [i ]["delete_with_instance_prepaid" ] = false
1337
+ tmpDataDisk := tmpDataDisks [i ].(map [string ]interface {})
1338
+ if deleteWithInstancePrepaidBool , ok := tmpDataDisk ["delete_with_instance_prepaid" ].(bool ); ok {
1339
+ dataDiskList [i ]["delete_with_instance_prepaid" ] = deleteWithInstancePrepaidBool
1340
+ }
1341
+ }
1342
+ }
1343
+
1332
1344
_ = d .Set ("data_disks" , dataDiskList )
1333
1345
} else {
1334
1346
_ = d .Set ("data_disks" , dataDiskList )
0 commit comments