Method: VagrantPlugins::Openstack::Command::AbstractCommand#execute

Defined in:
lib/vagrant-openstack-provider/command/abstract_command.rb

#execute(name) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/vagrant-openstack-provider/command/abstract_command.rb', line 12

def execute(name)
  env = {}
  with_target_vms(nil, provider: :openstack) do |machine|
    env[:machine] = machine
    env[:ui] = @env.ui
  end

  before_cmd(name, @argv, env)

  cmd(name, @argv, env)
  @env.ui.info('')
# rubocop:disable Lint/RescueException
rescue Errors::VagrantOpenstackError, SystemExit, Interrupt => e
  raise e
rescue Exception => e
  puts I18n.t('vagrant_openstack.global_error').red unless e.message && e.message.start_with?('Catched Error:')
  raise e
end