Skip to content

Instantly share code, notes, and snippets.

@loperd
Created March 21, 2023 13:54
Show Gist options
  • Save loperd/1e7866c67d42b316930bbafad2cad43b to your computer and use it in GitHub Desktop.
Save loperd/1e7866c67d42b316930bbafad2cad43b to your computer and use it in GitHub Desktop.
Helm Deployment
{{- range $service := (list "frontend" "temporal-worker" "backend") }}
{{- $serviceValues := index $.Values $service -}}
{{- toYaml $serviceValues }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "monoplace.componentname" (list $ $service) }}
labels:
helm.sh/chart: {{ include "monoplace.chart" $ }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/version: {{ $.Chart.AppVersion | replace "+" "_" }}
app.kubernetes.io/component: {{ $service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }}
spec:
replicas: {{ default $.Values.base.replicaCount $serviceValues.replicaCount }}
selector:
matchLabels:
app.kubernetes.io/name: {{ include "monoplace.name" $ }}
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/component: {{ $service }}
template:
metadata:
labels:
app.kubernetes.io/name: {{ include "monoplace.name" $ }}
helm.sh/chart: {{ include "monoplace.chart" $ }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/version: {{ $.Chart.AppVersion | replace "+" "_" }}
app.kubernetes.io/component: {{ $service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{- with (default $.Values.base.podLabels $serviceValues.podLabels) }}
{{- toYaml . | nindent 8 }}
{{- end }}
annotations:
{{- with (default $.Values.base.podAnnotations $serviceValues.podAnnotations) }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{ include "monoplace.serviceAccount" $ }}
{{- with $.Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ include "monoplace.serviceAccountName" $ }}
securityContext:
{{- toYaml (default $.Values.base.podSecurityContext $serviceValues.podSecurityContext) | nindent 8 }}
containers:
- name: {{ $.Chart.Name }}-{{ $service }}
image: "{{ $serviceValues.image.registry }}/{{ $serviceValues.image.name }}:{{ $serviceValues.image.tag }}"
imagePullPolicy: {{ $serviceValues.image.pullPolicy }}
securityContext:
{{- toYaml (default $.Values.base.securityContext $serviceValues.securityContext) | nindent 12 }}
{{- if (default $.Values.base.config.enabled $serviceValues.config.enabled) }}
envFrom:
- configMapRef:
name: "{{ include "monoplace.componentname" (list $ $service) }}-config"
{{- end }}
{{- if (default $.Values.base.secret.enabled $serviceValues.secret.enabled) }}
volumeMounts:
- name: secret
mountPath: {{ include "monoplace.secretstorage" $service }}
readOnly: true
{{- end }}
{{- with (default $.Values.base.env $serviceValues.env) }}
env:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with (default $.Values.base.container.ports $serviceValues.container.ports) }}
ports:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with (default $.Values.base.resources $serviceValues.resources) }}
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with (default $.Values.base.livenessProbe $serviceValues.livenessProbe) }}
livenessProbe:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with (default $.Values.base.readinessProbe $serviceValues.readinessProbe) }}
readinessProbe:
{{- toYaml . | nindent 12 }}
{{- end }}
volumes:
{{- if (default $.Values.base.secret.enabled $serviceValues.secret.enabled) }}
- name: secret
secret:
secretName: "{{ include "monoplace.componentname" (list $ $service) }}-secret"
{{- end }}
{{- if (default $.Values.base.config.enabled $serviceValues.config.enabled) }}
- name: config
configMap:
name: "{{ include "monoplace.componentname" (list $ $service) }}-config"
{{- end }}
{{- with (default $.Values.base.nodeSelector $serviceValues.nodeSelector) }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with (default $.Values.base.affinity $serviceValues.affinity) }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with (default $.Values.base.tolerations $serviceValues.tolerations) }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- end }}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment