0
첫 번째 코드가 0 상태를 반환하는 경우에만 두 번째 코드를 실행하고 싶습니다 (성공).이전 코드 블록 성공시 요리사 레시피 코드 실행
execute 'make dir' do
command 'mkdir foo'
action :run
end
execute 'make dir2' do
command 'mkdir bar'
action :run
end
첫 번째 코드가 0 상태를 반환하는 경우에만 두 번째 코드를 실행하고 싶습니다 (성공).이전 코드 블록 성공시 요리사 레시피 코드 실행
execute 'make dir' do
command 'mkdir foo'
action :run
end
execute 'make dir2' do
command 'mkdir bar'
action :run
end
먼저 디렉토리 생성과 같은 작업에 네이티브 요리사 리소스를 사용해야합니다. Shelling은 가능한 한 많이 피해야합니다. Chef의 멱등수를 우회하는 것, 다른 문제들도 있습니다.
두 번째로, 첫 번째 리소스가 실패하면 chef-client가 종료되므로 리소스에 대한 실패를 무시하는 특성을 추가하지 않는 한 후속 리소스는 분명히 완료되지 않습니다.
그러나, 이것은 당신이 여기에 원하는 아마도 :
directory 'bar' do
action :nothing
end
directory 'foo' do
action :create
notifies :create, 'directory[dir2]', :immediately
ignore_failure true
end
는'ignore_failure' 거의 결코 당신이 – coderanger
그래, 내 생산 물건을 사용하지 않습니다 :) 아무것도 원하는 것입니다,하지만 * 어깨를 으쓱 * –