gpt4 book ai didi

Puppet - 未定义的局部变量

转载 作者:行者123 更新时间:2023-12-04 09:57:27 27 4
gpt4 key购买 nike

我收到未定义的错误,但它已经定义了。我确定这在之前(可能在 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

这是代码:
class resolv {
case $hostname {
/^[Abc]/: {
resolv:resolv_config { 'Default':
domain => "mydomain.local",
}
}
}
}

define resolv::resolv_config($domain){
file { '/etc/resolv.conf':
content => template("resolv/resolv.conf.erb"),
}
}

以下是模板内容:
cat resolv.conf.erb

domain <%= domain %>

最佳答案

弄清楚了。

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

所以resolv.conf.erb应该看起来像

domain <%= @domain %>

关于Puppet - 未定义的局部变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61894357/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com