【发布时间】:2016-08-31 09:11:44
【问题描述】:
我正在编写一个简单的方法来安装任何软件包。我试图实现的唯一改变是我的配方应该只在节点名称匹配的情况下安装包,否则它应该什么都不做。我的代码是
package "vim" do
if node["name"] == "MyNode"
action :install
else
action :nothing
end
end
在这种情况下,即使在名为 MyNode 的节点上也不会安装包。我还尝试使用only_if,如下所示:
package "vim" do
only_if node["name"] == "MyNode"
action :install
end
在这种情况下,它会在每个节点上安装包,而不管其名称如何!我要么弄乱了缺少某些东西的语法。
谁能告诉我这样做的正确方法是什么?
【问题讨论】:
标签: automation chef-infra conditional-statements chef-recipe