Argh, just realized I left something out of those paths, should be: /usr/share/puppet/environments/testing/nodes/localhost.localdomain.yaml /usr/share/puppet/environments/testing/nodes/cluster_cluster1.yaml /usr/share/puppet/environments/testing/nodes/site_site1.yaml /usr/share/puppet/environments/testing/nodes/default.yaml
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? > > On Wed, Aug 3, 2011 at 4:15 PM, Aaron Grewell <aaron.grew...@gmail.com>wrote: > >> Precedence is for having it look in multiple places. I've got node-level, >> site-level, and default YAML files for example. >> >> On Wed, Aug 3, 2011 at 3:50 PM, Douglas Garstang <doug.garst...@gmail.com >> > wrote: >> >>> Can't get the extlookup() that supports yaml to work. >>> >>> I did this... >>> >>> On server: >>> mv /usr/lib/ruby/site_ruby/1.8/puppet/parser/functions/extlookup.rb >>> /usr/lib/ruby/site_ruby/1.8/puppet/parser/functions/extlookup.rb.orig >>> Replaced /usr/lib/ruby/site_ruby/1.8/puppet/parser/functions/extlookup.rb >>> with puppet-extlookup/lib/puppet/parser/functions/extlookup.rb >>> mkdir /usr/lib/ruby/site_ruby/1.8/puppet/util/extlookup/ >>> Added puppet-extlookup/lib/puppet/util/extlookup.rb to >>> /usr/lib/ruby/site_ruby/1.8/puppet/util >>> Added puppet-extlookup/lib/puppet/util/extlookup/csv_parser.rb to >>> /usr/lib/ruby/site_ruby/1.8/puppet/util/extlookup >>> Added puppet-extlookup/lib/puppet/util/extlookup/yaml_parser.rb to >>> /usr/lib/ruby/site_ruby/1.8/puppet/util/extlookup >>> Added puppet-extlookup/lib/puppet/util/extlookup/puppet_parser.rb to >>> /usr/lib/ruby/site_ruby/1.8/puppet/util/extlookup >>> >>> Created /etc/puppet/extlookup.yaml: >>> --- >>> :parser: YAML >>> :precedence: >>> - environment_%{environment} >>> - common >>> :yaml: >>> :datadir: /etc/puppet/extdata >>> >>> Created /etc/puppet/extdata/settings.yaml: >>> --- >>> testkey: testval >>> >>> Calling with: >>> $test_var = extlookup('testkey', '---', 'settings.yaml') >>> notice("TEST VAR=$test_var") >>> >>> And $test_var is always '---'. Replacing settings.yaml with a bogus file >>> name also returns '---', which tells me that the file isn't being found. >>> What am I missing here? Quite possibly a lot given the really bad docs. >>> >>> What is 'precedence' for? Not documented. >>> >>> 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.