On Mar 20, 9:57 am, Garrett Honeycutt <garr...@puppetlabs.com> wrote:
> I would strongly encourage you to never use inheritance with nodes and
> only to use inheritance within a given module[1].
>
> Instead of
>
> node default {
>   include baseline}
>
> node app inherits default {
>   include appstuff
>
> }
>
> I would recommend
>
> node default {}
> node app {
>   include baseline # though, I recommend this is named 'common'
>   include appstuff
>
> }
>
> [1] -http://docs.puppetlabs.com/guides/style_guide.html#class-inheritance


Would you care to explain the reasons for that recommendation?  I
acknowledge that it's easy to overdo node inheritance, but it works
fine and has some good use cases.  I do typically recommend keeping
node inheritance trees very shallow (two levels, or at most three),
but I've never noticed any general sentiment disfavoring its use
altogether.

Class inheritance is a completely different beast.  Its appropriate
uses are few (though they do exist), and people seem much more
inclined to get themselves in trouble there than with node
inheritance.


John

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to