Automatic merge from release/2.2.0 -> release/2.3.0

* commit '5fb53912d86d4159ccc963899dd3b6eee54127d7':
  Azure挂载卸载磁盘更改lun有可能会失败
This commit is contained in:
邱剑
2018-11-13 12:00:40 +08:00
+13 -10
View File
@@ -492,15 +492,21 @@ func (region *SRegion) AttachDisk(instanceId, diskId string) error {
if err != nil {
return err
}
dataDisks := []DataDisk{}
lun := int32(0)
for i := 0; i < len(instance.Properties.StorageProfile.DataDisks); i++ {
instance.Properties.StorageProfile.DataDisks[i].Lun = lun
dataDisks = append(dataDisks, instance.Properties.StorageProfile.DataDisks[i])
lun++
dataDisks := instance.Properties.StorageProfile.DataDisks
lun, find := -1, false
for i := 0; i < len(dataDisks); i++ {
if dataDisks[i].Lun != int32(i) {
lun, find = i, true
break
}
}
if !find || lun == -1 {
lun = len(dataDisks)
}
dataDisks = append(dataDisks, DataDisk{
Lun: lun,
Lun: int32(lun),
CreateOption: "Attach",
ManagedDisk: &ManagedDiskParameters{
ID: disk.ID,
@@ -529,12 +535,9 @@ func (region *SRegion) DetachDisk(instanceId, diskId string) error {
return err
}
dataDisks := []DataDisk{}
index := int32(0)
for _, origDisk := range instance.Properties.StorageProfile.DataDisks {
if origDisk.ManagedDisk.ID != disk.ID {
origDisk.Lun = index
dataDisks = append(dataDisks, origDisk)
index++
}
}
instance.Properties.StorageProfile.DataDisks = dataDisks