如何在子图表之间共享模板值?

时间:2018-11-26 16:53:31

标签: charts kubernetes kubernetes-helm

我制作了一个包含两个子图的图表:

my-chart
├── charts
│   ├── nginxg
│   │   ├── Chart.yaml
│   │   ├── OWNERS
│   │   ├── README.md
│   │   ├── templates
│   │   │   ├── ...
│   │   │   ├── deployment.yaml
│   │   │   ├── _helpers.tpl
│   │   │   └── service.yaml
│   │   └── values.yaml
│   ├── mongo
│   │   ├── Chart.yaml
│   │   ├── OWNERS
│   │   ├── README.md
│   │   ├── templates
│   │   │   ├── mongo-deployment.yaml
│   │   │   ├── mongo-service.yaml
│   │   │   ├── _helpers.tpl
│   │   └── values.yaml
└── values.yaml

在my-chart / charts / mongo / _helpers.tpl中,有定义声明

{{- define "mongodb.fullname" -}}

引用的

具有公开mongo pod和内部yaml文件的服务的名称。

{{ template "mongodb.fullname" . }}

@edit

我想在my-chart / charts / nginx / deployment.yml中使用此值,但是出现错误。错误提示

Error: render error in "nginx/templates/deployment.yaml": template: nginx/templates/deployment.yaml:11:18: executing "nginx/templates/deployment.yaml" at <.Values.service.type>: can't evaluate field type in type interface {}

0 个答案:

没有答案