Class: Oscar::Skeleton

Inherits:
Object
  • Object
show all
Defined in:
lib/oscar/skeleton.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(env, provider = nil) ⇒ Skeleton

Returns a new instance of Skeleton.

Parameters:

  • env (Vagrant::Environment)
  • provider (Symbol) (defaults to: nil)


16
17
18
19
20
21
22
# File 'lib/oscar/skeleton.rb', line 16

def initialize(env, provider = nil)
  @env      = env
  @provider = (provider || @env.default_provider)
  @dest_dir = Pathname.new(Dir.getwd)

  @template_root = File.join(Oscar.template_root, 'oscar-init-skeleton')
end

Instance Attribute Details

#providerObject (readonly)

Returns the value of attribute provider.



8
9
10
# File 'lib/oscar/skeleton.rb', line 8

def provider
  @provider
end

Instance Method Details

#dest_dirObject



12
13
14
# File 'lib/oscar/skeleton.rb', line 12

def dest_dir
  @dest_dir
end

#generateObject



24
25
26
27
28
29
30
# File 'lib/oscar/skeleton.rb', line 24

def generate
  vagrantfile = File.join(@template_root, 'Vagrantfile')
  config_dir  = File.join(@template_root, @provider.to_s, '.')

  FileUtils.cp   vagrantfile, @dest_dir
  FileUtils.cp_r config_dir,  File.join(@dest_dir, 'config')
end