One more thing to mention is that if I change the hierarchy from being a 
directory as mentioned above to just a file like so:

:hierarchy:
    - "%{::environment}_%{::osfamily}_%{::lsbdistcodename}"

both puppet apply and puppet agent are able to find the variable.

However if I prepend the "domain" fact like this:

- "%{::domain}_%{::environment}_%{::osfamily}_%{::lsbdistcodename}"

even though it's just a single file again, puppet apply works, but puppet 
agent -tv again is not able to find the variable.

This does not make any sense to me and I am starting to wonder if this is a 
bug.

On Tuesday, January 7, 2014 11:39:14 AM UTC-6, kai wrote:
>
> What version of Puppet are you running?
>> *3.4.1 for both master and agent*
>> As what user is the master running?  (Typically an unprivileged user 
>> named 'puppet'.)
>> *The master is running as user puppet*
>> As what user are you running the agent in your tests?
>> *I am running the agent and the apply commands on the master as the root 
>> user*
>> As what user are you running "puppet apply" in your tests?
>> *root*
>> What are the ownership and permissions of /etc/puppet/data/
>> loc.example.com/production/Debian/wheezy.yaml and all the directories in 
>> the path to it?  Do any of those have extended ACLs set on them?
>> *The permissions of the directory and the yaml file are root:root. No 
>> ALC's. I chown-ed then to puppet:puppet with the same result.*
>> Are you running SELinux in enforcing mode?  If so, then do you see 
>> relevant AVC messages in the system log?
>> *This is a Debian Wheezy, so no selinux or apparmor on it.*
>>
>> The bellow works fine with this:  
>
> $ puppet apply --debug --environment=production -e '$test = 
> hiera('ssh_service_config') notify { $::test: }'
> Debug: hiera(): Hiera YAML backend starting
> Debug: hiera(): Looking up ssh_service_config in YAML backend
> Debug: hiera(): Looking for data source defaults
> Debug: hiera(): Looking for data source puppetmaster.iad3.example.com
> Debug: hiera(): Cannot find datafile 
> /etc/puppet/data/puppetmaster.iad3.example.com.yaml, skipping
> Debug: hiera(): Looking for data source production/Debian/wheezy
> *Debug: hiera(): Found ssh_service_config in production/Debian/wheezy*
>
> but not with 
>
> $ pupept agent -tv
> *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 <http://puppetmaster.iad3.example.com>*
>
> :hierarchy:
>   - "%{::environment}/%{::osfamily}/%{::lsbdistcodename}"     <--- This 
> works with  puppet apply, but not puppet agent -tv 
>
> This is really strange, any help will be greatly appreciated. (Appending 
> the domain fact produces the same result)
>
>>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/5cf53edf-3d1a-49ea-8cd0-4f3392bfdb17%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to