On Sun, Feb 13, 2011 at 9:59 PM, Dan Bode <d...@puppetlabs.com> wrote:
> > We have only been teaching <| |> in the puppetmaster training as a way to > realize virtual resources. We do not teach that it is possible to override > attributes with this syntax as well: <| |> {} (at least in part b/c the > implications/non-determinism terrify me) , and do not teach that it actually > effects all resources. > Why is using collections to override attributes non-deterministic compared to class inheritance doing the same thing? The common example from class is something like: > > class db::users { > user { ['alice', 'bob']: > ensure => present, > gid => 'dbadmin', > } > } > > class app::users { > user { ['charlie', 'bob']: > ensure => present, > gid => 'webadmin', > } > } > > > class app { > User<| gid == 'webadmin' |> > ... > } > > class db { > User<| gid == 'dbadmin' |> > ... > } > > so that a machine can safely be a webserver and db server without conflict. > Why is this preferred over the realize() function? I consider the realize function much simpler to teach and understand for this class of problem. -- 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.