通过人偶替换 ruby 模板上的变量值
replace variable value on ruby template via puppet
我正在寻找获得此 ruby 模板文件结果的方法:
ServerName 1.server.foo
知道如果我 运行
$ facter -p fqdn
1.server.foo.internet.com
我可能会玩 <%= @fqdn %>
和 .gsub?
server-id: <%= @fqdn %>.gsub(/.internet.com/, '')
整个表达式需要在<%= %>
标签中,所以试试
server-id: <%= @fqdn.regsubst(/.internet.com/, '') %>
模板语法记录在 https://puppet.com/docs/puppet/5.5/lang_template_erb.html 中,其中包含 <%= %>
标签中使用的表达式示例。
我还注意到 ERB 模板已被 native Embedded Puppet EPP templates 取代,因此现在转换可能更好。
将 EPP 与 regsubst 结合使用很有效!
server-id: <%= $facts[fqdn].regsubst(/.internet.com/, '') %>
我正在寻找获得此 ruby 模板文件结果的方法:
ServerName 1.server.foo
知道如果我 运行
$ facter -p fqdn
1.server.foo.internet.com
我可能会玩 <%= @fqdn %>
和 .gsub?
server-id: <%= @fqdn %>.gsub(/.internet.com/, '')
整个表达式需要在<%= %>
标签中,所以试试
server-id: <%= @fqdn.regsubst(/.internet.com/, '') %>
模板语法记录在 https://puppet.com/docs/puppet/5.5/lang_template_erb.html 中,其中包含 <%= %>
标签中使用的表达式示例。
我还注意到 ERB 模板已被 native Embedded Puppet EPP templates 取代,因此现在转换可能更好。
将 EPP 与 regsubst 结合使用很有效!
server-id: <%= $facts[fqdn].regsubst(/.internet.com/, '') %>