Ok, so am I getting 'DougBobBill' when I use $test_var = extlookup('testkey', '---', 'settings') on this file?
--- testkey: - Doug - Bob - Bill Doug On Wed, Aug 3, 2011 at 4:34 PM, Aaron Grewell <aaron.grew...@gmail.com>wrote: > It's an array, which can then be exploded into a whole set of package > resources with a single entry: > package {$default_packages:} > > On Wed, Aug 3, 2011 at 4:31 PM, Douglas Garstang > <doug.garst...@gmail.com>wrote: > >> On Wed, Aug 3, 2011 at 4:25 PM, Aaron Grewell <aaron.grew...@gmail.com>wrote: >> >>> Example Config: >>> --- >>> :parser: YAML >>> :precedence: >>> - %{environment}/nodes/%{fqdn} >>> - %{environment}/nodes/cluster_%{cluster} >>> - %{environment}/nodes/site_%{site} >>> - %{environment}/nodes/default >>> :yaml: >>> :datadir: /usr/share/puppet/environments >>> >>> Example call: >>> $default_packages = extlookup('linux_default_packages') >>> >>> Given an environment called 'testing', cluster called 'cluster1', site >>> called 'site1' and a node called localhost.localdomain it will look for >>> variable 'linux_default_packages' in: >>> >>> /usr/share/puppet/environments/testing/localhost.localdomain.yaml >>> /usr/share/puppet/environments/testing/cluster_cluster1.yaml >>> /usr/share/puppet/environments/testing/site_site1.yaml >>> /usr/share/puppet/environments/testing/default.yaml >>> >>> In that order, which means you can set this at the default level, then >>> override at any lower level you like. Make sense? >>> >>> >>> >> Aaron, makes sense. I wasn't so interested in the defaulting behaviour, >> because you can do the same thing with extlookup itself with something like >> this: >> >> $ssh_idle_timeout = extlookup("SshIdleTimeout", >> extlookup("SshIdleTimeout", extlookup("SshIdleTimeout", "" >> ,"settings/nodes/_global"), "settings/nodes/${domain}"), >> "settings/nodes/${fqdn}") >> >> In fact, I haven't had a chance to think fully though it yet, but I think >> this implementation of extlookup actually removes functionality. By chaining >> extlookup() calls together like I have above you can determine what lookup >> order you want to use whenver you want, rather than having to rely on a >> centrally configured file. >> >> But... I was much more interested in what I thought was the possibility of >> storing complex YAML data and retrieving it with puppet. What does >> $linux_default_packages end up looking like? Is it a string? If it's a >> string, how do you parse it? >> >> I dunno... seems like all you can store in the yaml files is key/value >> pairs, which means it's no better than using a CSV file. No? >> >> Doug >> >> >> -- >> 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. >> > > -- > 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. > -- Regards, Douglas Garstang http://www.linkedin.com/in/garstang Email: doug.garst...@gmail.com Cell: +1-805-340-5627 -- 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.