如何使用 Helm 库图表包含多文档文件

问题描述 投票:0回答:1

我有一个非常基本的 Helm 库图表,只有 1 个文件:

├── Chart.yaml
├── charts
└── templates
    ├── _jobs.yaml
{{- define "library.jobs.tpl" -}}
apiVersion: batch/v1
kind: Job
metadata:
  name: job-1
  ...
---
apiVersion: batch/v1
kind: Job
metadata:
  name: job-2
  ...
---
apiVersion: batch/v1
kind: Job
metadata:
  name: job-3
  ...
{{- end -}}

在下游图表中,我在

library.yaml
中这样使用它:

{{- template "library.jobs" -}}

问题是

helm template
仅渲染第一个文档/对象 (
job-1
) 而不是其余的。

$ helm template -s templates/library.yaml .
---
# Source: mychart/templates/library.yaml
apiVersion: batch/v1
kind: Job
metadata:
  name: job-1
  ...
$

这是为什么呢?我是否遗漏了什么或者这是 Helm 中的潜在错误?

kubernetes-helm
1个回答
0
投票

解决办法是

{{- define "library.jobs.tpl" -}}
---
apiVersion: batch/v1

所以我在模板定义的开头遗漏了一个

---

© www.soinside.com 2019 - 2024. All rights reserved.