apiVersion: apps/v1 kind: Deployment metadata: name: {{ .Release.Name }}-frontend labels: {{- include "switchboard.frontend.labels" . | nindent 4 }} spec: replicas: {{ .Values.frontend.replicaCount }} selector: matchLabels: app.kubernetes.io/name: {{ .Chart.Name }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/component: frontend template: metadata: labels: app.kubernetes.io/name: {{ .Chart.Name }} app.kubernetes.io/instance: {{ .Release.Name }} app.kubernetes.io/component: frontend spec: {{- with .Values.imagePullSecrets }} imagePullSecrets: {{- toYaml . | nindent 8 }} {{- end }} containers: - name: frontend image: {{ include "switchboard.frontend.image" . }} imagePullPolicy: {{ .Values.frontend.image.pullPolicy }} ports: - name: http containerPort: {{ .Values.frontend.port }} protocol: TCP env: - name: BACKEND_URL value: "http://{{ .Release.Name }}-backend:{{ .Values.backend.port }}" - name: BASE_PATH value: {{ .Values.basePath | quote }} resources: {{- toYaml .Values.frontend.resources | nindent 12 }} livenessProbe: httpGet: path: /health port: http initialDelaySeconds: 5 periodSeconds: 30 readinessProbe: httpGet: path: /health port: http periodSeconds: 10