Получить переменную из конфигурации PuppetMaster из функций ruby

#ruby #puppet

#ruby #puppet

Вопрос:

Я написал простую функцию для своего кукольного модуля. Он выполняет некоторые запросы с использованием API puppetdb, и мне нужен IP-адрес сервера puppetdb. Есть ли правильный способ получить настройки подключения PuppetMaster к puppetdb, чтобы получить адрес сервера puppetdb, или я должен разобрать puppet.conf вручную?

Ответ №1:

Разбор puppetdb.conf вручную был бы наименее желательным способом сделать это.

Глядя на код, который загружает конфигурацию, должно быть возможно получить к нему доступ с помощью

 settings_value = Puppet::Util::Puppetdb.config['main'][setting_name]
  

для параметров конфигурации из [main] раздела.

Просматривая еще больше кода, вы даже сможете использовать

 Puppet::Util::Puppetdb.server
Puppet::Util::Puppetdb.port
  

Я не совсем уверен, доступны ли эти API из функций синтаксического анализатора, но попробовать стоит.