2017-02-23 56 views
0

如何爲遞歸創建的目錄編寫規範,例如廚師

使用廚師的directory資源創建目錄。

directory '/app/my_app/log' do 
    owner 'myuser' 
    group 'myuser' 
    recursively true 
end 

現在爲此資源編寫規範。

it 'creates directory /app' do 
     expect(chef_run).to create_directory('/app').with(
      user: 'myuser', 
      group: 'myuser' 
     ) 
    end 
it 'creates directory /app/my_app' do 
     expect(chef_run).to create_directory('/app/my_app').with(
      user: 'myuser', 
      group: 'myuser' 
     ) 
    end 
it 'creates directory /app/my_app/log' do 
     expect(chef_run).to create_directory('/app/my_app/log').with(
      user: 'myuser', 
      group: 'myuser' 
     ) 
    end 

這是怎麼寫的規格?我想知道我是否做錯了,如果是的話,你會怎麼做?

謝謝!

回答

1

您只需檢查recursive: true,就像您在with()調用中針對usergroup一樣。沒有爲介入目錄創建的目錄資源,只有一個。

it 'creates directory /app/my_app/log' do 
    expect(chef_run).to create_directory('/app/my_app/log').with(
     user: 'myuser', 
     group: 'myuser', 
     recursive: true, 
    ) 
end