class Oscar::Command::Init

Public Class Methods

new(argv, env) click to toggle source
# File lib/oscar/command/init.rb, line 7
def initialize(argv, env)
  @argv     = argv
  @env      = env
  @cmd_name = 'oscar init'

  @provider = nil

  split_argv
end

Public Instance Methods

execute() click to toggle source
# File lib/oscar/command/init.rb, line 17
def execute
  argv = parse_options(parser)

  skeleton = Oscar::Skeleton.new(@env, @provider)
  skeleton.generate

  @env.ui.info I18n.t('oscar.command.init.default')
end

Private Instance Methods

parser() click to toggle source
# File lib/oscar/command/init.rb, line 28
def parser
  OptionParser.new do |o|
    o.banner = "Usage: vagrant #{@cmd_name} [<args>]"
    o.separator ''

    o.on('-p', '--provider=val', String, 'The Vagrant provider type to template') do |val|
      @provider = val
    end

    o.on('-h', '--help', 'Display this help message') do
      puts o
      exit 0
    end
  end
end