티스토리 뷰
docker & k8s/helm chart
[helm chart] range 하위에서 include 사용시 오류 해결 방법 : error calling include
정선생 2024. 8. 21. 20:00반응형
helm template 명령어로 확인하려고 했는데 아래와 같이 알수 없는 오류가 발생했다.
결론부터 말하면, range 하위에 include 를 썼는데 이때 영향을 받았던 문제였다.
Error: render error in "...deployment.yaml": template: ...deployment.yaml:81:16: executing "...deployment.yaml" at <include "sample.kerberos" .>: error calling include: template: sample/templates/_helpers.tpl:166:8: executing "sample.kerberos" at <include "is_security_kerberos" .>: error calling include: template: sample/templates/_helpers.tpl:100:25: executing "is_security_kerberos" at <include "sample_config" .>: error calling include: template: sample/templates/_helpers.tpl:67:61: executing "sample_config" at <.Values.profile>: can't evaluate field Values in type string
해결방법
우선 range 문을 쓰게되면 . 이 특별한 의미를 같게 된다. 그래서 incldue 하는곳에서 . 을 쓰면 문제가 발생된다.
이를 회피하는방법은 . 을 $ 로 바꿔주면 된다. 예시로 설명하면 아래와 같다.
before
{{ range $clusterName, $clusterPrincipal := $clusterDict }}
...
{{- include "sample.kerberos" . | nindent 12 }}
...
{{- end }}
after
{{ range $clusterName, $clusterPrincipal := $clusterDict }}
...
{{- include "sample.kerberos" $ | nindent 12 }}
...
{{- end }}
한참 헤멨는데 이렇게 해결했다. 끝
반응형
'docker & k8s > helm chart' 카테고리의 다른 글
[Helm 2.x] ConfigMap 에 서브폴더가 있는 파일을 마운트하기 (1) | 2024.10.18 |
---|---|
[Helm Chart] 문자열에서 "파일명" 혹은 "파일경로" 만 추출하기 (0) | 2024.06.21 |
[Helm Chart] 파일에 선언한 값을 dict 로 만들어 사용하기 (0) | 2024.06.20 |
[Helm Chart] 파일을 include 와 values.yaml 바인딩 같이 하기 (0) | 2024.06.11 |
[Helm Chart] couldn't parse image reference 문제 : float64 문제 (0) | 2024.06.10 |
댓글