I have the following hiera.yaml file: --- :backends: - yaml - file :hierarchy: - defaults - "%{clientcert}" * - "%{::domain}/%{::environment}/%{::osfamily}/%{::lsbdistcodename}"* - global :yaml: :datadir: /etc/puppet/data and the following in /etc/puppet/data: *loc.example.com/production/Debian/wheezy.yaml* The domain fact returns loc.example.com, the osfamily fact returns Debian and the lsbdistcodename returns wheezy. When I run puppet apply --environment=production -e '$test = hiera('ssh_service_config') notify { $test: }' I get the ssh_service_config variable from the /etc/puppet/data/loc.example.com/production/Debian/wheezy.yaml file, which in my mind means that the correct file was chosen based on the 3 facts (environment. osfamily and lsbdistcodename), which is what I want. However if I run: $ puppet agent -tv --environment=production Info: Retrieving plugin Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find data item ssh_package_name in any Hiera data file and no default supplied at /srv/puppet/environments/production/modules/ssh/manifests/install.pp:2 on node puppetmaster.iad3.example.com Warning: Not using cache on failed catalog Error: Could not retrieve catalog; skipping run Or: $ hiera -d ssh_service_config environment=production osfamily=Debian lsbdistcodename=wheezy DEBUG: 2014-01-06 19:18:08 +0000: Hiera YAML backend starting DEBUG: 2014-01-06 19:18:08 +0000: Looking up ssh_service_config in YAML backend DEBUG: 2014-01-06 19:18:08 +0000: Looking for data source defaults DEBUG: 2014-01-06 19:18:08 +0000: Looking for data source global DEBUG: 2014-01-06 19:18:08 +0000: Hiera File backend starting DEBUG: 2014-01-06 19:18:08 +0000: Looking up ssh_service_config in File backend DEBUG: 2014-01-06 19:18:08 +0000: Hiera File_backend: looking for data source 'defaults' DEBUG: 2014-01-06 19:18:08 +0000: Cannot find datafile /var/lib/hiera/defaults.d, skipping DEBUG: 2014-01-06 19:18:08 +0000: Hiera File_backend: looking for data source 'global' DEBUG: 2014-01-06 19:18:08 +0000: Cannot find datafile /var/lib/hiera/global.d, skipping nil Any idea what is going on? I would like to have a simple hierarchy like the one in the hiera.yaml file, based on the three facts. -- 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 puppet-users+unsubscribe@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/f139fb4c-92f2-4616-a522-6bd69ecfd9fb%40googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.