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.

Reply via email to