On Jan 25, 2012, at 8:59 AM, Christopher Wood wrote: > (Define "generalized"?)
Works in more than one specific situation. > Also, could you expound? I don't know any production scenario where it's > desirable to have anything other than "an exact known configuration of hosts". One thing about a well-written piece of generic code is that it can be used in many environments. A lot of my modules do things like "do I have an external interface or am I behind the firewall?" and do different things based on those answers. Likewise, when dealing with software components you could be on a system dedicated to just that one component, or you could be on a Dev/QA box which has dozens of such components installed. The behavior calls for different actions there. It is very tricky, to the point of impossible in some scenarios, to write this kind of intelligent decision choices in Puppet today. You can successfully determine if a given class is loaded in the client's manifest, but determining if certain things are set within the class is only possible in situations where ordering can be clearly constrained. This makes it truly impossible for someone on a different team to write a generic purpose module to fit Dev/QA/Prod-US/Prod-EU/Prod-AP/etc environments without having someone sit down and carefully work out the dependency flow through the modules to make this happen. And frankly, that kind of hardcore one-two-three ordering goes against the design philosophy of Puppet. It's also nearly impossible when the ordering is more like 1, 2...67588, 67589 operations. I don't believe that Puppet 2.x is capable of solving this problem. But I believe it should be a heavy design criteria for Puppet v3. -- Jo Rhett Net Consonance : consonant endings by net philanthropy, open source and other randomness -- 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.