Class: SystemBuilder::Task

Inherits:
Rake::TaskLib
  • Object
show all
Defined in:
lib/system_builder/task.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, &block) ⇒ Task

Returns a new instance of Task.



7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/system_builder/task.rb', line 7

def initialize(name, &block)
  @name = name

  @image =
    if block_given?
      block.call
    else
      SystemBuilder.config(name)
    end

  define
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



5
6
7
# File 'lib/system_builder/task.rb', line 5

def name
  @name
end

Instance Method Details

#defineObject



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/system_builder/task.rb', line 20

def define
  namespace name do
    desc "Create image #{name} in #{@image.file}"
    task :dist do
      @image.create
    end
    namespace :dist do
      desc "Create vmwaire image in #{@image.file}.vdmk"
      task :vmware do
        @image.convert "#{@image.file}.vmdk", :format => "vmdk"
      end
    end
    task "dist:vmware" => "dist"
  end
end