From 909ac9b91144b976b8722427e19c290efadcd129 Mon Sep 17 00:00:00 2001 From: madchr1st Date: Fri, 13 Oct 2023 15:26:01 +0000 Subject: [PATCH] Add mailcatcher templates --- .../_user-am-config-mailcatcher.yaml | 19 ++++++++++++ .../templates/_user-mailcatcher-deploy.yaml | 28 +++++++++++++++++ .../templates/_user-mailcatcher-ingress.yaml | 30 +++++++++++++++++++ .../templates/_user-mailcatcher-svc.yaml | 22 ++++++++++++++ .../user-monitoring/templates/monitoring.yaml | 4 +++ 5 files changed, 103 insertions(+) create mode 100644 charts/user-monitoring/templates/_user-am-config-mailcatcher.yaml create mode 100644 charts/user-monitoring/templates/_user-mailcatcher-deploy.yaml create mode 100644 charts/user-monitoring/templates/_user-mailcatcher-ingress.yaml create mode 100644 charts/user-monitoring/templates/_user-mailcatcher-svc.yaml diff --git a/charts/user-monitoring/templates/_user-am-config-mailcatcher.yaml b/charts/user-monitoring/templates/_user-am-config-mailcatcher.yaml new file mode 100644 index 0000000..6d0d275 --- /dev/null +++ b/charts/user-monitoring/templates/_user-am-config-mailcatcher.yaml @@ -0,0 +1,19 @@ +{{- define "alertmanager.config-mailcatcher" }} +--- +apiVersion: monitoring.coreos.com/v1alpha1 +kind: AlertmanagerConfig +metadata: + name: {{ .Values.user }}-mailcatcher + labels: + alertmanagerConfig: {{ .Values.user }}-mailcatcher +spec: + route: + receiver: mailcatcher + receivers: + - name: mailcatcher + emailConfigs: + - to: alert@localhost + from: prometheus-operator@localhost + smarthost: mailcatcher:1025 + requireTLS: false +{{- end }} \ No newline at end of file diff --git a/charts/user-monitoring/templates/_user-mailcatcher-deploy.yaml b/charts/user-monitoring/templates/_user-mailcatcher-deploy.yaml new file mode 100644 index 0000000..451e8ec --- /dev/null +++ b/charts/user-monitoring/templates/_user-mailcatcher-deploy.yaml @@ -0,0 +1,28 @@ +{{- define "mailcatcher.deploy" }} +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + app.kubernetes.io/name: mailcatcher + name: mailcatcher + namespace: {{ .Values.user }}-monitoring +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/name: mailcatcher + template: + metadata: + labels: + app.kubernetes.io/name: mailcatcher + spec: + containers: + - image: sj26/mailcatcher:v0.9.0 + name: mailcatcher + ports: + - containerPort: 1080 + name: http + - containerPort: 1025 + name: smtp +{{- end }} \ No newline at end of file diff --git a/charts/user-monitoring/templates/_user-mailcatcher-ingress.yaml b/charts/user-monitoring/templates/_user-mailcatcher-ingress.yaml new file mode 100644 index 0000000..6968256 --- /dev/null +++ b/charts/user-monitoring/templates/_user-mailcatcher-ingress.yaml @@ -0,0 +1,30 @@ +{{- define "mailcatcher.ingress" }} +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + annotations: + haproxy.org/auth-secret: basic-auth + haproxy.org/auth-type: basic-auth + haproxy.org/auth-realm: Authentication Required + labels: + app.kubernetes.io/name: {{ .Values.user }}-mailcatcher + name: {{ .Values.user }}-mailcatcher +spec: + ingressClassName: haproxy + rules: + - host: {{ .Values.user }}-mailcatcher.training.cluster.acend.ch + http: + paths: + - backend: + service: + name: mailcatcher + port: + number: 1080 + path: / + pathType: ImplementationSpecific + tls: + - hosts: + - {{ .Values.user }}-mailcatcher.training.cluster.acend.ch + secretName: acend-wildcard +{{- end }} \ No newline at end of file diff --git a/charts/user-monitoring/templates/_user-mailcatcher-svc.yaml b/charts/user-monitoring/templates/_user-mailcatcher-svc.yaml new file mode 100644 index 0000000..3d36b83 --- /dev/null +++ b/charts/user-monitoring/templates/_user-mailcatcher-svc.yaml @@ -0,0 +1,22 @@ +{{- define "mailcatcher.svc" }} +--- +apiVersion: v1 +kind: Service +metadata: + name: mailcatcher + labels: + app.kubernetes.io/name: mailcatcher +spec: + ports: + - name: http + port: 1080 + protocol: TCP + targetPort: http + - name: smtp + port: 1025 + protocol: TCP + targetPort: smtp + selector: + app.kubernetes.io/name: mailcatcher + type: ClusterIP +{{- end }} \ No newline at end of file diff --git a/charts/user-monitoring/templates/monitoring.yaml b/charts/user-monitoring/templates/monitoring.yaml index 5e15750..0115f4e 100644 --- a/charts/user-monitoring/templates/monitoring.yaml +++ b/charts/user-monitoring/templates/monitoring.yaml @@ -2,6 +2,10 @@ {{- if .Values.alertmanager.enabled }} {{- template "alertmanager.alertmanager" . }} + {{- template "alertmanager.config-mailcatcher" . }} + {{- template "mailcatcher.deploy" . }} + {{- template "mailcatcher.svc" . }} + {{- template "mailcatcher.ingress" . }} {{- end }} # blackboxexporter