12
A
回答
15
當您創建包裝食譜時,通常會覆蓋屬性。
假設你my_web_server與my_web_server/recipes/default.rb
這樣的食譜:
include_recipe "apache2"
你想覆蓋從Apache2的食譜default_site_enabled屬性。 然後你的文件my_web_server/attributes/default.rb
應該是這樣的:
override['apache']['default_site_enabled'] = true
而且不要忘記在my_web_server/metadata.rb
指定喜歡的依賴關係:
depends "apache2"
5
佔優屬性我經常使用的角色。
說我有兩個食譜,一個是我的sweet_rails_app,一個是安裝/配置Apache和乘客來安裝我的應用程序的頂部。
在我sweet_rails_app_cookbook我可能有:
# coding: UTF-8
# Cookbook Name:: sweet_rails_app
# Recipe:: default
include_recipe 'apache_passenger_cookbook::default'
... # recipe code
兩個食譜設定在任食譜默認級別的所有屬性。
# coding: UTF-8
name 'sweet_rails_app'
description 'Deploys Sweet Rails App'
run_list "recipe[sweet_rails_app_cookbook]"
base_dir = '/opt/sweet_rails_app'
override_attributes(
sweet_rails_app: {
base_dir: base_dir,
... # more override attributes
},
apache_passenger: {
document_root: base_dir
}
)
然後,角色就是我需要添加到節點run_list的所有東西。這也有控制兩個食譜的執行順序的額外好處。
相關問題
- 1. 廚師,覆蓋屬性並不適用於配方
- 2. 廚師屬性不會覆蓋
- 3. 廚師 - 覆蓋節點屬性
- 4. 覆蓋廚師的默認屬性和從屬屬性
- 5. 廚師屬性沒有被覆蓋計算屬性
- 6. 什麼是覆蓋廚師食譜屬性的正確方法?
- 7. 廚師多層次與作用JSON屬性文件覆蓋
- 8. 如何覆蓋廚師的默認節點屬性
- 9. 用廚師的菜譜食譜動態覆蓋屬性
- 10. 廚師:我如何覆蓋角色中的默認屬性?
- 11. 不能覆蓋廚師環境下的食譜屬性
- 12. 廚師覆蓋食譜的默認屬性
- 13. 從廚師配方
- 14. Jekyll廚師配方
- 15. 廚師包資源的「源」屬性
- 16. 從配方創建廚師數據包
- 17. 廚師 - 重複性配方執行
- 18. 廚師屬性值重用
- 19. 廚師屬性文件
- 20. 廚師食譜 - 在屬性
- 21. 廚師的屬性解析
- 22. 廚師屬性結構
- 23. 重寫廚師的屬性
- 24. 廚師屬性的另一個屬性
- 25. 參數化廚師配方
- 26. 寫作廚師配方
- 27. 簡單的廚師資源不包括
- 28. 如何從配方中設置廚師環境屬性
- 29. 廚師獨奏nginx的配方在我的屬性
- 30. 如何在使用角色的廚師中覆蓋默認屬性
這是否只適用於廚師服務器? Chef solo使用Chef 12.0.3似乎不適合我。 – Noz 2014-12-19 17:39:57
非常感謝您的支持,需要一些類似的信息來覆蓋chef_nginx食譜上的屬性。 – WhyAyala 2017-02-03 22:24:14