On Mon, Mar 21, 2011 at 07:47:14AM -0700, jcbollinger wrote: > > Parameterized classes are not resources any more than ordinary classes > are, syntax similarity notwithstanding. You cannot override the > parameters of a parameterized class. > > Defined types are effectively custom resource types written in the > Puppet DSL instead of in Ruby. Resources of such types behave like > resources of any built-in or custom type, so among other things, their > parameters can be overridden via subclasses. > > I don't think it's fair to say that defined types are more flexible > than parameterized classes, because the two features aren't on the > same level. On the other hand, I think that parameterized classes do > receive more attention than they deserve. They solve certain > problems, but they also have limitations that plain classes do not > have. In particular, ordinary classes' idempotency and support for > multiple inclusion constitute a very powerful Puppet feature that > parameterized classes cannot (currently) provide. > > I would not recommend anyone to use parameterized classes without > understanding exactly why they are doing so and what it may cost > them. If the benefit justifies the cost, however, then go for it! >
Please forgive my ignorance. I find myself, a linux admin brought up on howtos and books with animals on the cover, suddenly plunged by puppet into a world of developers and computer scientists. Could you explain what is "idempotency" and "support for multiple inclusion"? -- -ashley Did you try poking at it with a stick? -- 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.