Puppet-未定义的局部变量

Puppet-未定义的局部变量,puppet,Puppet,我得到未定义的错误,但它已经定义。我确信这以前是可行的(可能在puppet 3中),但我正在尝试在puppet 6(在新服务器上)上使用该代码 你知道是什么问题吗?以下是错误代码: Error: Error while evaluating a Function Call, Failed to parse template resolv/resolv.conf.erb:\n Filepath: /etc/puppetlabs/puppet/modules/resolv/templates/

我得到未定义的错误,但它已经定义。我确信这以前是可行的(可能在puppet 3中),但我正在尝试在puppet 6(在新服务器上)上使用该代码

你知道是什么问题吗?以下是错误代码:

 Error: Error while evaluating a Function Call, Failed to parse template resolv/resolv.conf.erb:\n 
 Filepath: /etc/puppetlabs/puppet/modules/resolv/templates/resolv.conf.erb\n  Line: 1\n  
 Detail: undefined local variable or method `domain' for #<Puppet::Parser::TemplateWrapper:0x60d6ba83>\n 
以下是模板内容:

cat resolv.conf.erb

domain <%= domain %>
cat resolv.conf.erb
领域
找到了答案

在Puppet 4中,所有Puppet变量都需要以@作为前缀+

因此,
resolv.conf.erb
应该是

domain <%= @domain %>

您希望,
$hostname
是事实还是其他类型的变量?$hostname来自事实
domain <%= @domain %>