Chef recipe会将错误视为未定义的方法'split'

时间:2017-03-09 14:53:40

标签: ruby rubygems chef-recipe

我在Chef配方中使用此代码。它适用于所有其他现有服务器,但它不适用于我的新服务器:

user_array = node
node['user']['user_array_node_attr'].split("/").each do |hash_key|
  user_array = user_array.send(:[], hash_key)
end

它返回错误:

FATAL: NoMethodError: undefined method 'split' for nil:NilClass

1 个答案:

答案 0 :(得分:0)

中没有任何价值
node['user']['user_array_node_attr'] #=> nil

您可以检查是否存在

node['user']['user_array_node_attr'].present? && node['user']['user_array_node_attr'].split("/").each do |hash_key|
 user_array = user_array.send(:[], hash_key)
end