我正在制作一个简单的食谱,apt-get 可以升级整个系统。
include_recipe "apt"
execute "apt-get upgrade -y" do
command "apt-get upgrade -y"
action :nothing
end
但它永远不会运行:
chef-solo -j node.json -W
Recipe: up2date::default
* execute[apt-get upgrade -y] action nothing[2012-11-12T13:05:04+01:00]
INFO: Processing execute[apt-get upgrade -y]
action nothing (up2date::default line 12) (up to date)
不明白为什么?
有更好/更清洁的方法吗?
最佳答案
如果您包含“apt”配方,则不必创建 execute[apt-get upgrade -y] 资源。或者,如果您不想包含“apt”配方,请使用
execute "apt-get upgrade -y" do
command "apt-get upgrade -y"
action :run
end
但是由于 run 是默认操作,而 name 是默认命令,因此可以缩短为
execute "apt-get upgrade -y"
关于chef-infra - Recipe 未在 Chef 中执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13343416/