[英]Puppet hiera variable in erb `if` statement
我的 erb 模板中有一個 hiera 變量,用於一個條件檢查。
<% if @server_name == 'jira-dev-api'
升級到 puppet 5 后, if
循環中的這個變量不起作用。 但是, if
沒有 erb 模板中的if
語句,這將采用正確的值。
我嘗試使用 puppet 查找進行 hiera 調試,並且運行良好。 該變量在與下面相同的模塊中定義。
module_name::install_confluence_apache_config::server_name=xyz
當我使用如下所示的絕對路徑附加范圍時,
scope['module_name::install_confluence_apache_config::server_name']
有用。
puppet 5 中的if
語句中的 erb 范圍有什么變化嗎? 我正在使用 puppet 3 開源。
添加更多信息。
a)server_name 是在“nodes/%{::clientcert}”yaml 文件中定義的變量。 b)我使用的是 puppet 3.8,工作 erb 模板如下
<% if @server_name == 'jira-dev-api'
c) 升級到 puppet 5.5。但是觀察到當我在上面的 if 語句中引用 erb 中的 server_name 變量時,該值沒有得到。但是在我使用時工作
scope['module_name::install_confluence_apache_config::server_name']
此外,此問題僅存在於 erb 模板中的 if 語句中。
謝謝約翰和亞歷克斯。
這是一個范圍問題,因為約翰說它之前在 3.8 中使用 @syntax 工作可能是由於錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.