102 lines
4.4 KiB
YAML
102 lines
4.4 KiB
YAML
{{- if .Values.global.features.jobserver.enabled -}}
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: {{ include "loop-enterprise-edition.jobserver.fullname" . }}
|
|
labels:
|
|
app.kubernetes.io/name: {{ include "loop-enterprise-edition.name" . }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
app.kubernetes.io/component: {{ .Values.global.features.jobserver.name }}
|
|
helm.sh/chart: {{ include "loop-enterprise-edition.chart" . }}
|
|
spec:
|
|
replicas: {{ .Values.global.features.jobserver.replicaCount }}
|
|
{{- with .Values.global.features.jobserver.strategy }}
|
|
strategy:
|
|
{{- . | toYaml | nindent 4 }}
|
|
{{- end }}
|
|
revisionHistoryLimit: {{ .Values.global.features.jobserver.revisionHistoryLimit }}
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: {{ include "loop-enterprise-edition.name" . }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
app.kubernetes.io/component: {{ .Values.global.features.jobserver.name }}
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: {{ include "loop-enterprise-edition.name" . }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
app.kubernetes.io/component: {{ .Values.global.features.jobserver.name }}
|
|
helm.sh/chart: {{ include "loop-enterprise-edition.chart" . }}
|
|
annotations:
|
|
{{- if .Values.loopApp.extraPodAnnotations }}
|
|
{{- .Values.loopApp.extraPodAnnotations | toYaml | nindent 8 }}
|
|
{{- end }}
|
|
spec:
|
|
{{- if .Values.global.features.jobserver.nodeSelector }}
|
|
nodeSelector:
|
|
{{- toYaml .Values.global.features.jobserver.nodeSelector | nindent 8 }}
|
|
{{- end }}
|
|
{{- if .Values.global.features.jobserver.affinity }}
|
|
affinity:
|
|
{{- toYaml .Values.global.features.jobserver.affinity | nindent 8 }}
|
|
{{- end }}
|
|
{{- if .Values.global.features.jobserver.tolerations }}
|
|
tolerations:
|
|
{{- toYaml .Values.global.features.jobserver.tolerations | nindent 6 }}
|
|
{{- end }}
|
|
{{- if .Values.loopApp.securityContext }}
|
|
securityContext:
|
|
{{- toYaml .Values.loopApp.securityContext | nindent 8 }}
|
|
{{- end }}
|
|
initContainers:
|
|
- name: "init-loop-app"
|
|
image: "{{ .Values.initContainerImage.repository }}:{{ .Values.initContainerImage.tag }}"
|
|
imagePullPolicy: {{ .Values.initContainerImage.imagePullPolicy }}
|
|
command: [
|
|
"sh",
|
|
"-c",
|
|
"until curl --max-time 5 http://{{ include "loop-enterprise-edition.fullname" . }}.{{ .Release.Namespace }}:{{ .Values.loopApp.service.internalPort }}/api/v4/system/ping ; do echo waiting for LOOP App come up; sleep 5; done; echo init-loop-app finished"
|
|
]
|
|
containers:
|
|
- name: {{ include "loop-enterprise-edition.name" . }}-jobserver
|
|
image: "{{ .Values.loopApp.image.repository }}:{{ .Values.loopApp.image.tag }}"
|
|
imagePullPolicy: {{ .Values.loopApp.image.pullPolicy }}
|
|
command: ["mattermost", "jobserver"]
|
|
env:
|
|
- name: MM_CONFIG
|
|
valueFrom:
|
|
secretKeyRef:
|
|
{{- if .Values.global.features.database.existingDatabaseSecret }}
|
|
name: {{ .Values.global.features.database.existingDatabaseSecret.name }}
|
|
key: {{ .Values.global.features.database.existingDatabaseSecret.key }}
|
|
{{- else }}
|
|
name: {{ include "loop-enterprise-edition.fullname" . }}-loop-dbsecret
|
|
key: loop.dbsecret
|
|
{{- end }}
|
|
{{- with .Values.global.features.jobserver.extraEnv }}
|
|
{{- toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
volumeMounts:
|
|
{{- if .Values.global.existingLicenseSecret.name }}
|
|
- mountPath: /mattermost/{{.Values.global.existingLicenseSecret.key }}
|
|
name: loop-license
|
|
subPath: {{.Values.global.existingLicenseSecret.key }}
|
|
{{- else }}
|
|
- mountPath: /mattermost/loop.loop-license
|
|
name: loop-license
|
|
subPath: loop.loop-license
|
|
{{- end }}
|
|
volumes:
|
|
- name: loop-license
|
|
secret:
|
|
{{- if .Values.global.existingLicenseSecret.name }}
|
|
secretName: {{ .Values.global.existingLicenseSecret.name }}
|
|
{{- else }}
|
|
secretName: {{ include "loop-enterprise-edition.fullname" . }}-loop-license
|
|
{{- end }}
|
|
|
|
{{- end -}}
|