Puppet передает факт в строку кода в двойных кавычках в файле ERB
Я уверен, что ответ на этот вопрос прост, но я не могу понять, как это сделать. У меня есть строка в моем файле шаблона erb, которую нужно записать точно как есть в конфигурационный файл сервера (для OpenVPN):
push "dhcp-option DNS 192.16.23.12"
Мне нужно изменить это так, чтобы ip-адрес просматривался из списка facter на сервере, а не был жестко запрограммирован, поскольку этот conf-файл теперь нужно использовать на разных серверах. Факт, содержащий этот IP-адрес, является "ipaddress_tun0". Я попытался поместить это в мою линию, таким образом:
push "dhcp-option DNS <%= @ipaddress_tun0 %>"
..но факт не интерполируется должным образом, предположительно из-за двойных кавычек. К сожалению, двойные кавычки необходимы как буквальная часть строки в файле conf, поэтому они должны быть там (одинарные кавычки не работают). Может кто-нибудь посоветовать, как я могу заставить эту строку искать и вставлять значение ipaddress_tun0, пожалуйста?
1 ответ
push "dhcp-option DNS <%= scope.lookupvar('ipaddress_tun0') %>"
было то, что было нужно, так как мой факт вышел за рамки нынешнего.