Я использую модуль hiera-eyaml, https://github.com/voxpupuli/hiera-eyaml , и хотите динамически устанавливать путь для открытого и закрытого ключей. Я пробовал использовать:
options:
pkcs7_private_key: %{confdir}/keys/private_key.pkcs7.pem
pkcs7_public_key: %{confdir}/keys/public_key.pkcs7.pem
, но % {confdir}
пуст, а полученный путь - /keys/public_key.pkcs7.pem
. Я что-то делаю не так, или это не поддерживается?
Я знаю, что факты можно использовать в конфигурации hiera, https://puppet.com/docs/puppet/5.2/hiera_config_yaml_5.html , но могу переменные конфигурации марионетки тоже могут быть использованы?
Вы можете использовать % {settings :: confdir}
в качестве ключа интерполяции.
https://puppet.com/docs/puppet/4.10/lang_facts_and_builtin_vars. html # puppet-master-variables
Мастер марионетки устанавливает несколько переменных. Это самые полезные при управлении Puppet с помощью Puppet. (Например, управляя puppet.conf с шаблоном.)
Они не доступны в хэше $ fact.
[удалено]
$ settings :: <имя настройки>
(также доступно для марионеточного применения) - значение любой из настроек мастера. Это реализовано как специальное пространство имен, и эти переменные должны упоминаться по их полным именам. Обратите внимание, что кроме $ environment и $ clientnoop, параметры узла агента недоступны в манифестах. Если вы хотите предоставить их мастеру в этой версии Puppet, вам нужно будет создать собственный факт.