我尝试使用Chef :: Config ['solo']仅在本地运行时才执行操作,例如运行厨房测试。但是,当在另一台主机上运行时,它仍然会安装epel-release软件包,我不希望这样做。这是一个错误,还是我在这里错过了一些东西?
# added to pass kitchen test
package 'epel-release' do
action :upgrade
only_if Chef::Config['solo']
end
答案 0 :(得分:0)
因为您的意思是only_if { Chef::Config['solo'] }
。如果没有{}
,它将被解释为要运行的命令字符串。
单独还是不与“本地”没有特别的关系,原始命令是chef-solo
和chef-client
。