class Dapp::Dimg::Config::Directive::Chef

Attributes

_attributes[RW]
_cookbook[RW]
_dimod[RW]
_recipe[RW]

Public Class Methods

new(**kwargs, &blk) click to toggle source
Calls superclass method Dapp::Config::Directive::Base::new
# File lib/dapp/dimg/config/directive/chef.rb, line 8
def initialize(**kwargs, &blk)
  @_dimod = []
  @_recipe = []
  @_cookbook = {}

  super(**kwargs, &blk)
end

Public Instance Methods

attributes() click to toggle source
# File lib/dapp/dimg/config/directive/chef.rb, line 27
def attributes
  @_attributes ||= Attributes.new
end
cookbook(name, version_constraint = nil, **kwargs) click to toggle source
# File lib/dapp/dimg/config/directive/chef.rb, line 31
def cookbook(name, version_constraint = nil, **kwargs)
  sub_directive_eval do
    @_cookbook[name] = {}.tap do |desc|
      desc.update(kwargs)
      desc[:name] = name
      desc[:version_constraint] = version_constraint if version_constraint
      desc[:path] = File.expand_path(desc[:path], dapp.path) if desc.key? :path
    end
  end
end
dimod(name, *args) click to toggle source
# File lib/dapp/dimg/config/directive/chef.rb, line 16
def dimod(name, *args)
  sub_directive_eval do
    @_dimod << name
    cookbook(name, *args)
  end
end
empty?() click to toggle source
# File lib/dapp/dimg/config/directive/chef.rb, line 63
def empty?
  (@_dimod + @_recipe).empty? && attributes.empty?
end
recipe(name) click to toggle source
# File lib/dapp/dimg/config/directive/chef.rb, line 23
def recipe(name)
  sub_directive_eval { @_recipe << name }
end