[chef] Re: Are all attribute files included even when their corresponding recipes are not?


Chronological Thread 
  • From: Joshua Timberman < >
  • To:
  • Subject: [chef] Re: Are all attribute files included even when their corresponding recipes are not?
  • Date: Wed, 27 Apr 2011 09:07:36 -0600

Hello!
On Monday, April 25, 2011 at 11:48 PM, Jay Buffington wrote:
> Is it true that all attribute files are included when only some of the
> recipes are used? When a recipe has a name like server.rb is there
> any special treatment for an attribute file of the same name? How can
> I tell chef to ignore this attribute file unless the server recipe is
> being executed?
Correct - all attributes from all cookbooks on the node are loaded when 
chef-client runs, regardless of a particular recipe that uses them is 
included in the run list or via an include_recipe. 
> One solution may be to move the line that generates the password out
> of the attributes and into the mysql::server recipe. Is this
> reasonable?
That is precisely where they should be set :). Hence this ticket:

http://tickets.opscode.com/browse/COOK-526

To further explain the reason why they should be in the recipe isn't just 
because they're only used by that recipe, but also because they are 
calculated. The attributes files are really meant to be as declarative as 
possible to set sane defaults for the cookbook so using the attributes can be 
done without causing some nil error on attributes that don't exist.


-- 
Opscode, Inc.
Joshua Timberman, Director of Training and Services
IRC, Skype, Twitter, Github: jtimberman





Archive powered by MHonArc 2.6.16.

§