1
0
mirror of https://github.com/OpenNebula/one.git synced 2025-03-22 18:50:08 +03:00

F #5051: option to avoid deleting disk not managed (#753)

Co-authored-by: Tino Vázquez <cvazquez@opennebula.io>
This commit is contained in:
Carlos J. Herrera 2021-02-04 04:35:25 -05:00 committed by GitHub
parent 3456cbf3a5
commit d07bceef03
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 2 deletions

View File

@ -2603,14 +2603,23 @@ module VCenterDriver
def destroy_disk(disk)
one_vm = one_item
# Check if we can detach and delete the non persistent disk:
# - VM is terminated
# - The disk is managed by OpenNebula
detachable= !(one_vm['LCM_STATE'].to_i == 11 && !disk.managed?)
detachable &&= disk.exists?
return unless detachable
detach_disk(disk)
disk.destroy
# Check if we want to keep the non persistent disk
keep_non_persistent_disks =
VCenterDriver::CONFIG[:keep_non_persistent_disks]
return if keep_non_persistent_disks == true
disk.destroy
@disks.delete(disk.id.to_s)
end

View File

@ -39,3 +39,7 @@
# Default template when import from MarketPlace
:default_template: -1
# Set to true if you need OpenNebula to detach non persistent disks
# from VMs on VM terminate but avoid deleting them afterwards
:keep_non_persistent_disks: false