class Baha::PreBuild::Module

Attributes

args[R]
config[R]
image[R]

Public Class Methods

execute(task) click to toggle source
# File lib/baha/pre_build.rb, line 21
def execute(task)
  @@modules.each do |mod|
  if task.has_key?(mod.to_s)
      LOG.info { "Executing module #{mod}" }
      method = "module_#{mod}".intern
      self.send(method, Module.new(task))
      return
    end
  end
  raise ModuleNotFoundError.new(task)
end
new(task) click to toggle source
# File lib/baha/pre_build.rb, line 36
def initialize(task)
  @config = task.delete(:config)
  @image = task.delete(:image)
  @args = task
end
register(name, options = {}, &block) click to toggle source
# File lib/baha/pre_build.rb, line 14
def register(name, options = {}, &block)
  LOG.debug { "register module #{name} (#{options.inspect})" }
  @@modules << name
  name = name.intern
  send(:define_singleton_method,"module_#{name}",&block)
end