apiVersion: apps/v1 kind: Deployment metadata: name: {{ .Values.appName }}-deployment spec: selector: matchLabels: app: {{ .Values.appName }} replicas: 1 template: metadata: labels: app: {{ .Values.appName }} spec: initContainers: - name: {{ .Values.appName }}-vault-init image: {{ .Values.vaultImage }} env: - name: MOUNT_PATH value: {{ .Values.vaultMountPath }} - name: SECRET_NAME value: {{ .Values.vaultSecretName }} volumeMounts: - name: vault mountPath: {{ .Values.vaultMountPath }} containers: - name: {{ .Values.appName }} image: {{ .Values.imageRegistry }}/{{ .Values.appName }}:{{ .Values.appVersion }} imagePullPolicy: Always ports: - containerPort: 3000 volumeMounts: - name: vault mountPath: {{ .Values.vaultMountPath }} imagePullSecrets: - name: {{ .Values.imagePullSecret }} volumes: - name: vault emptyDir: {}