大厨:ohai不提供node['etc']
chef: ohai does not provide node['etc']
我要求仅在存在特定用户的情况下执行特定操作。查看以下问题 我得出以下结论:
if node['etc']['passwd']['random']
会是个好方法。
当我在厨房测试它时它确实有效,但是当它被推向生产时它在所有服务器上崩溃并出现错误:
NoMethodError: undefined method `[]' for nil:NilClass
当使用来自 bash 的 ohai 时,我确实看到了 etc: {...}
这里到底发生了什么?
最终在评论区的人的帮助下,发现Ohai passwd插件确实被禁用了。因此,我不得不解决这个问题并像这样查询用户的存在:
if 'grep td-agent /etc/passwd > /dev/null; echo $?' == '0'
最后,为了将来参考,我的全部资源:
group 'groupname' do
action :create
members 'td-agent' if 'grep td-agent /etc/passwd > /dev/null; echo $?' == '0'
append true
end
我要求仅在存在特定用户的情况下执行特定操作。查看以下问题
if node['etc']['passwd']['random']
会是个好方法。
当我在厨房测试它时它确实有效,但是当它被推向生产时它在所有服务器上崩溃并出现错误:
NoMethodError: undefined method `[]' for nil:NilClass
当使用来自 bash 的 ohai 时,我确实看到了 etc: {...}
这里到底发生了什么?
最终在评论区的人的帮助下,发现Ohai passwd插件确实被禁用了。因此,我不得不解决这个问题并像这样查询用户的存在:
if 'grep td-agent /etc/passwd > /dev/null; echo $?' == '0'
最后,为了将来参考,我的全部资源:
group 'groupname' do
action :create
members 'td-agent' if 'grep td-agent /etc/passwd > /dev/null; echo $?' == '0'
append true
end