Request #2670
confirmation question for onevm delete command
Status: | Closed | Start date: | 01/22/2014 | |
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | - | % Done: | 0% | |
Category: | - | |||
Target version: | - | |||
Pull request: |
Description
We, FermiCloud have been using onevm delete in a different way
by asking for user's confirmation
since one user accidentally deleted a VM that was not meant to be deleted.
I thought this could be useful to others too.
lib/ruby/cli/command_parser.rb def run comm_name="" if @script comm=@script elsif if @args[0] && !@args[0].match(/^-/) comm_name=@args.shift.to_sym comm=@commands[comm_name] #HK-new-begin> # puts "debug> description = #{comm[:desc]}" # the following 2 lines checks if this command is onevm or not hkarraystring = comm[:desc].split(/\n/)[0].split hklastword = hkarraystring[hkarraystring.length-1] # puts "debug> number of words = #{hklastword}" # puts "debug> INPUT: #{STDIN.tty? ? "regular" : "pipe"}" # Below, we ask the users if they really want to delete a VM # only when the command is onevm, sub command is delta and when it is interactive use; if comm_name == :delete and STDIN.tty? and hklastword.eql?("User") puts "Are you really sure you want to delete this VM? Type a Capital Y" hkanswer = $stdin.gets if hkanswer.delete("\n") == "Y" puts "You seem sure, we proceed" else puts "You did not type in Y, we abort. Think again" exit -1 end end #HK-new-end>
Related issues
History
#1 Updated by Ruben S. Montero over 7 years ago
- Related to Backlog #2412: Ability to lock VM from accidental actions added
#2 Updated by Ruben S. Montero over 7 years ago
- Status changed from Pending to Closed
We have a similar issue open. I am closing this to move all the discussions to the same issue. But definitely, this seems to be a high priority request.
#3 Updated by Hyunwoo Kim over 7 years ago
Hi Ruben,
Please note that the code snippet in command_parser.rb was the only code that I had to hack
in order to achieve this confirmation feature.
Thanks,
HyunWoo