{{- include "bjw-s.common.loader.init" . }} {{- define "cloudflared.hardcodedValues" -}} global: nameOverride: {{ include "cloudflared.name" . }} fullNameOverride: {{ include "cloudflared.name" . }} createDefaultServiceAccount: false controllers: main: type: deployment replicas: 1 strategy: Recreate serviceAccount: name: {{ include "cloudflared.name" . }} containers: main: image: repository: {{ .Values.image.repository }} tag: {{ .Values.image.tag }} pullPolicy: {{ .Values.image.pullPolicy }} args: - tunnel - --protocol - {{ .Values.protocol }} - --no-autoupdate {{- if .Values.metrics.enabled }} - --metrics 0.0.0.0:20241 {{- end }} - run - --token - $(CF_MANAGED_TUNNEL_TOKEN) env: - name: CF_MANAGED_TUNNEL_TOKEN valueFrom: secretKeyRef: name: {{ include "secret.name" . }} key: {{ include "secret.key" . }} resources: {{- with .Values.resources }} {{- toYaml . | nindent 10 }} {{ end }} serviceAccount: main: enabled: true forceRename: {{ include "cloudflared.name" . }} {{- if .Values.metrics.enabled }} service: main: controller: main ports: metrics: port: 20241 targetPort: 20241 serviceMonitor: main: selector: matchLabels: app.kubernetes.io/name: {{ include "cloudflared.name" . }} app.kubernetes.io/instance: {{ include "cloudflared.name" . }} serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}' endpoints: - port: metrics interval: 30s scrapeTimeout: 10s path: /metrics {{- end }} {{- end -}} {{- $_ := mergeOverwrite .Values (include "cloudflared.hardcodedValues" . | fromYaml) -}} {{/* Render the templates */}} {{ include "bjw-s.common.loader.generate" . }}