diff --git a/server/src/main/java/com/cloud/user/AccountManagerImpl.java b/server/src/main/java/com/cloud/user/AccountManagerImpl.java index bfe6a1b0a477..126cba07bd29 100644 --- a/server/src/main/java/com/cloud/user/AccountManagerImpl.java +++ b/server/src/main/java/com/cloud/user/AccountManagerImpl.java @@ -1000,6 +1000,12 @@ protected boolean cleanupAccount(AccountVO account, long callerUserId, Account c } for (UserVmVO vm : vms) { + if (vm.isDeleteProtection()) { + logger.warn("Instance [id = {}, name = {}] has delete protection enabled and cannot be deleted.", + vm.getUuid(), vm.getName()); + continue; + } + if (vm.getState() != VirtualMachine.State.Destroyed && vm.getState() != VirtualMachine.State.Expunging) { try { _vmMgr.destroyVm(vm.getId(), false);