2014-07-13 76 views
3

我不確定我是否理解角色應該如何與廚師獨奏一起使用。更具體地講,我尋找答案了以下問題:如何正確使用廚師獨奏角色

(一)什麼是告訴廚師獨奏與一定的作用運行語法?我設法使用:

chef-solo --override-runlist "role["oracle"]" 

但它是「正確」的方式做到這一點(我希望我不會需要「越權」的標準使用的廚師角色的任何東西)?另外,如果我使用這個命令,它是否也加載了我指定的角色的所有屬性,而不僅僅是運行列表?

(二)是否有辦法有從solo.rb引用的「默認」運行列表,然後有部分(或全部)的角色有點「參考」了嗎?我有幾個需要在所有角色和環境下運行的食譜,我寧願將它們複製到我的所有角色json文件(出於可維護性的原因)。

(附註:我在Windows上運行的廚師獨奏,以防它在某種程度上重要...)

回答

7

您可以使用JSON屬性參數廚師獨奏。

運行

chef-solo -c conf.rb -j conf.json 

conf.rb設置菜譜路徑,文件緩存路徑,並且要玩弄任何其他全局設置,並conf.json看起來是這樣的:

{ 
    "some_attr": true, 
    "run_list": [ 
    "role[solo_provisioned_node]", 
    "recipe[mycookbook::myrecipe]" 
    ] 
} 

或你給的例子,只是

{ 
    "run_list": [ 
    "role[oracle]" 
    ] 
}