是否可以有一个必需的.Value
而不使用它在模板中。
例如,在我的例子中,我想要求为mongodb的子图写一个密码,但我不会在我的模板上使用它,所以我可以在模板中有类似bellow的东西:
{{- required 'You must set a mongodb password' .Values.mongodb.mongodbPassword | noPrint -}}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "cloud.fullname" . }}
labels:
{{- include "cloud.labels" . | nindent 4 }}
app.kubernetes.io/component: cloud
spec:
replicas: {{ .Values.cloud.minReplicaCount }}
selector:
....
结果会是这样的:
apiVersion: apps/v1
kind: Deployment
metadata:
name: blablablabla
...
3条答案
按热度按时间cvxl0en21#
可能最直接的方法是使用sprig的
fail
函数。将
required
表达式转换为一个变量(您从未使用过)可能也会达到预期的效果。wfypjpf42#
是的,有可能。让我们考虑下面的
Values.yaml
文件:Values.yaml:
因此,您希望仅在设置了密码的情况下才生成部署文件。你可以使用
if-block
的go-templating。如果密码字段的长度大于零,将生成部署yaml,否则不生成。参考:
klr1opcd3#
只是分配给一个未使用的变量