On 20/03/18 04:19, Gino Lisignoli wrote:
Hello
I'm using hiera with the http backend (as couchdb) which works for data
lookup, but I want to user data interpolation
(https://puppet.com/docs/puppet/5.0/hiera_interpolation.html).
At the moment I am trying to do a simple test of:
|
classfoo (
$bar =lookup("some::path::var")
){
notify {'bar':
message =>$bar
}
}
|
Couchdb:
|
{
"some::path::var":"%{::fqdn}"
}
|
But my notify output is always:
Notice: /Stage[main]/Foo::Notify[bar]/message:current_value absent,
should be %{::fqdn} (noop)
Any ideas why this isn't getting resolved as the fqdn fact?
Afaik, the interpolation should be performed by the backend itself for
hiera 3 backends. Does other interpolations work with the couchdb
backend? If not, log a ticket for that backend.
The right path forward is to use hiera 5 and write a hiera 5 backend for
couchdb. This is as simple as writing a function - probably of the
"lookup_key" kind. When doing such a lookup, there is a method to call
on the "lookup context" object given to the function that performs
interpolation.
Others that have written hiera 5 backend functions have done so quite
easily and made the hiera 3 backend be capable of supporting both the
hiera 3 backend API and the new hiera 5 at the same time.
Best,
- henrik
--
Visit my Blog "Puppet on the Edge"
http://puppet-on-the-edge.blogspot.se/
--
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/p8qsv3%24ui%241%40blaine.gmane.org.
For more options, visit https://groups.google.com/d/optout.