--- # yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: name: &app dragonfly-operator spec: interval: 1h chartRef: kind: OCIRepository name: app-template install: remediation: retries: 3 upgrade: cleanupOnFail: true remediation: strategy: rollback retries: 3 values: controllers: dragonfly-operator: replicas: 1 strategy: RollingUpdate containers: app: image: repository: ghcr.io/dragonflydb/operator tag: v1.2.1@sha256:6aa4f9e21d7b5d1f17856e25e110d1c6762bdda27640ddfb33684b269fa826f7 command: [/manager] args: - --health-probe-bind-address=:8081 - --metrics-bind-address=:8080 probes: liveness: enabled: true custom: true spec: httpGet: path: /healthz port: &port 8081 initialDelaySeconds: 15 periodSeconds: 20 timeoutSeconds: 1 failureThreshold: 3 readiness: enabled: true custom: true spec: httpGet: path: /readyz port: *port initialDelaySeconds: 5 periodSeconds: 10 timeoutSeconds: 1 failureThreshold: 3 resources: requests: cpu: 10m limits: memory: 128Mi securityContext: allowPrivilegeEscalation: false readOnlyRootFilesystem: true capabilities: { drop: [ALL] } pod: securityContext: runAsUser: 65534 runAsGroup: 65534 runAsNonRoot: true topologySpreadConstraints: - maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule labelSelector: matchLabels: app.kubernetes.io/name: *app service: app: controller: *app ports: http: port: *port metrics: port: 8080 serviceMonitor: app: serviceName: *app endpoints: - port: metrics scheme: http path: /metrics interval: 1m scrapeTimeout: 10s serviceAccount: dragonfly-operator: {}