我对 Puppet 还不太熟悉,但我不确定这会如何成为重复声明,有人可以给我一些指导,这是否是类传递参数的正确用法吗?
Error: Duplicate declaration: Class[Jenkins_dotfiles] is already declared in file /tmp/puppet-manifests-test/manifests/site.pp:193; cannot redeclare at /tmp/puppet-manifests-test/manifests/site.pp:193
使用此代码:
$user = 'jenkins'
$group = 'staff'
$home = "/Users/${user}"
...
if ($is_jenkins) {
class {
'jenkins_dotfiles':
home => '/var/root',
user => 'root';
'jenkins_dotfiles':
home => $home,
user => $user;
jenkins_dotfiles/manifests/init.pp
class jenkins_dotfiles($home, $user) {
...
}
答案1
你是声明两次。一次使用参数值'/var/root'
, 'root'
,另一次使用参数$home
和$user
。您可能应该创建jenkins_dotfiles
一个定义的类型,而不是类。