我正在使用go模板爲kubernetes創建yaml定義。我試圖嵌套模板,但遇到問題,因爲包含時縮進是錯誤的,我無法重新使用定義。也就是說,在一種情況下,內容需要縮進,而不是另一種。我如何控制包含內容的縮進?go模板:如何縮進包含模板的內容
下面的示例。我正在重複使用pod.tmpl,在第一種情況下,它可以按原樣包含在內。在第二種情況下,我需要使它成爲服務
{{ if (eq .Case "pod")
# NO indenting
{{ template "pod" }}
{{ end }}
{{ if (eq .Case "service")
service:
# need to indent! so contents become members of service:
{{ template "pod" }}
{{ end }}
爲什麼不使用YAML解析器而不是通用文本模板引擎?在我看來,你在這裏使用的是錯誤的工具。這就是說,如果你不想要空格,那麼......不要鍵入它們? – Carpetsmoker