--- # 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: 30m chart: spec: chart: app-template version: 3.5.1 sourceRef: kind: HelmRepository name: bjw-s namespace: flux-system install: remediation: retries: 3 upgrade: cleanupOnFail: true remediation: strategy: rollback retries: 3 values: controllers: dragonfly-operator: strategy: RollingUpdate containers: app: image: repository: ghcr.io/dragonflydb/operator tag: v1.1.8 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"] } defaultPodOptions: securityContext: runAsNonRoot: true runAsUser: 568 runAsGroup: 568 seccompProfile: { type: RuntimeDefault } 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 serviceAccount: create: true name: *app serviceMonitor: app: serviceName: *app endpoints: - port: metrics scheme: http path: /metrics interval: 1m scrapeTimeout: 10s