From 6a566251fc1bf5fa9dc159db2e448f83fd167a8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tino=20V=C3=A1zquez?= Date: Mon, 5 Jul 2010 18:55:15 +0200 Subject: [PATCH] fix for bug #251 Users now are not deleted if still owning VMs and/or Vnets --- src/cli/onehost | 8 +------- src/cli/oneuser | 24 ++++++++++++++++++------ 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/src/cli/onehost b/src/cli/onehost index fcaafaad3f..cb784c9f07 100755 --- a/src/cli/onehost +++ b/src/cli/onehost @@ -298,13 +298,7 @@ when "delete" end if host['host_share/running_vms'].to_i != 0 - puts "Host still has associated VMs. It will be disabled instead." - result=host.disable - if is_successful?(result) - puts "Host disabled" if ops[:verbose] - else - break - end + puts "Host still has associated VMs, aborting delete." else result=host.delete if is_successful?(result) diff --git a/src/cli/oneuser b/src/cli/oneuser index 8bbeff18ce..5e07c9d46a 100755 --- a/src/cli/oneuser +++ b/src/cli/oneuser @@ -174,16 +174,28 @@ when "delete" # Check if the user has defined VM's vms=false vmpool=OpenNebula::VirtualMachinePool.new( - get_one_client, user_id) + get_one_client, user_id.to_i) vmpool.info vmpool.each{ vms=true ; break } if vms - puts "The user #{param} still has VM's defined, "+ - "type YES if you are sure you" - print "want to delete this user: " - answer=STDIN.gets.strip - exit -1 if answer != 'YES' + puts "The user #{param} still has VMs defined, "+ + "aborting user delete." + exit -1 + end + + # Check if the user has defined VN's + vns=false + vnpool=OpenNebula::VirtualNetworkPool.new( + get_one_client, user_id.to_i) + + vnpool.info + vnpool.each{ vns=true ; break } + + if vns + puts "The user #{param} still has Virtual Networks defined, "+ + "aborting user delete." + exit -1 end user=OpenNebula::User.new(