matrix
This commit is contained in:
@@ -0,0 +1,115 @@
|
||||
{{ template "validate.config" . }}
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
namespace: {{ $.Release.Namespace }}
|
||||
name: {{ include "dendrite.fullname" . }}
|
||||
labels:
|
||||
{{- include "dendrite.labels" . | nindent 4 }}
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "dendrite.selectorLabels" . | nindent 6 }}
|
||||
replicas: 1
|
||||
strategy:
|
||||
type: {{ $.Values.strategy.type }}
|
||||
{{- if eq $.Values.strategy.type "RollingUpdate" }}
|
||||
rollingUpdate:
|
||||
maxSurge: {{ $.Values.strategy.rollingUpdate.maxSurge }}
|
||||
maxUnavailable: {{ $.Values.strategy.rollingUpdate.maxUnavailable }}
|
||||
{{- end }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
{{- include "dendrite.selectorLabels" . | nindent 8 }}
|
||||
annotations:
|
||||
confighash: secret-{{ .Values.dendrite_config | toYaml | sha256sum | trunc 32 }}
|
||||
spec:
|
||||
volumes:
|
||||
- name: {{ include "dendrite.fullname" . }}-conf-vol
|
||||
secret:
|
||||
secretName: {{ include "dendrite.fullname" . }}-conf
|
||||
- name: {{ include "dendrite.fullname" . }}-signing-key
|
||||
secret:
|
||||
secretName: {{ default (print ( include "dendrite.fullname" . ) "-signing-key") $.Values.signing_key.existingSecret | quote }}
|
||||
{{- if (gt (len ($.Files.Glob "appservices/*")) 0) }}
|
||||
- name: {{ include "dendrite.fullname" . }}-appservices
|
||||
secret:
|
||||
secretName: {{ include "dendrite.fullname" . }}-appservices-conf
|
||||
{{- end }}
|
||||
- name: {{ include "dendrite.fullname" . }}-jetstream
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ default (print ( include "dendrite.fullname" . ) "-jetstream-pvc") $.Values.persistence.jetstream.existingClaim | quote }}
|
||||
- name: {{ include "dendrite.fullname" . }}-media
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ default (print ( include "dendrite.fullname" . ) "-media-pvc") $.Values.persistence.media.existingClaim | quote }}
|
||||
- name: {{ include "dendrite.fullname" . }}-search
|
||||
persistentVolumeClaim:
|
||||
claimName: {{ default (print ( include "dendrite.fullname" . ) "-search-pvc") $.Values.persistence.search.existingClaim | quote }}
|
||||
{{- with .Values.extraVolumes }}
|
||||
{{ . | toYaml | nindent 6 }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
{{- include "image.name" . | nindent 8 }}
|
||||
args:
|
||||
- '--config'
|
||||
- '/etc/dendrite/dendrite.yaml'
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: 8008
|
||||
protocol: TCP
|
||||
{{- if $.Values.dendrite_config.global.profiling.enabled }}
|
||||
env:
|
||||
- name: PPROFLISTEN
|
||||
value: "localhost:{{- $.Values.dendrite_config.global.profiling.port -}}"
|
||||
{{- end }}
|
||||
env:
|
||||
- name: HTTPS_PROXY
|
||||
value: "socks5://proxy:1080"
|
||||
resources:
|
||||
{{- toYaml $.Values.resources | nindent 10 }}
|
||||
volumeMounts:
|
||||
- mountPath: /etc/dendrite/
|
||||
name: {{ include "dendrite.fullname" . }}-conf-vol
|
||||
- mountPath: /etc/dendrite/secrets/
|
||||
name: {{ include "dendrite.fullname" . }}-signing-key
|
||||
{{- if (gt (len ($.Files.Glob "appservices/*")) 0) }}
|
||||
- mountPath: /etc/dendrite/appservices
|
||||
name: {{ include "dendrite.fullname" . }}-appservices
|
||||
readOnly: true
|
||||
{{ end }}
|
||||
- mountPath: {{ .Values.dendrite_config.media_api.base_path }}
|
||||
name: {{ include "dendrite.fullname" . }}-media
|
||||
- mountPath: {{ .Values.dendrite_config.global.jetstream.storage_path }}
|
||||
name: {{ include "dendrite.fullname" . }}-jetstream
|
||||
- mountPath: {{ .Values.dendrite_config.sync_api.search.index_path }}
|
||||
name: {{ include "dendrite.fullname" . }}-search
|
||||
{{- with .Values.extraVolumeMounts }}
|
||||
{{ . | toYaml | nindent 8 }}
|
||||
{{- end }}
|
||||
livenessProbe:
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 5
|
||||
failureThreshold: 10
|
||||
httpGet:
|
||||
path: /_dendrite/monitor/health
|
||||
port: http
|
||||
readinessProbe:
|
||||
initialDelaySeconds: 10
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 5
|
||||
failureThreshold: 10
|
||||
httpGet:
|
||||
path: /_dendrite/monitor/health
|
||||
port: http
|
||||
startupProbe:
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 10
|
||||
timeoutSeconds: 5
|
||||
failureThreshold: 10
|
||||
httpGet:
|
||||
path: /_dendrite/monitor/up
|
||||
port: http
|
||||
Reference in New Issue
Block a user