4

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)

理由がわからない?

より良い/よりクリーンな方法はありますか?

4

1 に答える 1

3

「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"
于 2012-11-12T12:20:02.393 に答える