当我将用户添加到我的 Puppet 配置中时,我最终复制/粘贴了如下内容:
user {'jeff':
ensure => 'present',
groups => ['sudo', 'supervisor'],
require => [Group['sudo'], Group['supervisor']],
home => '/home/jeff',
managehome => true,
password => '...',
shell => '/bin/bash',
}
ssh_authorized_key { 'jeff@lorax':
ensure => 'present',
user => 'jeff',
require => User['jeff'],
type => 'rsa',
key => '...',
}
用户之间唯一改变的是用户名、ssh 密钥(标签和值,有些用户有多个),有时还有组集。
我确信我错过了一些关于如何做得更好的信息,但我还没有找到。有什么建议吗?
答案1
您可以使用社区贡献的众多模块之一来删除此重复。例如,使用torrancew/帐户模块(全面披露:我是不是模块所有者):
account { 'jeff':
groups => ['sudo','supervisor' ],
ssh_key => '...',
password => '...',
require => Group['sudo','supervisor'],
}
选项文档:GitHub