在清单上使用参数化模块

在清单上使用参数化模块

我在使用 Puppet 模块上的参数时遇到了一些麻烦,这是我正在做的事情:

初始化文件

node "example_node.example_domain" {
       
 include repositories("TESTS")

}

存储库模块的清单

class repositories($repository) {
    
notify{"The repository is: ${repository}": }    

}

那么结果是:

错误:无法从远程服务器检索目录:服务器上出现错误 400:节点 example_node.example_domain 上的 /etc/puppet/environments/test/manifests/init.pp:2 上的未知函数存储库

我做错了什么?我想要的只是将一个参数传递给一个模块,因为每个服务器都会有自己对此模块的调用及其特定参数。

感谢大家!

答案1

看一眼精美手册这解释了“类似 Include 的行为如何依赖于外部数据和类参数值的默认值”。如果您必须传递参数,请使用类似 Resource 的声明:

repositories{ 'some_name':
  repository => 'TESTS'
}

相关内容