Шаблоны кукол и неопределенные / нулевые переменные
Я часто хочу включить значения по умолчанию в шаблонах Puppet. Я надеялся, что учитывая такой класс:
class myclass ($a_variable=undef) {
file { '/tmp/myfile':
content => template('myclass/myfile.erb'),
}
}
Я мог бы сделать шаблон как это:
a_variable = <%= a_variable || "a default value" %>
К несчастью, undef
в Puppet не переводится на Ruby nil
значение в контексте шаблона, так что это на самом деле не работает. Каков канонический способ обработки значений по умолчанию в шаблонах Puppet?
Я могу установить значение по умолчанию для пустой строки, а затем использовать empty?
тестовое задание...
a variable = <%= a_variable.empty? ? "a default value" : a_variable %>
... но это кажется немного неуклюжим.
1 ответ
Не могли бы вы просто установить значение по умолчанию в определении класса?
class myclass ($a_variable = "a default value") {