class Stove::Plugin::Base

Attributes

cookbook[R]
options[R]

Public Class Methods

actions() click to toggle source
# File lib/stove/plugins/base.rb, line 14
def actions
  @actions ||= []
end
new(cookbook, options = {}) click to toggle source
# File lib/stove/plugins/base.rb, line 25
def initialize(cookbook, options = {})
  @cookbook, @options = cookbook, options
end
run(description, &block) click to toggle source
# File lib/stove/plugins/base.rb, line 7
def run(description, &block)
  actions << Proc.new do |instance|
    Stove::Log.info { description }
    instance.instance_eval(&block)
  end
end

Public Instance Methods

run() click to toggle source
# File lib/stove/plugins/base.rb, line 29
def run
  run_validations
  run_actions
end
run_actions() click to toggle source
# File lib/stove/plugins/base.rb, line 40
def run_actions
  self.class.actions.each do |action|
    action.call(self)
  end
end
run_validations() click to toggle source
# File lib/stove/plugins/base.rb, line 34
def run_validations
  self.class.validations.each do |id, validation|
    validation.run(cookbook, options)
  end
end