(#17) Add a force option for delete --all

This commit is contained in:
Brian Cain 2015-11-21 12:26:09 -08:00
parent af11d88c07
commit 8a3ad76b81

View file

@ -159,6 +159,7 @@ class Vmfloaty
c.example 'Schedules the deletion of a host or hosts', 'floaty delete myhost1,myhost2 --url http://vmpooler.example.com' c.example 'Schedules the deletion of a host or hosts', 'floaty delete myhost1,myhost2 --url http://vmpooler.example.com'
c.option '--verbose', 'Enables verbose output' c.option '--verbose', 'Enables verbose output'
c.option '--all', 'Deletes all vms acquired by a token' c.option '--all', 'Deletes all vms acquired by a token'
c.option '--f', 'Does not prompt user when deleting all vms'
c.option '--token STRING', String, 'Token for vmpooler' c.option '--token STRING', String, 'Token for vmpooler'
c.option '--url STRING', String, 'URL of vmpooler' c.option '--url STRING', String, 'URL of vmpooler'
c.action do |args, options| c.action do |args, options|
@ -167,6 +168,7 @@ class Vmfloaty
token = options.token || config['token'] token = options.token || config['token']
url = options.url ||= config['url'] url = options.url ||= config['url']
delete_all = options.all delete_all = options.all
force = options.f
if delete_all if delete_all
# get vms with token # get vms with token
@ -183,8 +185,14 @@ class Vmfloaty
if ! running_vms.nil? if ! running_vms.nil?
Utils.prettyprint_hosts(running_vms, verbose, url) Utils.prettyprint_hosts(running_vms, verbose, url)
# query y/n # query y/n
puts "" puts
if force
ans = true
else
ans = agree("Delete all VMs associated with token #{token}? [y/N]") ans = agree("Delete all VMs associated with token #{token}? [y/N]")
end
if ans if ans
# delete vms # delete vms
Pooler.delete(verbose, url, running_vms, token) Pooler.delete(verbose, url, running_vms, token)