Назад | Перейти на главную страницу

Шаблоны объединения марионеток

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

Рекомендуемый способ сделать это - использовать сторонние модули. Нет ли встроенного способа?

Другое возможное решение, которое на удивление работает (и о котором я не смог найти никакой документации), - это синтаксис массива внутри template() функция:

file { "${location}/final-file.php":
    ensure  => file,
    content => template(
        'wppuppet/template.a.erb',
        'wppuppet/template.b.erb',
        'wppuppet/template.c.erb'
    ),
}

Одно из возможных решений - получить шаблоны в переменных. Затем объедините строку и вставьте ее в inline_template():

$a = template( 'wppuppet/my-file.a.erb' )
$b = template( 'wppuppet/my-file.b.erb' )
$c = template( 'wppuppet/my-file.c.erb' )

file { "${location}/final-file.php":
    ensure  => file,
    content => inline_template( "${a}${b}${c}" ),
}