From 1f455c9e34dbaf32c859f2fd472f7ed85f39fab5 Mon Sep 17 00:00:00 2001 From: Jack Jackson Date: Wed, 28 Jun 2023 19:52:25 -0700 Subject: [PATCH] Add Grafana-oncall --- app-of-apps/templates/apps.yaml | 99 +++++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) diff --git a/app-of-apps/templates/apps.yaml b/app-of-apps/templates/apps.yaml index 40bdbd3..2c5848b 100644 --- a/app-of-apps/templates/apps.yaml +++ b/app-of-apps/templates/apps.yaml @@ -197,6 +197,105 @@ spec: - CreateNamespace=true - Replace=true --- +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: grafana-oncall + namespace: argo + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: default + + source: + chart: oncall + repoURL: https://grafana.github.io/helm-charts + targetRevision: "1.3.1" + + helm: + values: | + global: + storageClass: longhorn + + oncall: + base_url: oncall.grafana.avril + externalGrafana: + url: http://grafana.avril + fullnameOverride: "oncall-ovrd" # Without this, there are clashes between resources (ServiceAccounts, Secrets) that are similarly named between Oncall itself and the underlying Grafana templates. Also this needs to b e short otherwise the batch jobs created have names that are too long + env: + - name: FEATURE_TELEGRAM_INTEGRATION_ENABLED + value: "true" + - name: TELEGRAM_WEBHOOK_HOST + valueFrom: + secretKeyRef: + name: telegram-webhook-host-secret + key: url + + image: + tag: "v1.3.1-arm64-linux" + + cert-manager: + enabled: false + + grafana: + enabled: false + + ingress: + enabled: false + + ingress-nginx: + enabled: false + + rabbitmq: + enabled: true + image: + repository: rabbitmq + tag: 3.10.10 + auth: + username: user + password: user + extraEnvVars: + - name: RABBITMQ_DEFAULT_USER + value: user + - name: RABBITMQ_DEFAULT_PASS + value: user + + redis: + image: + repository: arm64v8/redis + tag: 7.0 + + mariadb: + enabled: false + + # Have to use Postgres because the Mysql setup doesn't permit using existingSecret + database: + type: postgresql + + postgresql: + enabled: true + image: + repository: arm64v8/postgres + tag: 15.1 + + telegram: + enabled: true + existingSecret: telegram-auth-secret + tokenKey: token + webhookUrl: https://oncall-grafana.scubbo.org + + destination: + server: https://kubernetes.default.svc + namespace: grafana + syncPolicy: + ## https://argo-cd.readthedocs.io/en/stable/user-guide/auto_sync + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true + - Replace=true +--- # TODO - use Jsonnet or similar to automate building this from all the directories # (and pull out the common config) apiVersion: argoproj.io/v1alpha1