_cloudflared.tpl 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. {{- define "cloudflared.workload" -}}
  2. {{- if not .Values.cloudflaredConfig.tunnelToken -}}
  3. {{- fail "Cloudflared - Tunnel Token is required" -}}
  4. {{- end -}}
  5. {{- $reservedArgs := (list "tunnel" "--no-autoupdate" "run") -}}
  6. {{- $addArgs := .Values.cloudflaredConfig.additionalArgs -}}
  7. {{- if not (deepEqual $addArgs (uniq $addArgs)) -}}
  8. {{- fail (printf "Cloudflared - Expected Additional arguments to be unique, but got [%s]" (join ", " $addArgs)) -}}
  9. {{- end }}
  10. workload:
  11. cloudflared:
  12. enabled: true
  13. primary: true
  14. type: Deployment
  15. podSpec:
  16. hostNetwork: {{ .Values.cloudflaredNetwork.hostNetwork }}
  17. containers:
  18. cloudflared:
  19. enabled: true
  20. primary: true
  21. imageSelector: image
  22. securityContext:
  23. runAsUser: {{ .Values.cloudflaredRunAs.user }}
  24. runAsGroup: {{ .Values.cloudflaredRunAs.group }}
  25. args:
  26. - tunnel
  27. - --no-autoupdate
  28. {{ if not .Values.ci }}
  29. {{ range $arg := $addArgs }}
  30. {{- if (mustHas $arg $reservedArgs) -}}
  31. {{- fail (printf "Cloudflared - Argument [%s] is already applied" $arg) -}}
  32. {{- end }}
  33. - {{ $arg }}
  34. {{ end }}
  35. - run
  36. {{ else }}
  37. - --hello-world
  38. {{ end }}
  39. env:
  40. TUNNEL_TOKEN: {{ .Values.cloudflaredConfig.tunnelToken }}
  41. {{ with .Values.cloudflaredConfig.additionalEnvs }}
  42. envList:
  43. {{ range $env := . }}
  44. - name: {{ $env.name }}
  45. value: {{ $env.value }}
  46. {{ end }}
  47. {{ end }}
  48. probes:
  49. liveness:
  50. enabled: false
  51. readiness:
  52. enabled: false
  53. startup:
  54. enabled: false
  55. {{- end -}}