Hi,

I figured that out and did the changes to verify. However it doesn't parse 
the hierarchy to override the values. I did a quick test to only use the 
operatingsystem fact in hierarchy.  It doesnt pickup the value from it 
also. Even though the machine is CentOS.  I dont know if  hiera 0.3.0 works 
with ruby1.9.3

Regards,
Kevin


On Friday, August 17, 2012 12:13:37 PM UTC+2, denmat wrote:
>
> Sorry, your hiera config points to:
>            -'%{operatingsystem}'
>           - '%{platform}/%{location}/%{role}
>           - common role
>
> But the facts you have are:
> company_role
> company_platform
> company_location
>
> So unless you have facts platform, location, and role defined they aren't 
> going to match up. It's like the facts you've used below:
>
> hiera -c /etc/puppet/hiera.yaml hsflowd_port platform=production  
> location=frankfurt role=dev_tst
>
> So role = dev_tst does not equal custom_role = dev_tst 
>
> -- you get what I mean?
>
> Something like this might work:
>           -'%{operatingsystem}'
>           - %{custom_platform}/%{custom_location}/%{custom_role}
>           - '%{platform}/%{location}/%{role}'
>
> See if that works,
> Den
> On 17 Aug 2012 19:31, "linuxbsdfreak" <linuxb...@gmail.com <javascript:>> 
> wrote:
>
>> Just for info i am running ruby-1.9.3p194.
>>
>>
>> On Friday, August 17, 2012 9:28:13 AM UTC+2, linuxbsdfreak wrote:
>>>
>>> Hi,
>>>
>>> The default value works when i set the value in common.yaml. Strange 
>>> part is why isnt hiera find the value in the hierarchy, since i want to 
>>> override the default value according to a facter fact.
>>>
>>> Regards,
>>> Kevin
>>>
>>> On Friday, August 17, 2012 2:57:03 AM UTC+2, denmat wrote:
>>>>
>>>> Hi, 
>>>>
>>>> Can't see anything that stands out in the quick glance, but here's how 
>>>> you can dig further:
>>>>
>>>> Use --debug on your puppet run and you'll get an output of what hiera 
>>>> is going through. Second, use notify to print out the variables you are 
>>>> trying to access, making sure they match with what hiera is looking for 
>>>> and 
>>>> what you expect. You can also try setting the default for the hsflowd_port 
>>>> and see if that solves your problems or there are others (not saying you 
>>>> should only use the default, just to further your own investigations).
>>>>
>>>>   $hsflowd_port      = hiera('hsflowd_port', '8080'),
>>>>
>>>>   
>>>>
>>>> HTH,
>>>> Den
>>>>
>>>> On 17/08/2012, at 1:38, linuxbsdfreak <linuxb...@gmail.com> wrote:
>>>>
>>>> Typo error location=frankfurt is actually location=london.
>>>>
>>>> On Thursday, August 16, 2012 5:25:17 PM UTC+2, linuxbsdfreak wrote:
>>>>>
>>>>> Hi All,
>>>>>
>>>>> I am using hiera for storing configuration values. I have setup puppet 
>>>>> to use facter following the article from 
>>>>>
>>>>> http://nuknad.com/2011/02/11/**s**elf-classifying-puppet-nodes/<http://nuknad.com/2011/02/11/self-classifying-puppet-nodes/>
>>>>>
>>>>> I have custom facts 
>>>>>
>>>>> company_role
>>>>> company_platform
>>>>> company_location
>>>>>
>>>>> I have defined the following in hiera.yaml
>>>>>
>>>>> ---
>>>>> :backends: 
>>>>>      - yaml
>>>>>
>>>>> :logger: console
>>>>>
>>>>> :hierarchy:
>>>>>           - '%{operatingsystem}'
>>>>>           - '%{platform}/%{location}/%{**rol**e}'
>>>>>           - common
>>>>>
>>>>> :yaml:
>>>>>     :datadir: '/etc/puppet/hieradata'
>>>>>
>>>>>
>>>>> and i create the directories /etc/puppet/hieradata/**producti**
>>>>> on/london/dev_tst.yaml
>>>>>
>>>>> I have something like this in the above file
>>>>>
>>>>> ---
>>>>>
>>>>> hsflowd_port: 8080
>>>>>
>>>>> company_role: dev_tst
>>>>> company_platform: production
>>>>> company_location: london
>>>>>
>>>>> Given a system with the above facts connecting to puppetmaster. When i 
>>>>> run the client i get the following error
>>>>>
>>>>> Err: Could not retrieve catalog from remote server: Error 400 on 
>>>>> SERVER: Could not find data item hsflowd_port in any Hiera data file and 
>>>>> no 
>>>>> default supplied at /etc/puppet/modules/hsflowd/**ma**
>>>>> nifests/config.pp.
>>>>>
>>>>>
>>>>> For some reason its not getting the value. However when i do the 
>>>>> following from the command line
>>>>>
>>>>> hiera -c /etc/puppet/hiera.yaml hsflowd_port platform=production  
>>>>> location=frankfurt role=dev_tst
>>>>>
>>>>> I get the value.
>>>>>
>>>>> Following is my manifest:
>>>>>
>>>>> class hsflowd::config(
>>>>>   $hsflowd_user       = hiera('hsflowd_user'),
>>>>>   $hsflowd_group      = hiera('hsflowd_group'),
>>>>>   $hsflowd_config_dir = hiera('hsflowd_config_dir'),
>>>>>   $hsflowd_port      = hiera('hsflowd_port'),
>>>>> )
>>>>>
>>>>> {
>>>>>
>>>>>        file {
>>>>>           "${hsflowd_config_dir}/**hsflowd**.conf":
>>>>>                 ensure  => present,
>>>>>                 content => template("${module_name}/**hsflo**
>>>>> wd.conf.erb"),
>>>>>                 owner   => $hsflowd_user,
>>>>>                 group   => $hsflowd_group,
>>>>>                 mode    => '0644';
>>>>> } 
>>>>>
>>>>> Is something wrong that i am doing?
>>>>>
>>>>> Regards,
>>>>> Kevin
>>>>>
>>>>>
>>>>>  -- 
>>>> 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/-/**L2PKd1u1QAgJ<https://groups.google.com/d/msg/puppet-users/-/L2PKd1u1QAgJ>
>>>> .
>>>> 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/-/3rPfzeEvIMUJ.
>> To post to this group, send email to puppet...@googlegroups.com<javascript:>
>> .
>> To unsubscribe from this group, send email to 
>> puppet-users...@googlegroups.com <javascript:>.
>> 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 view this discussion on the web visit 
https://groups.google.com/d/msg/puppet-users/-/2rb9UPd-7eEJ.
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