【发布时间】:2020-01-26 08:11:56
【问题描述】:
我有一个如下的 go 模板
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "mychart.fullname" . }}
labels:
app.kubernetes.io/name: {{ include "mychart.name" . }}
helm.sh/chart: {{ include "mychart.chart" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
app.kubernetes.io/name: {{ include "mychart.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "mychart.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
spec:
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
<-------------------------- Here --------------------------------->
ports:
- name: http
containerPort: 80
protocol: TCP
livenessProbe:
httpGet:
path: /
port: http
readinessProbe:
httpGet:
path: /
port: http
resources:
{{- toYaml .Values.resources | nindent 12 }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
我想在其中添加以下代码,就在 imagePullPolicy 行的下方。有什么想法吗?
env:
- name: NODE_ENV
value: "{{ .Values.node_env }}"
背景: 上面这段代码 sn -p 是 helm 生成的 deployment.yaml 文件,用于将应用部署到 kubernetes。 基本上我想要实现的是制作一个可以在 helm chart 中设置所有这些东西的脚本,因此可以一次性完成添加环境变量之类的事情。
【问题讨论】:
-
那些
includes 在我的例子中抛出了错误。你是defining that function yourself吗? -
有什么理由不使用
helm install --set foo=$BAR? -
@MarkusWMahlberg 是的,我希望 helm 部署文件中也有更改
-
哦,我明白了,这不是“go template”,而是“helm template”。看起来this answer 可能就是你想要的