Sha256: bff948c8bbfd464326dbe2d487a8517c91aa9b3602184d7cf1fad13f39c24e20
Contents?: true
Size: 1.27 KB
Versions: 6
Compression:
Stored size: 1.27 KB
Contents
module VagrantPlugins module CommandDestroy class Command < Vagrant.plugin("2", :command) def self.synopsis "stops and deletes all traces of the vagrant machine" end def execute options = {} options[:force] = false opts = OptionParser.new do |o| o.banner = "Usage: vagrant destroy [options] [name]" o.separator "" o.separator "Options:" o.separator "" o.on("-f", "--force", "Destroy without confirmation.") do |f| options[:force] = f end end # Parse the options argv = parse_options(opts) return if !argv @logger.debug("'Destroy' each target VM...") declined = 0 total = 0 with_target_vms(argv, reverse: true) do |vm| action_env = vm.action( :destroy, force_confirm_destroy: options[:force]) total += 1 declined += 1 if action_env.key?(:force_confirm_destroy_result) && action_env[:force_confirm_destroy_result] == false end # Nothing was declined return 0 if declined == 0 # Everything was declined return 1 if declined == total # Some was declined return 2 end end end end
Version data entries
6 entries across 3 versions & 2 rubygems