82bb179bc2
* root: make global email settings configurable * stages/email: add use_global_settings * stages/email: add test_email command to test email sending * stages/email: update email template * stages/email: simplify email template path * stages/email: add support for user-supplied email templates * stages/email: add tests for sending and templates * stages/email: only add custom template if permissions are correct * docs: add custom email template docs * root: add /templates volume in docker-compose by default * stages/email: fix form not allowing custom templates * stages/email: use relative path for custom templates * stages/email: check if all templates exist on startup, reset * docs: add global email docs for docker-compose * helm: add email config to helm chart * helm: load all secrets with env prefix * helm: move s3 and smtp secret to secret * stages/email: fix test for relative name * stages/email: add argument to send email from existing stage * stages/email: set uid using slug of message id * stages/email: ensure template validation ignores migration runs * docs: add email troubleshooting docs * stages/email: fix long task_name breaking task list
78 lines
2.7 KiB
YAML
78 lines
2.7 KiB
YAML
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: {{ include "authentik.fullname" . }}-worker
|
|
labels:
|
|
app.kubernetes.io/name: {{ include "authentik.name" . }}
|
|
helm.sh/chart: {{ include "authentik.chart" . }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
k8s.goauthentik.io/component: worker
|
|
spec:
|
|
replicas: {{ .Values.workerReplicas }}
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: {{ include "authentik.name" . }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
k8s.goauthentik.io/component: worker
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: {{ include "authentik.name" . }}
|
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
k8s.goauthentik.io/component: worker
|
|
spec:
|
|
{{- if .Values.kubernetesIntegration }}
|
|
serviceAccountName: {{ include "authentik.fullname" . }}-sa
|
|
{{- end }}
|
|
affinity:
|
|
podAntiAffinity:
|
|
preferredDuringSchedulingIgnoredDuringExecution:
|
|
- weight: 1
|
|
podAffinityTerm:
|
|
labelSelector:
|
|
matchExpressions:
|
|
- key: app.kubernetes.io/name
|
|
operator: In
|
|
values:
|
|
- {{ include "authentik.name" . }}
|
|
- key: app.kubernetes.io/instance
|
|
operator: In
|
|
values:
|
|
- {{ .Release.Name }}
|
|
- key: k8s.goauthentik.io/component
|
|
operator: In
|
|
values:
|
|
- worker
|
|
topologyKey: "kubernetes.io/hostname"
|
|
containers:
|
|
- name: {{ .Chart.Name }}
|
|
image: "{{ .Values.image.name }}:{{ .Values.image.tag }}"
|
|
imagePullPolicy: "{{ .Values.image.pullPolicy }}"
|
|
args: [worker]
|
|
envFrom:
|
|
- configMapRef:
|
|
name: "{{ include "authentik.fullname" . }}-config"
|
|
prefix: "AUTHENTIK_"
|
|
- secretRef:
|
|
name: {{ include "authentik.fullname" . }}-secret-key
|
|
prefix: AUTHENTIK_
|
|
env:
|
|
- name: AUTHENTIK_REDIS__PASSWORD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: "{{ .Release.Name }}-redis"
|
|
key: "redis-password"
|
|
- name: AUTHENTIK_POSTGRESQL__PASSWORD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: "{{ .Release.Name }}-postgresql"
|
|
key: "postgresql-password"
|
|
resources:
|
|
requests:
|
|
cpu: 150m
|
|
memory: 400M
|
|
limits:
|
|
cpu: 300m
|
|
memory: 600M
|