class VagrantPlugins::OpenNebulaProvider::Provider

Public Class Methods

new(machine) click to toggle source
# File lib/opennebula-provider/provider.rb, line 6
def initialize(machine)
  @logger = Log4r::Logger.new('vagrant::provider::opennebula')
  @machine = machine
end

Public Instance Methods

action(name) click to toggle source
# File lib/opennebula-provider/provider.rb, line 11
def action(name)
  return Action.send(name) if Action.respond_to?(name)
  nil
end
driver() click to toggle source
# File lib/opennebula-provider/provider.rb, line 16
def driver
  return @driver if @driver
  @driver = Driver.new
  @driver.config = @machine.config
  @driver.provider_config = @machine.provider_config
  @driver.connect

  @driver
end
ssh_info() click to toggle source
# File lib/opennebula-provider/provider.rb, line 26
def ssh_info
  env = @machine.action('read_ssh_info')
  env[:machine_ssh_info]
end
state() click to toggle source
# File lib/opennebula-provider/provider.rb, line 31
def state
  state = driver.state(@machine.id)

  short = I18n.t("opennebula_provider.states.short_#{state}")
  long = I18n.t("opennebula_provider.states.long_#{state}")

  Vagrant::MachineState.new(state, short, long)
end