add loop helm chart
This commit is contained in:
101
loop-enterprise-edition/templates/deployment-loop-jobserver.yaml
Normal file
101
loop-enterprise-edition/templates/deployment-loop-jobserver.yaml
Normal file
@@ -0,0 +1,101 @@
|
||||
{{- 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 -}}
|
||||
Reference in New Issue
Block a user