2016-01-08 35 views
1

我已經寫了一個廚師的食譜,這將創建2個用戶。我想告訴廚師客戶基於標籤創建一個或兩個用戶(這在Ansible中是可行的)我想在廚師中實現它。我們可以告訴廚師客戶端運行特定資源嗎?

方藥:用戶

user 'user1' do 
    comment 'A random user1' 
    uid '1234' 
    gid '1234' 
    home '/home/random' 
    shell '/bin/bash' 
    password '$1$JJsvHslasdfjVEroftprNn4JHtDi' 
end 
user 'user2' do 
    comment 'A random user2' 
    uid '1234' 
    gid '1234' 
    home '/home/random' 
    shell '/bin/bash' 
    password '$1$JJsvHslasdfjVEroftprNn4JHtDi' 
end 

在我用戶食譜,我有兩個資源user1user2。 我已經推出了EC2,我想運行用戶配方,但我不希望在EC2上創建這兩個用戶。

同樣,在我的組織中,我們有200名員工,我們不希望在新推出的EC2上創建所有用戶。請指導如何管理用戶創建,廚師標準。

+2

是的,你可以。請更準確地說明你已經嘗試了什麼。 – StephenKing

+0

如果您想控制您的環境中的用戶,請考慮使用社區「用戶」菜譜。它使用數據庫來控制用戶設置。 –

回答

0

沒有像Ansible或Salt這樣的特定功能。您可以使用覆蓋運行列表來指定一次只能使用一次的運行列表,但並非所有的烹飪書籍都能很好地運行。如果你想寫你的Ruby代碼來實現這一點,你完全可以。

unless tag?('thingy') 
    user 'one' 
    user 'two' 
end 
user 'three' 
0

除了上述的答案,這聽起來好像是你需要尋找到從users菜譜,創建所有用戶在一個特定的組users_manage資源。 然後,您可以爲每個環境設置一個不同的組名,並控制該組中的哪些用戶,例如通過使用不同的數據包。