Hiera can't find puppet environment

Posted by quickshiftin on Server Fault See other posts from Server Fault or by quickshiftin
Published on 2013-10-25T21:57:50Z Indexed on 2013/10/26 3:57 UTC
Read the original article Hit count: 563

Filed under:
|
|

I'm testing out hiera and hitting a snag on the hierarchy configuration. What I have is extremely simple, the part that isn't working is specification of hiera datadir files based on environment. Here's the config file (/etc/hiera.yaml) I'm trying

---
:backends:
  - yaml
:logger: console
:hierarchy:
  - "%{::environment}"

:yaml:
   :datadir: /var/lib/hiera

Now, I have a file /var/lib/hiera/development.yaml

blah: meh

When I run hiera it's not finding the file or the value

$ hiera -d blah
DEBUG: Fri Oct 25 15:50:52 -0600 2013: Hiera YAML backend starting
DEBUG: Fri Oct 25 15:50:52 -0600 2013: Looking up blah in YAML backend
nil

I've verified this agent is configured for development

$ sudo puppet agent --configprint environment
development

Now let me prove hiera is capable of finding something; a change to the hiera.yaml file:

:hierarchy:
  - development

And now hiera finds the file and the value

$ hiera -d blah
DEBUG: Fri Oct 25 15:53:25 -0600 2013: Hiera YAML backend starting
DEBUG: Fri Oct 25 15:53:25 -0600 2013: Looking up blah in YAML backend
DEBUG: Fri Oct 25 15:53:25 -0600 2013: Looking for data source development
DEBUG: Fri Oct 25 15:53:25 -0600 2013: Found blah in development
meh

So why isn't it working with the dynamic environment configuration? I got that straight from the documentation. Note, I have tried running the hiera command via sudo with no change in the result.

© Server Fault or respective owner

Related posts about puppet

Related posts about hiera