In Puppet manifests, you can use the lookup()
function to query Hiera for the specified key (you can think of Hiera as a key-value database, where the keys are strings, and values can be any type).
In general, you can use a call to
lookup()
anywhere in your Puppet manifests you might otherwise use a literal value. The following code shows some examples of this (lookup2.pp
):
notice("Apache is set to use ${lookup('apache_worker_factor', Integer)} workers") unless lookup('apparmor_enabled', Boolean) { exec { 'apt-get -y remove apparmor': } } notice('dns_allow_query enabled: ', lookup('dns_allow_query', Boolean))
To apply this manifest in the example environment, run the following command:
sudo puppet apply --environment pbg /examples/lookup2.pp
Notice: Scope(Class[main]): Apache is set to use 100 workers
Notice: Scope(Class[main]): dns_allow_query enabled: true