From 1441c5734f42b995505e6aa97f59bdb1eae32b1b Mon Sep 17 00:00:00 2001 From: Simon Herman Date: Wed, 4 Dec 2024 18:48:22 +0100 Subject: [PATCH] feat(helmfile): Add grafana dashboards --- helmfile/apps/collabora/values.yaml.gotmpl | 8 --- .../nextcloud/values-nextcloud.yaml.gotmpl | 1 + .../apps/services/helmfile-child.yaml.gotmpl | 19 +++++++ .../services/values-dashboards.yaml.gotmpl | 54 +++++++++++++++++++ helmfile/environments/default/charts.yaml | 10 ++++ .../environments/default/customization.yaml | 1 + 6 files changed, 85 insertions(+), 8 deletions(-) create mode 100644 helmfile/apps/services/values-dashboards.yaml.gotmpl diff --git a/helmfile/apps/collabora/values.yaml.gotmpl b/helmfile/apps/collabora/values.yaml.gotmpl index b9494d94..3c8d47b1 100644 --- a/helmfile/apps/collabora/values.yaml.gotmpl +++ b/helmfile/apps/collabora/values.yaml.gotmpl @@ -22,14 +22,6 @@ collabora: fullnameOverride: "collabora" -grafana: - dashboards: - enabled: {{ .Values.monitoring.grafana.dashboards.enabled }} - labels: - {{ .Values.monitoring.grafana.dashboards.labels | toYaml | nindent 6 }} - annotations: - {{ .Values.monitoring.grafana.dashboards.annotations | toYaml | nindent 6 }} - image: repository: "{{ coalesce .Values.repositories.image.registryOpencodeDe .Values.global.imageRegistry .Values.images.collabora.registry }}/{{ .Values.images.collabora.repository }}" tag: {{ .Values.images.collabora.tag | quote }} diff --git a/helmfile/apps/nextcloud/values-nextcloud.yaml.gotmpl b/helmfile/apps/nextcloud/values-nextcloud.yaml.gotmpl index 56e56ed7..cdac08c7 100644 --- a/helmfile/apps/nextcloud/values-nextcloud.yaml.gotmpl +++ b/helmfile/apps/nextcloud/values-nextcloud.yaml.gotmpl @@ -11,6 +11,7 @@ global: exporter: enabled: true configuration: + server: "http://opendesk-nextcloud-aio" token: value: {{ .Values.secrets.nextcloud.metricsToken | quote }} containerSecurityContext: diff --git a/helmfile/apps/services/helmfile-child.yaml.gotmpl b/helmfile/apps/services/helmfile-child.yaml.gotmpl index 08edcac3..f3f8a733 100644 --- a/helmfile/apps/services/helmfile-child.yaml.gotmpl +++ b/helmfile/apps/services/helmfile-child.yaml.gotmpl @@ -99,6 +99,16 @@ repositories: oci: true url: "{{ .Values.global.helmRegistry | default .Values.charts.opendeskAlerts.registry }}/{{ .Values.charts.opendeskAlerts.repository }}" + # openDesk Grafana Dashboards + # https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-dashboards + - name: "dashboards-repo" + keyring: "../../files/gpg-pubkeys/opencode.gpg" + verify: {{ .Values.charts.opendeskDashboards.verify }} + username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }} + password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }} + oci: true + url: "{{ .Values.global.helmRegistry | default .Values.charts.opendeskDashboards.registry }}/{{ .Values.charts.opendeskDashboards.repository }}" + # VMWare Bitnami # Source: https://github.com/bitnami/charts/ - name: "memcached-repo" @@ -267,6 +277,15 @@ releases: installed: {{ .Values.clamavSimple.enabled }} timeout: 900 + - name: "opendesk-dashboards" + chart: "dashboards-repo/{{ .Values.charts.opendeskDashboards.name }}" + version: "{{ .Values.charts.opendeskDashboards.version }}" + values: + - "values-dashboards.yaml.gotmpl" + - {{ .Values.customization.release.opendeskDashboards | default "additionalValues: false" }} + installed: {{ .Values.monitoring.grafana.dashboards.enabled }} + timeout: 900 + - name: "minio" chart: "minio-repo/{{ .Values.charts.minio.name }}" version: "{{ .Values.charts.minio.version }}" diff --git a/helmfile/apps/services/values-dashboards.yaml.gotmpl b/helmfile/apps/services/values-dashboards.yaml.gotmpl new file mode 100644 index 00000000..119b7311 --- /dev/null +++ b/helmfile/apps/services/values-dashboards.yaml.gotmpl @@ -0,0 +1,54 @@ +{{/* +SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH +SPDX-FileCopyrightText: 2023 Bundesministerium des Innern und für Heimat, PG ZenDiS "Projektgruppe für Aufbau ZenDiS" +SPDX-License-Identifier: Apache-2.0 +*/}} +--- +additionalAnnotations: + {{ .Values.monitoring.grafana.dashboards.annotations | toYaml | nindent 2 }} +additionalLabels: + {{ .Values.monitoring.grafana.dashboards.labels | toYaml | nindent 2 }} + +config: + apps: + collabora: + enable: {{ .Values.collabora.enabled }} + selectors: + namespace: {{ .Values.collabora.namespace | quote }} + matrixElement: + enable: {{ .Values.element.enabled }} + selectors: + namespace: {{ .Values.element.namespace | quote }} + diagrams: + enable: {{ .Values.cryptpad.enabled }} + selectors: + namespace: {{ .Values.cryptpad.namespace | quote }} + nextcloud: + enable: {{ .Values.nextcloud.enabled }} + selectors: + namespace: {{ .Values.nextcloud.namespace | quote }} + openxchange: + enable: {{ .Values.oxAppSuite.enabled }} + selectors: + namespace: {{ .Values.oxAppSuite.namespace | quote }} + xwiki: + enable: {{ .Values.xwiki.enabled }} + selectors: + namespace: {{ .Values.xwiki.namespace | quote }} + nubus: + enable: {{ .Values.nubus.enabled }} + selectors: + namespace: {{ .Values.nubus.namespace | quote }} + openproject: + enable: {{ .Values.openproject.enabled }} + selectors: + namespace: {{ .Values.openproject.namespace | quote }} + jitsi: + enable: {{ .Values.jitsi.enabled }} + selectors: + namespace: {{ .Values.jitsi.namespace | quote }} + collabora: + enable: {{ .Values.collabora.enabled }} + selectors: + namespace: {{ .Values.collabora.namespace | quote }} +... diff --git a/helmfile/environments/default/charts.yaml b/helmfile/environments/default/charts.yaml index c2161d0a..89af9434 100644 --- a/helmfile/environments/default/charts.yaml +++ b/helmfile/environments/default/charts.yaml @@ -303,6 +303,16 @@ charts: name: "opendesk-alerts" version: "1.1.0" verify: true + opendeskDashboards: + # providerCategory: "Platform" + # providerResponsible: "openDesk" + # upstreamRegiostry: "https://registry.opencode.de" + # upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-dashboards" + registry: "registry.opencode.de" + repository: "bmi/opendesk/components/platform-development/charts/opendesk-dashboards" + name: "opendesk-dashboards" + version: "1.1.0" + verify: true opendeskKeycloakBootstrap: # providerCategory: "Platform" # providerResponsible: "openDesk" diff --git a/helmfile/environments/default/customization.yaml b/helmfile/environments/default/customization.yaml index 4f214d0b..f4c51059 100644 --- a/helmfile/environments/default/customization.yaml +++ b/helmfile/environments/default/customization.yaml @@ -53,6 +53,7 @@ customization: opendeskHome: {} opendeskCertificates: {} opendeskAlerts: {} + opendeskDashboards: {} redis: {} memcached: {} postgresql: {}