我喜歡使用單個erb模板創建不同的文件。這是我的erb。在單個木偶清單中爲單個erb模板使用不同的文件
# managed by puppet
# changes will be overwritten
#
<% if (@tanuki_ssl != nil) -%>
# config include
# ssl section for trust and key stores
#
<% unless @tanuki_ssl['truststore_path'].nil? -%>
wrapper.java.additional.940=-Djavax.net.ssl.trustStore=<%= @tanuki_ssl['truststore_path'] %>
<% end -%>
<% unless @tanuki_ssl['truststore_pass'].nil? -%>
wrapper.java.additional.941=-Djavax.net.ssl.trustStorePassword=<%= @tanuki_ssl['truststore_pass'] %>
<% end -%>
<% end -%>
<% if (@tanuki_proxy != nil) -%>
# config include
# proxy section
#
wrapper.java.additional.951=-Dhttp.proxySet=true
wrapper.java.additional.952=-Dhttp.proxyHost=<%= @tanuki_proxy['host'] %>
wrapper.java.additional.953=-Dhttp.proxyPort=<%= @tanuki_proxy['port'] %>
wrapper.java.additional.954=-Dhttp.nonProxyHosts=<%= @tanuki_proxy['exceptions'].join('|') %>|<%= @ipaddress %>|<%= @hostname %>
wrapper.java.additional.955=-Dhttps.proxySet=true
wrapper.java.additional.956=-Dhttps.proxyHost=<%= @tanuki_proxy['host'] %>
wrapper.java.additional.957=-Dhttps.proxyPort=<%= @tanuki_proxy['port'] %>
wrapper.java.additional.958=-Dhttps.nonProxyHosts=<%= @tanuki_proxy['exceptions'].join('|') %>|<%= @ipaddress %>|<%= @hostname %>
<% end -%>
在我的傀儡清單我寫了兩個文件資源:
if $tanuki_hash['ssl_enabled'] {
$tanuki_ssl = $tanuki_hash['ssl']
file { "${tanuki_path}/${dirname}/conf/940-ssl.inc":
content => template('profile/app/wrapper.inc.erb'),
}
}
if $tanuki_hash['proxy_enabled'] {
if $tanuki_hash['override_system_proxy'] {
$tanuki_proxy=$tanuki_hash['proxy']
} else {
$tanunki_proxy=$proxy_hash
}
file { "${tanuki_path}/${dirname}/conf/950-proxy.inc":
content => template('profile/app/wrapper.inc.erb'),
}
}
我我跑的木偶現在我得到一個文件940 ssl.incl與預期的內容。只有第一部分將被解釋。
但是文件950-proxy.inc也有ssl部分。
那麼,我怎麼可以只傳遞每個文件所需的變量?
乾杯
基督教