2013-05-14 3 views
3

내 Puppet 모듈 중 하나의 템플릿에 하위 템플릿을 포함하려고합니다. 다음은 기본 템플릿에 포함 된 내용입니다.Puppet 템플릿에 하위 템플릿을 포함하는 방법

<% 
    def import(fname) 
    erb = 
     File.open(File.dirname(__FILE__) + "/" + fname) { |fp| ERB.new(fp.read) } 
    erb.run 
    end 
%> 

<%= import("subtemplate.erb") %> 

erb 명령 줄 도구로 렌더링하면 정상적으로 작동합니다. 그러나 Puppet 실행 중에 가져 오기는 자동으로 무시됩니다. 즉 기본 템플릿은 렌더링 된 하위 템플릿이 있어야하는 빈 줄로 렌더링됩니다. 생성 된 오류가 없습니다.

내가 뭘 잘못하고 있니? 감사! 대해 어떻게

답변

5

:

<%= scope.function_template("subtemplate.erb") %> 
+0

감사 ! 귀하의 제안은 즉시 작동하지는 않았지만 그것을 구축 할 수 있었고 결국 : <% = scope.function_template (File.dirname (__ FILE__) + "/"+ "subtemplate.erb") %>'이유 원래 템플리트가 modules/templates 디렉토리 내의 하위 디렉토리에 중첩되어 있기 때문에 pwd를 앞에 붙여야했습니다. – svintus

+0

답변 해 주셔서 감사합니다! 나는 빠른 질문이있다; 거기에있는 방법을 부제에 대한 호출을 추가하는 subtemplate.erb 파일의 헤더 주석을 피하기 위해인가? subtemplate.erb에서 라이센스 헤더에 사용할 형식은 무엇입니까? 감사! – imesh

관련 문제