Douglas Garstang writes: > On Fri, May 14, 2010 at 1:38 PM, Paul Lathrop <paul.lath...@gmail.com> wrote: > > You are getting a bunch of misguided answers to this. I'm also > > perplexed by your assertion that external nodes requires you to write > > custom scripts to parse node manifests. > > > > No, you cannot put resources directly into nodes when you are using > > external nodes. In practice, this hasn't mattered; you wrap your > > resources in a class, done. > > Sorry, but I really don't follow this. It isn't until you drill down > to the node level that you get to the level of detail necessary. For > example, software A requires version X on server A, and software A > requires version Y on server B. The only way I can see to do that it > is to define it at the node level. Defining it at the class level is > too far up the chain.
You're not really talking about defining resources here. You can specify node-specific variables when using an external node classifier, and so you could use those to indicate node-specific requirements like software versions. Ultimately an external node classifier has to provide these bits of YAML to Puppet for each node: classes: [ <Puppet class names go here> ] parameters: { <arbitrary variable=value settings go here> } So if you need different Apache versions on two different nodes, your node classifier could supply this for node1: classes: [ apache-server ] parameters: { apache_version=2.0.63 } and this for node2: classes: [ apache-server ] parameters: { apache_version=2.2.15 } And then in each node $apache_version would indicate which version to install, which you could use in a "package" resource or whatever. -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-us...@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.