为什么only_if Chef :: Config ['solo']也可以在服务器上运行?

时间:2018-06-23 00:32:54

标签: chef

我尝试使用Chef :: Config ['solo']仅在本地运行时才执行操作,例如运行厨房测试。但是,当在另一台主机上运行时,它仍然会安装epel-release软件包,我不希望这样做。这是一个错误,还是我在这里错过了一些东西?

# added to pass kitchen test
package 'epel-release' do
  action :upgrade
  only_if Chef::Config['solo']
end

1 个答案:

答案 0 :(得分:0)

因为您的意思是only_if { Chef::Config['solo'] }。如果没有{},它将被解释为要运行的命令字符串。

单独还是不与“本地”没有特别的关系,原始命令是chef-solochef-client