Skip to content

Commit e4a5012

Browse files
authored
Merge pull request kubernetes#88360 from andyzhangx/delete-disk
fix: check disk status before delete azure disk
2 parents 20e3288 + 44e6a50 commit e4a5012

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

staging/src/k8s.io/legacy-cloud-providers/azure/azure_managedDiskController.go

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,16 @@ func (c *ManagedDiskController) DeleteManagedDisk(diskURI string) error {
214214
return fmt.Errorf("failed to delete disk(%s) since it's in attaching or detaching state", diskURI)
215215
}
216216

217-
rerr := c.common.cloud.DisksClient.Delete(ctx, resourceGroup, diskName)
217+
disk, rerr := c.common.cloud.DisksClient.Get(ctx, resourceGroup, diskName)
218+
if rerr != nil {
219+
return rerr.Error()
220+
}
221+
222+
if disk.ManagedBy != nil {
223+
return fmt.Errorf("disk(%s) already attached to node(%s), could not be deleted", diskURI, *disk.ManagedBy)
224+
}
225+
226+
rerr = c.common.cloud.DisksClient.Delete(ctx, resourceGroup, diskName)
218227
if rerr != nil {
219228
return rerr.Error()
220229
}

0 commit comments

Comments
 (0)