--- apiVersion: helm.toolkit.fluxcd.io/v2beta2 kind: HelmRelease metadata: name: cloudflared spec: interval: 30m chart: spec: chart: app-template version: 2.5.0 sourceRef: kind: HelmRepository name: bjw-s namespace: flux-system install: remediation: retries: 3 upgrade: cleanupOnFail: true remediation: retries: 3 uninstall: keepHistory: false values: controllers: main: replicas: 2 strategy: RollingUpdate annotations: reloader.stakater.com/auto: "true" containers: main: image: repository: docker.io/cloudflare/cloudflared tag: 2024.1.5 env: NO_AUTOUPDATE: "true" TUNNEL_CRED_FILE: /etc/cloudflared/creds/credentials.json TUNNEL_METRICS: 0.0.0.0:8080 TUNNEL_ORIGIN_ENABLE_HTTP2: true TUNNEL_TRANSPORT_PROTOCOL: quic TUNNEL_POST_QUANTUM: true TUNNEL_ID: valueFrom: secretKeyRef: name: cloudflared-secret key: TUNNEL_ID args: - tunnel - --config - /etc/cloudflared/config/config.yaml - run - "$(TUNNEL_ID)" probes: liveness: &probes enabled: true custom: true spec: httpGet: path: /ready port: &port 8080 initialDelaySeconds: 0 periodSeconds: 10 timeoutSeconds: 1 failureThreshold: 3 readiness: *probes startup: enabled: false resources: requests: cpu: 5m memory: 128M limits: memory: 256M pod: securityContext: runAsUser: 568 runAsGroup: 568 service: main: ports: http: port: *port serviceMonitor: main: enabled: true persistence: config: enabled: true type: configMap name: cloudflared-configmap globalMounts: - path: /etc/cloudflared/config/config.yaml subPath: config.yaml readOnly: true creds: type: secret name: cloudflared-secret globalMounts: - path: /etc/cloudflared/creds/credentials.json subPath: credentials.json readOnly: true