Method: Ridley::RoleObject#set_default_attribute

Defined in:
lib/ridley/chef_objects/role_object.rb

#set_default_attribute(key, value) ⇒ Hashie::Mash

Set a role level default attribute given the dotted path representation of the Chef attribute and value

Examples:

setting and saving a node level default attribute


obj = node.role("why_god_why")
obj.set_default_attribute("my_app.billing.enabled", false)
obj.save

Parameters:

  • key (String)
  • value (Object)

Returns:

  • (Hashie::Mash)


56
57
58
59
# File 'lib/ridley/chef_objects/role_object.rb', line 56

def set_default_attribute(key, value)
  attr_hash = Hashie::Mash.from_dotted_path(key, value)
  self.default_attributes = self.default_attributes.deep_merge(attr_hash)
end