[chef] Re: Re: Re: Re: Re: Nested node attributes not working as expected when using overrides?


Chronological Thread 
  • From: Torben Knerr < >
  • To:
  • Subject: [chef] Re: Re: Re: Re: Re: Nested node attributes not working as expected when using overrides?
  • Date: Mon, 22 Oct 2012 09:40:41 +0200


Am 19.10.2012 17:36 schrieb "Daniel DeLeo" < "> >:
>
>
> On Friday, October 19, 2012 at 8:11 AM, Bryan Baugher wrote:
>>
>> I looked and didn't find anything. I have been using nested attributes for quite some time and haven't had any issues using them in recipes.
>>
>> On Fri, Oct 19, 2012 at 9:53 AM, Torben Knerr < "> > wrote:
>>>
>>> Waah, really? I hoped I did something wrong. Wouldn't that violate the principle of least surprise? Or is it just me who is "surprised" by that... 
>>>
>>> Btw: I'm seeing this pattern in lots of recipes, guess this would be a surprise to some of the authors as well.
>>>
>>> Is this documented anywhere in the Wiki?
>
>
> Currently, precedence within an attribute level is implemented by order of application. This means that the only safe time to generate a computed value is in a recipe, since attributes from roles will not have been applied until later.
>
> We recently fixed a different but related issue, CHEF-1804[0] with an eye towards making this issue (CHEF-2936[1]) easier to resolve; it should be fixed in master in the next couple of weeks. Note that these are potentially breaking changes so they will go in Chef 11.0 but not 10.x.
>
> -- 
> Daniel DeLeo
>
> 0. http://tickets.opscode.com/browse/CHEF-1804
> 1. http://tickets.opscode.com/browse/CHEF-2936

Ah, thanks! CHEF-2936 is exactly what hits me. CHEF-1804 is weird as well, I'll try to keep that in the back of my head...

As this behaviour is quite counter-intuitive, would you agree that a foodcritic rule would make sense here?

And a side question: what's the way to dump a node's "resolved" attributes? Is it possible via knife? I'm currently doing it via shef on the node...

Cheers, Torben




Archive powered by MHonArc 2.6.16.

§