titan-iac/services/monitoring/grafana-smtp-sync-cronjob.yaml

45 lines
1.4 KiB
YAML

# services/monitoring/grafana-smtp-sync-cronjob.yaml
apiVersion: batch/v1
kind: CronJob
metadata:
name: grafana-smtp-sync
namespace: monitoring
spec:
schedule: "15 3 * * *"
concurrencyPolicy: Forbid
jobTemplate:
spec:
template:
spec:
serviceAccountName: grafana-smtp-sync
restartPolicy: OnFailure
containers:
- name: sync
image: bitnami/kubectl@sha256:554ab88b1858e8424c55de37ad417b16f2a0e65d1607aa0f3fe3ce9b9f10b131
command: ["/bin/sh", "-c"]
args:
- |
set -euo pipefail
if ! command -v jq >/dev/null 2>&1; then
apt-get update >/dev/null && apt-get install -y jq >/dev/null
fi
exec /scripts/sync.sh
env:
- name: SOURCE_NS
value: mailu-mailserver
- name: SOURCE_SECRET
value: mailu-postmark-relay
- name: TARGET_NS
value: monitoring
- name: TARGET_SECRET
value: grafana-smtp
volumeMounts:
- name: script
mountPath: /scripts
readOnly: true
volumes:
- name: script
configMap:
name: grafana-smtp-sync-script
defaultMode: 0555