deploy-templates/templates/deployment.yaml (60 lines of code) (raw):

apiVersion: apps/v1 kind: Deployment metadata: name: {{ .Chart.Name }} labels: app: {{ .Chart.Name }} spec: selector: matchLabels: app: {{ .Chart.Name }} replicas: {{ .Values.replicaCount }} strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: annotations: sidecar.istio.io/inject: "true" labels: app: {{ .Chart.Name }} collect.logs: "json" spec: containers: - name: {{ .Chart.Name }} image: "{{ .Values.image.name }}:{{ .Values.image.version }}" imagePullPolicy: IfNotPresent ports: - containerPort: {{ .Values.service.port }} name: http livenessProbe: httpGet: path: {{ .Values.probes.liveness.path }} port: {{ .Values.service.port }} failureThreshold: 10 initialDelaySeconds: 65 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 5 readinessProbe: httpGet: path: {{ .Values.probes.readiness.path }} port: {{ .Values.service.port }} failureThreshold: 10 initialDelaySeconds: 65 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 5 resources: requests: memory: 1Gi volumeMounts: - name: {{ .Chart.Name }} mountPath: {{ .Values.appConfigMountPath }} serviceAccountName: {{ .Values.serviceAccount.name }} volumes: - name: {{ .Chart.Name }} configMap: name: {{ .Chart.Name }}