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