So suppose in a very specific hiera YAML file I define a variable, such as "env_name".
env_name: "dev-unstable"
Now in a more general hiera file I'd like to interpolate that variable into a string.
server_name: "service-%{env_name}.%{::domain}"
My testing seems to imply that hiera variables from elsewhere in the hierarchy aren't made available for interpolation in general cases. Is that true, unfortunately?
Best Answer
You can use Hiera lookup functions within Hiera. Documentation here: https://docs.puppetlabs.com/hiera/1/variables.html#using-lookup-functions
In your case you would use:
This is a priority lookup and will get the value for the key
env_name
from the highest (most specific) hierarchy level in which it finds the key.This requires Hiera 1.3 or higher.