Puppet重复声明:类[Mongodb]已经声明; 不能重新宣誓

Jos*_*way 9 puppet vagrant

可能在这里做了一些非常愚蠢的事情,但我找不到任何可能导致这种情况的文档.

使用Puppet设置Vagrant VM,我试图覆盖mongodb模块中的特定设置.

据我所知,该repo中的README.md语法不正确(虽然我也尝试过).

我的清单:

include mongodb

class { 'mongodb' :
port => '1111';
}
Run Code Online (Sandbox Code Playgroud)

运行时vagrant up我得到以下错误:

Duplicate declaration: Class[Mongodb] is already declared; cannot redeclare at /tmp/vagrant-puppet/manifests/mongodb.pp:5 on node www
Run Code Online (Sandbox Code Playgroud)

如果我删除配置覆盖它完美的工作,但没有理由不这样做.

Ger*_*orn 9

您使用两种符号来实现相同,但您只能使用带有第二种符号的参数.简而言之,你宣布两次.

所以,只要输掉'包括mongodb'就可以了.

更多信息:http://docs.puppetlabs.com/puppet/2.7/reference/lang_classes.html#declaring-a-class-with-include