Puppet

Puppet 連接模板

  • May 2, 2014

在我目前正在處理的模組中,我得到了大量需要設置的配置選項,具有預設值……並且應該被分割成更短的模板文件,否則它將是一個滾動的噩夢。

推薦的方法是使用一些第三方模組。沒有內置的方式嗎?

另一個令人驚訝的可行解決方案(我找不到任何文件)是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}" ),
}

引用自:https://serverfault.com/questions/592728