Just found this issue, which seems to describe what's going on:
https://github.com/TomPoulton/hiera-eyaml/issues/222
So eyaml is broken wrt hash merges? Are there any workarounds available?


On Tue, Feb 14, 2017 at 12:35 PM, Daniel Urist <[email protected]> wrote:

> To get deep hash merges in hiera, I have been using the following in my
> hiera.yaml:
>
>
>> ---
>> :merge_behavior: deeper
>> :backends:
>>   - eyaml
>
>
> And in one of my classes, a call to hiera_hash() like this:
>
> $if_merged = hiera_hash('profiles::pserver::interfaces')
>
>
> However, with  puppetserver version 2.7.2-1puppetlabs1, this is now broken
> and fails with this error:
>
> Error: Could not retrieve catalog from remote server: Error 500 on SERVER:
>> Internal Server Error: org.jruby.exceptions.RaiseException: (Exception)
>> Hiera type mismatch: expected Hash and got Array
>
>
> I've tried commenting out ":merge_behavior: deeper" in hiera.yaml and
> using a lookup function instead:
>
> $if_merged = lookup('profiles::pserver::interfaces', Hash, 'deep')
>
>
> However, I'm not getting a merged hash when I do this.
>
> How can I get a deep merge hash?
>
>
>

-- 
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/CAEo6%3DKbeWQj9bM606fW%2BpFWeXee2guvinCJ8ffVx2%2Bxvq_PnXA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to