Opsworks部署没有节点[:deploy]

时间:2019-01-21 10:01:58

标签: docker chef aws-opsworks

我的opsworks部署的节点没有[:deploy]对象 这是我的厨师脚本

if node[:deploy] === nil

    Chef::Log.info("No deployment..")
    node[:deploy].each do |app, deploy|
        Chef::Log.info("deploy -#{ app }-")
    end
elsif
    # never goes here
end

我在第4行出现此错误

undefined method `each' for nil:NilClass (NoMethodError)

1 个答案:

答案 0 :(得分:0)

首先,我建议您阅读What does the “===” operator do in Ruby?

我感觉到您打算使用{% for prediction in object_list %} <h1>{{ prediction.player_name }}</h1> {% endfor %} 而不是==。将您的三重相等运算符更改为双重相等运算符,然后尝试一下...

如果您想使其更具可读性,可以使用#nil?(取决于您的红宝石版本)。改变

===

if node[:deploy] === nil