As background, for "reasons" I am looking at individual domains in hiera as 
keys. I do have questions beyond "why would I even".

A) hiera lookup key format

I notice that if I use puppet lookup to test things I get similar behaviour as 
using lookup() from a manifest, a key with dots in it is truncated. Notice how 
the node hierarchy understand the key as "www" below(1). I could just use 
underscores but I'd rather understand what was going on first.

Is there a list of permitted characters in a hiera key lookup?

B) hierarchy interpolation

https://puppet.com/docs/puppet/5.4/hiera_intro.html#hierarchies-interpolate-variables

Is there anything else a hierarchy can interpolate? I'm thinking it would be 
easier to explain to people that 'www.boitc.test' information was listed under 
hieradata/domains/www.boitc.test.yaml rather than in the longer 
hieradata/domains.yaml.

Failing that, is it future-proof to use $title in a hierarchy in the same 
manner as $classname seems sometimes used?


(1) The lookup that is misunderstood in the environment data provider.

puppet lookup --node host.domain.com -d 'www.boitc.test'

  Searching for "www.boitc.test"
    Global Data Provider (hiera configuration version 5)
      No such key: "www.boitc.test"
    Environment Data Provider (hiera configuration version 5)
      Using configuration 
"/etc/puppetlabs/code/environments/puppetmasters_tls/hiera.yaml"
      Hierarchy entry "nodes"
        Path 
"/etc/puppetlabs/code/environments/puppetmasters_tls/hieradata/nodes/host.domain.com.eyaml"
          Original path: "nodes/%{::trusted.certname}.eyaml"
          No such key: "www"


-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/20180301150343.n274yltilcjct6y4%40iniquitous.heresiarch.ca.
For more options, visit https://groups.google.com/d/optout.

Reply via email to