Class: VagrantPlugins::ProviderIijGp::Action::StopVirtualMachine
- Inherits:
-
Object
- Object
- VagrantPlugins::ProviderIijGp::Action::StopVirtualMachine
- Defined in:
- lib/vagrant-iijgp/action/stop_virtual_machine.rb
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app, env) ⇒ StopVirtualMachine
constructor
A new instance of StopVirtualMachine.
Constructor Details
#initialize(app, env) ⇒ StopVirtualMachine
Returns a new instance of StopVirtualMachine.
5 6 7 8 |
# File 'lib/vagrant-iijgp/action/stop_virtual_machine.rb', line 5 def initialize(app, env) @app = app @logger = Log4r::Logger.new("vagrant_iijgp::action::stop_virtual_machine") end |
Instance Method Details
#call(env) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/vagrant-iijgp/action/stop_virtual_machine.rb', line 10 def call(env) @env = env force = env[:force_halt] if env.has_key?(:force_halt) env[:ui].info I18n.t("vagrant.actions.vm.halt.#{force ? "force" : "graceful"}") config = env[:machine].provider_config gp = config.gp_service_code gc = env[:machine].id vm = env[:iijapi].gp(gp).gc(gc) vm.stop(force) env[:ui].info I18n.t("vagrant_iijgp.wait_for_stop") vm.wait_for_stop { env[:ui].info "-- current_status: #{vm.status}" } @app.call(env) end |