2015-01-07 149 views
0

我已經編寫了簡單的配方,這裏是在節點中創建一個目錄。但它運行廚師客戶端時顯示錯誤。無法在節點中創建目錄

目錄 「〜/編譯」 做

行動:建立

* Parent directory ~ does not exist, cannot create ~/build 
================================================================================ 
Error executing action `create` on resource 'directory[~/build]' 
================================================================================ 

Chef::Exceptions::EnclosingDirectoryDoesNotExist 
------------------------------------------------ 
Parent directory ~ does not exist, cannot create ~/build 

感謝您的寶貴意見。

+0

它〜因爲〜符號。我認爲你需要使用..而不是那 – qamar

+0

,但通常可以使用此命令使目錄:mkdir〜/ build爲什麼不在廚師? – VVijay

+0

因爲'〜'是$ HOME的* shell *快捷鍵。 Ruby對'〜'沒有特殊的含義,所以用'$ HOME'代替它,它會在運行chef的用戶的home(通常是root)中創建目錄。 – Tensibai

回答

0

~$HOME在ruby中沒有意義,它們在shell上下文中沒有問題。

directory "#{ENV['HOME']}/build"會更好。

它將在運行廚師的用戶的主目錄中創建目錄。