_qbittorrent.tpl 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. {{- define "qbittorrent.workload" -}}
  2. workload:
  3. qbittorrent:
  4. enabled: true
  5. primary: true
  6. type: Deployment
  7. podSpec:
  8. hostNetwork: {{ .Values.qbitNetwork.hostNetwork }}
  9. containers:
  10. qbittorrent:
  11. enabled: true
  12. primary: true
  13. imageSelector: image
  14. securityContext:
  15. runAsUser: {{ .Values.qbitRunAs.user }}
  16. runAsGroup: {{ .Values.qbitRunAs.group }}
  17. {{ with .Values.qbitConfig.additionalEnvs }}
  18. env:
  19. {{ range $env := . }}
  20. {{ $env.name }}: {{ $env.value }}
  21. {{ end }}
  22. {{ end }}
  23. envFrom:
  24. - configMapRef:
  25. name: qbit-config
  26. probes:
  27. liveness:
  28. enabled: true
  29. type: http
  30. port: "{{ .Values.qbitNetwork.webPort }}"
  31. path: /
  32. readiness:
  33. enabled: true
  34. type: http
  35. port: "{{ .Values.qbitNetwork.webPort }}"
  36. path: /
  37. startup:
  38. enabled: true
  39. type: http
  40. port: "{{ .Values.qbitNetwork.webPort }}"
  41. path: /
  42. initContainers:
  43. {{- include "ix.v1.common.app.permissions" (dict "containerName" "01-permissions"
  44. "UID" .Values.qbitRunAs.user
  45. "GID" .Values.qbitRunAs.group
  46. "mode" "check"
  47. "type" "init") | nindent 8 }}
  48. {{/* Service */}}
  49. service:
  50. qbittorrent:
  51. enabled: true
  52. primary: true
  53. type: NodePort
  54. targetSelector: qbittorrent
  55. ports:
  56. webui:
  57. enabled: true
  58. primary: true
  59. port: {{ .Values.qbitNetwork.webPort }}
  60. nodePort: {{ .Values.qbitNetwork.webPort }}
  61. targetSelector: qbittorrent
  62. qbittorrent-bt:
  63. enabled: true
  64. type: NodePort
  65. targetSelector: qbittorrent
  66. ports:
  67. bt-tcp:
  68. enabled: true
  69. primary: true
  70. port: {{ .Values.qbitNetwork.btPort }}
  71. nodePort: {{ .Values.qbitNetwork.btPort }}
  72. targetSelector: qbittorrent
  73. bt-upd:
  74. enabled: true
  75. primary: true
  76. port: {{ .Values.qbitNetwork.btPort }}
  77. nodePort: {{ .Values.qbitNetwork.btPort }}
  78. protocol: udp
  79. targetSelector: qbittorrent
  80. {{/* Persistence */}}
  81. persistence:
  82. config:
  83. enabled: true
  84. type: {{ .Values.qbitStorage.config.type }}
  85. datasetName: {{ .Values.qbitStorage.config.datasetName | default "" }}
  86. hostPath: {{ .Values.qbitStorage.config.hostPath | default "" }}
  87. targetSelector:
  88. qbittorrent:
  89. qbittorrent:
  90. mountPath: /config
  91. 01-permissions:
  92. mountPath: /mnt/directories/config
  93. downloads:
  94. enabled: true
  95. type: {{ .Values.qbitStorage.downloads.type }}
  96. datasetName: {{ .Values.qbitStorage.downloads.datasetName | default "" }}
  97. hostPath: {{ .Values.qbitStorage.downloads.hostPath | default "" }}
  98. targetSelector:
  99. qbittorrent:
  100. qbittorrent:
  101. mountPath: /downloads
  102. 01-permissions:
  103. mountPath: /mnt/directories/downloads
  104. {{- end -}}