98 lines
2.5 KiB
YAML
98 lines
2.5 KiB
YAML
apiVersion: external-secrets.io/v1
|
|
kind: ExternalSecret
|
|
metadata:
|
|
name: matrix-alertmanager-secret
|
|
namespace: monitoring
|
|
spec:
|
|
refreshInterval: "1h"
|
|
secretStoreRef:
|
|
name: vault-external-secrets-store
|
|
kind: ClusterSecretStore
|
|
target:
|
|
name: matrix-alertmanager-secret
|
|
creationPolicy: Owner
|
|
template:
|
|
data:
|
|
MATRIX_USER: "{{ .MATRIX_USER }}"
|
|
MATRIX_TOKEN: "{{ .MATRIX_TOKEN }}"
|
|
APP_ALERTMANAGER_SECRET: "{{ .APP_ALERTMANAGER_SECRET }}"
|
|
WEBHOOK_URL: "http://matrix-alertmanager.monitoring.svc.cluster.local:3000/alerts?secret={{ .APP_ALERTMANAGER_SECRET }}"
|
|
data:
|
|
- secretKey: MATRIX_USER
|
|
remoteRef:
|
|
key: matrix-alertmanager
|
|
property: matrix-user
|
|
- secretKey: MATRIX_TOKEN
|
|
remoteRef:
|
|
key: matrix-alertmanager
|
|
property: matrix-token
|
|
- secretKey: APP_ALERTMANAGER_SECRET
|
|
remoteRef:
|
|
key: matrix-alertmanager
|
|
property: secret-key
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: matrix-alertmanager-config
|
|
namespace: monitoring
|
|
data:
|
|
MATRIX_HOMESERVER_URL: "https://starling.mynest.love"
|
|
APP_PORT: "3000"
|
|
MATRIX_ROOMS: "matrix-notifications/!mlnAreDcLexiphBSel:starling.mynest.love"
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: matrix-alertmanager
|
|
namespace: monitoring
|
|
labels:
|
|
app.kubernetes.io/name: matrix-alertmanager
|
|
annotations:
|
|
keel.sh/policy: "all"
|
|
keel.sh/match-tag: "true"
|
|
keel.sh/schedule: "0 3 * * *"
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: matrix-alertmanager
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app.kubernetes.io/name: matrix-alertmanager
|
|
spec:
|
|
nodeSelector:
|
|
kubernetes.io/arch: amd64 # No ARM image
|
|
containers:
|
|
- name: matrix-alertmanager
|
|
image: jaywink/matrix-alertmanager:latest
|
|
imagePullPolicy: IfNotPresent
|
|
ports:
|
|
- containerPort: 3000
|
|
name: http
|
|
envFrom:
|
|
- secretRef:
|
|
name: matrix-alertmanager-secret
|
|
- configMapRef:
|
|
name: matrix-alertmanager-config
|
|
env:
|
|
- name: MENTION_ROOM
|
|
value: "1"
|
|
---
|
|
apiVersion: v1
|
|
kind: Service
|
|
metadata:
|
|
name: matrix-alertmanager
|
|
namespace: monitoring
|
|
labels:
|
|
app.kubernetes.io/name: matrix-alertmanager
|
|
spec:
|
|
type: ClusterIP
|
|
ports:
|
|
- port: 3000
|
|
targetPort: http
|
|
protocol: TCP
|
|
name: http
|
|
selector:
|
|
app.kubernetes.io/name: matrix-alertmanager
|