2 min readMar 8, 2020
I’ve got an error when I tried to put volume statement at deployment.yaml and run helm upgrade.
UPGRADE FAILEDError: YAML parse error on what-the-helm/templates/deployment.yaml: error converting YAML to JSON: yaml: line 54: mapping values are not allowed in this contextError: UPGRADE FAILED: YAML parse error on what-the-helm/templates/deployment.yaml: error converting YAML to JSON: yaml: line 54: mapping values are not allowed in this context
My deployment.yaml looks like:
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "what-the-helm.fullname" . }}
labels:
{{ include "what-the-helm.labels" . | indent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
app.kubernetes.io/name: {{ include "what-the-helm.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "what-the-helm.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ template "what-the-helm.serviceAccountName" . }}
securityContext:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: 80
protocol: TCP
livenessProbe:
httpGet:
path: /
port: http
readinessProbe:
httpGet:
path: /
port: http
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumeMounts:
- name: nginx
mountPath: /usr/share/nginx/html
volumes:
- name: nginx
configMap:
name: nginx-configmap
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}