On 7 December 2012 12:11, Ryan Cunningham <ryan.cunningham.xy...@gmail.com>wrote:
> I'm actually having this exact same problem. In my hiera.yaml file I had a > hierarchy including two facts and then some strings derived from facter > facts. > Nice to know I am not completely insane. When I run puppet agent --test the hiera vars in files named for the node's > $fqdn, etc. aren't found, but if I puppet apply specifying my site.pp > manifest the variables contained in yaml files like $fqdn.yaml are found > and applied properly. I've gone as far as testing this with masters running > 3.0 and 2.7 but haven't seen any difference. For the sake of clarity, the > agent is being run on the master. > > I've tried several permutations of specifying a hierarchy including > quoting "%{fqdn}", using no quotes, using the syntax for a top-level > variable ${::fqdn}, etc. Each time running hiera from the CLI works as > expected but the master can't be coerced to behave as expected. > > A bit of pastebin > puppet apply (which works): http://pastebin.com/E5iBtt2t > puppet agent --test (doesn't work): http://pastebin.com/GsA81Eyx I didn't try using apply but it does look very similar to my problem. On Thursday, 6 December 2012 18:31:09 UTC-5, Pete wrote: >> >> On Dec 7, 2012 12:08 AM, "jcbollinger" <john.bo...@stjude.org> wrote: >> > >> > >> > >> > On Tuesday, December 4, 2012 8:10:00 PM UTC-6, Pete wrote: >> >> >> >> >> >> One last question. >> >> I use a node level variable to specify the location of a node. >> >> I use this for setting variables specific to that location like >> different puppet master ip and nagios ip for the office and such. >> >> I want to use that variable in hiera for the same purpose. >> >> I have this in my hiera.yaml file. >> >> >> >> --- >> >> :hierachy: >> >> - %{::clientcert} >> >> - %{::environment} >> >> - %{location} >> >> - virtual_%{::is_virtual} >> >> - common >> >> :backends: yaml >> >> :yaml: >> >> :datadir: /etc/puppet/hieradata >> >> >> >> it gets data from the common.yaml file but is seems to not get >> anything from any of the other files. >> >> it's definitely using the datadir because thats where the common.yaml >> file is as well as the rest of the data files. >> >> Am I missing something? >> >> >> > >> > You are missing that node variables are not globals, and in fact don't >> even have qualified names. I strongly suspect that that is why Hiera is >> not seeing them. >> >> That explains a why location isn't seen. >> >> I discovered later that hiera didn't seem to be using the facts either... >> >> Do I need to do something else to allow hiera to see facts? >> I am assuming if I can use facts I will work out how to set location as a >> fact and just use it that way. >> >> As an aside, are ENC variables global? >> I have been tempted to use my freeipa server as an ENC using ldap. >> >> I have also been tempted to have a go at writing an ldap backend for >> hiera but that's another story... >> >> > >> > There are several potential workarounds, among them: >> > set the needed variable(s) at top-level, based on some sort of >> conditional >> >> I was under the impression that node level variables were top level >> variables but I am guessing I am wrong. Time to find some docs I guess. :) >> >> > push all the contents of your node blocks into classes, so that the >> variables in question become class variables >> >> I am going to assume from that class variables are global because they >> have qualified names? >> >> > instead of creating a separate hierarchy level with a data file for >> each value of (say) $environment,use a hash of hashes in the level below, >> with the $environment values as the outer hash keys >> > >> > Cheers, >> > >> > John >> > >> > -- >> > You received this message because you are subscribed to the Google >> Groups "Puppet Users" group. >> > To view this discussion on the web visit https://groups.google.com/d/** >> msg/puppet-users/-/**1Ajo2OXHPC4J<https://groups.google.com/d/msg/puppet-users/-/1Ajo2OXHPC4J> >> . >> > >> > To post to this group, send email to puppet...@googlegroups.com. >> > To unsubscribe from this group, send email to puppet-users...@** >> googlegroups.com. >> >> > For more options, visit this group at http://groups.google.com/** >> group/puppet-users?hl=en<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 view this discussion on the web visit > https://groups.google.com/d/msg/puppet-users/-/Gjgrw66TRWkJ. > > 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.