2014-05-22 57 views
4

我有一個廚師的食譜,安裝軟件包在一個循環:如何停止廚師食譜循環中的資源克隆?

pkgs.each do |pkg| 
    yum_package "tools" do 
    package_name pkg 
    action :install 
    end 
end 

這個配方是拋出但是以下錯誤:

[2014-05-22T08:26:13-04:00] WARN: Cloning resource attributes for yum_package[tools] from prior resource (CHEF-3694) 
[2014-05-22T08:26:13-04:00] WARN: Previous yum_package[tools]: /var/chef/cache/cookbooks/tools/recipes/default.rb:9:in `block in from_file' 

最終,this feature is going to be removed。所以,我需要找到一種方法來正確循環廚師食譜而不會引發這種警告;到目前爲止,我還沒有嘗試弄清楚這一點;我想知道是否有其他人有解決方案?

回答

3

我唯一解決問題的循環進行的資源:

ops_pkgs.each do |pkg| 
    yum_package "tools #{pkg}" do 
    package_name pkg 
    action :install 
    end 
end 
+0

是的,這是有效的,但你做事情比你更復雜。 – StephenKing

+0

這和我的答案完全一樣。 – sethvargo

9

package_name的name屬性。只需執行以下操作:

ops_pkgs.each do |pkg| 
    yum_package pkg 
end 

您甚至不需要阻止,因爲action :install是默認操作。