2016-12-12 3 views
1

tomcat (요리 책 이름 = 'my_tomcat')을 다운로드하기 위해 요리 책을 썼습니다. 리소스가 모든 것을 수행하고 (리소스 이름 'default.rb') 레시피가 없습니다. 다른 요리 책에서는이 리소스를 호출하여 tomcat을 다운로드합니다.요리사 : 요리법없이 요리 책 테스트

이 tomcat 요리 책을 테스트하려면 test/cookbooks/test/recipes/default.rb에 테스트 요리 책을 작성하고 내 요리 책의 berksfile에 종속성을 추가했습니다. 나는 부엌 테스트를 실행하면 , 그것은 나를 내가 잘못 여기서 뭐하는 거지 알려 주시기 바랍니다 오류 -

================================================================================ 
Recipe Compile Error in /tmp/kitchen/cache/cookbooks/test/recipes/default.rb 
================================================================================ 

    NoMethodError 
    ------------- 
    No resource or method named `my_tomcat' for `Chef::Recipe "default"' 

    Cookbook Trace: 
    --------------- 
    /tmp/kitchen/cache/cookbooks/test/recipes/default.rb:3:in `from_file' 

    Relevant File Content: 
    ---------------------- 
    /tmp/kitchen/cache/cookbooks/test/recipes/default.rb: 

    1: package 'java-1.7.0-openjdk' 
    2: 
    3>> my_tomcat '/apps/tools/apache' do 
    4: version '7.0.32' 
    5: end 
    6: 

아래에 나와 있습니다. 어디서나 변경해야합니까?

답변

1

귀하의 요리 책 test은 귀하의 my_tomcat 요리 책에 대한 의존성을 지정해야하며, 따라서 사전에 자원이로드됩니다.

+0

내 테스트 요리 책 metadata.rb-에 'my_tomcat'을 추가했습니다. 다른 곳에서도 추가해야하나요? – user6378152

+0

다른 곳에서 무엇을 넣었는지 모르겠습니다. 'Berksfile'에 _test_ 요리 책을 가리키는'cookbook' 줄이 있습니다, 그것은 이미 좋은 시작입니다. 코드의 더 많은 부분을 제공하십시오. – StephenKing

+0

내 소스 'somesource' 메타 데이터 요리 책 '테스트'라인 - berksfile 경로 : '테스트/요리 책/테스트' – user6378152

0

No resource or method은 몇 가지 중 하나를 의미 할 수 있습니다. 가장 먼저해야 할 일은 테스트 요리 책의 Berksfile에있는 요리 책에 대한 의존성을 선언하는 동시에 테스트 요리 책의 metadata.rb 파일에 depends 'cookbook'을 추가하는 것입니다.

오류가 지속되면 다음으로 확인해야 할 것은 주 요리 책에 맞춤 리소스를 올바르게 지정했는지 확인하는 것입니다.

먼저 문제를 해결하지 못하면 테스트 요리 책의 Berksfilemetadata.rb의 내용을 기본 요리 책의 사용자 지정 리소스 파일 내용과 함께 원본 질문에 추가하십시오.

관련 문제