From 4ea565916d267d5e6f333ac48872d16e2934dd67 Mon Sep 17 00:00:00 2001 From: GeorgeRaven Date: Sun, 24 Nov 2024 18:30:44 +0000 Subject: [PATCH] Upgraded qbittorrent to latest corvid --- charts/qbittorrent/Chart.yaml | 4 +- charts/qbittorrent/README.md | 38 ++++++++--- charts/qbittorrent/values.yaml | 112 +++++++++++++++++++++++++-------- 3 files changed, 116 insertions(+), 38 deletions(-) diff --git a/charts/qbittorrent/Chart.yaml b/charts/qbittorrent/Chart.yaml index 8eea5ae..5337ffd 100644 --- a/charts/qbittorrent/Chart.yaml +++ b/charts/qbittorrent/Chart.yaml @@ -3,8 +3,8 @@ appVersion: "4.6.5-r0-ls336" description: A Helm chart for Kubernetes name: qbittorrent type: application -version: 0.3.1 +version: 0.4.0 dependencies: - name: corvid - version: 0.7.1 + version: 0.12.0 repository: "https://gitlab.com/api/v4/projects/55284972/packages/helm/stable" diff --git a/charts/qbittorrent/README.md b/charts/qbittorrent/README.md index 277587a..c7daca9 100644 --- a/charts/qbittorrent/README.md +++ b/charts/qbittorrent/README.md @@ -2,7 +2,7 @@ A Helm chart for Kubernetes -![Version: 0.3.1](https://img.shields.io/badge/Version-0.3.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 4.6.5-r0-ls336](https://img.shields.io/badge/AppVersion-4.6.5--r0--ls336-informational?style=flat-square) +![Version: 0.4.0](https://img.shields.io/badge/Version-0.4.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 4.6.5-r0-ls336](https://img.shields.io/badge/AppVersion-4.6.5--r0--ls336-informational?style=flat-square) This helm chart is used to deploy qBittorrent into a kubernetes cluster. This uses mostly standard values you will also find in other charts like those of bitnami. @@ -110,7 +110,7 @@ $ helm install qbittorrent raven/qbittorrent | Repository | Name | Version | |------------|------|---------| -| https://gitlab.com/api/v4/projects/55284972/packages/helm/stable | corvid | 0.7.1 | +| https://gitlab.com/api/v4/projects/55284972/packages/helm/stable | corvid | 0.12.0 | ## Values @@ -123,6 +123,12 @@ $ helm install qbittorrent raven/qbittorrent | autoscaling.minReplicas | int | `1` | | | autoscaling.targetCPUUtilizationPercentage | int | `80` | | | command | string | `nil` | | +| cron.enabled | bool | `false` | enable or disable cronjob | +| cron.schedule | string | `"@midnight"` | schedule for cronjob using Cron syntax https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/#schedule-syntax | +| cron.suspend | bool | `false` | cronjob will not trigger on schedule but can be manually triggered | +| deployment.strategy | string | `""` | rollout strategy `Recreate` or `RollingUpdate` this chart defaults to Recreate only if we detect a single replica with a volume | +| dnsConfig | object | `{}` | | +| dnsPolicy | string | `""` | | | envFrom | string | `nil` | | | env[0].name | string | `"PUID"` | | | env[0].value | string | `"1000"` | | @@ -144,7 +150,9 @@ $ helm install qbittorrent raven/qbittorrent | ingress.hosts[0].paths[0].pathType | string | `"ImplementationSpecific"` | | | ingress.tls | list | `[]` | | | initContainers | string | `nil` | | -| livenessProbe | object | `{}` | | +| livenessProbe | string | `nil` | raw liveness probe overrides for user | +| livenessProbeDefault | object | `{"httpGet":{"path":"/","port":"http"}}` | default liveness probe if not specified by user | +| livenessProbeEnabled | bool | `true` | enable or disable liveness probe entirely | | nameOverride | string | `""` | | | netpol.enabled | bool | `true` | | | nodeSelector | object | `{}` | | @@ -154,27 +162,37 @@ $ helm install qbittorrent raven/qbittorrent | persistence.size | string | `"8Gi"` | | | podAnnotations | object | `{}` | | | podLabels | object | `{}` | | -| podSecurityContext | object | `{}` | | +| podSecurityContext | object | `{}` | podSecurityContext for consumer overrides | +| podSecurityContextDefault | object | `{"fsGroup":1000}` | default podSecurityContext if none specified | +| podSecurityContextEnabled | bool | `false` | enable or disable podSecurityContext entirely | | ports[0].containerPort | int | `8080` | | | ports[0].name | string | `"http"` | | | ports[0].protocol | string | `"TCP"` | | | ports[0].servicePort | int | `80` | | -| readinessProbe | object | `{}` | | +| readinessProbe | string | `nil` | raw readiness probe overrides for user | +| readinessProbeDefault | object | `{"httpGet":{"path":"/","port":"http"}}` | default readiness probe if not specified by user | +| readinessProbeEnabled | bool | `true` | enable or disable readiness probe entirely | | replicaCount | int | `1` | | -| resources | object | `{}` | | +| resources | string | `nil` | raw resources block overrides for user | +| resourcesDefault | object | `{"limits":{"memory":"2Gi"},"requests":{"cpu":"200m"}}` | default resources if not specified by user | +| resourcesEnabled | bool | `true` | enable or disable resources entirely | | restartPolicy | string | `"Always"` | | | runtimeClassName | string | `nil` | | | secrets | string | `nil` | | -| securityContext | object | `{}` | | +| securityContext | object | `{}` | securityContext for consumer overrides | +| securityContextDefault | object | `{"allowPrivilegeEscalation":false,"capabilities":{"drop":["ALL"]},"readOnlyRootFilesystem":true,"runAsGroup":1000,"runAsNonRoot":true,"runAsUser":1000}` | default securityContext if none specified | +| securityContextEnabled | bool | `false` | enable or disable securityContext entirely | | service.type | string | `"ClusterIP"` | | | serviceAccount.annotations | object | `{}` | | | serviceAccount.automount | bool | `true` | | | serviceAccount.create | bool | `true` | | | serviceAccount.name | string | `""` | | -| startupProbe | object | `{}` | | +| startupProbe | string | `nil` | raw startup probe overrides for user | +| startupProbeDefault | object | `{"httpGet":{"path":"/","port":"http"}}` | default startup probe if not specified by user | +| startupProbeEnabled | bool | `true` | enable or disable startup probe entirely | | tolerations | list | `[]` | | -| volumeMounts | string | `nil` | | -| volumes | string | `nil` | | +| volumeMounts | list | `[]` | | +| volumes | list | `[]` | | ## Changelog diff --git a/charts/qbittorrent/values.yaml b/charts/qbittorrent/values.yaml index bef82ff..c988a3b 100644 --- a/charts/qbittorrent/values.yaml +++ b/charts/qbittorrent/values.yaml @@ -26,6 +26,18 @@ command: args: runtimeClassName: +deployment: + # -- rollout strategy `Recreate` or `RollingUpdate` this chart defaults to Recreate only if we detect a single replica with a volume + strategy: "" + +cron: + # -- enable or disable cronjob + enabled: false + # -- schedule for cronjob using Cron syntax https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/#schedule-syntax + schedule: "@midnight" + # -- cronjob will not trigger on schedule but can be manually triggered + suspend: false + ## @param initContainers Add bespoke init containers to the pods initContainers: ## optional gluetun VPN client sidecar @@ -112,16 +124,33 @@ serviceAccount: podAnnotations: {} podLabels: {} -## @param podSecurityContext [object] Pod security context +# -- enable or disable podSecurityContext entirely +podSecurityContextEnabled: false # TODO: test then enable by default +# -- default podSecurityContext if none specified +podSecurityContextDefault: + fsGroup: 1000 +# -- podSecurityContext for consumer overrides podSecurityContext: {} - # fsGroup: 2000 + # fsGroup: 1000 -## @param securityContext [object] Security context +# -- enable or disable securityContext entirely +securityContextEnabled: false # TODO: test then enable by default +# -- default securityContext if none specified +securityContextDefault: + capabilities: + drop: + - ALL + readOnlyRootFilesystem: true + runAsNonRoot: true + runAsUser: 1000 + runAsGroup: 1000 + allowPrivilegeEscalation: false +# -- securityContext for consumer overrides securityContext: {} # capabilities: # drop: # - ALL - # readOnlyRootFilesystem: false + # readOnlyRootFilesystem: true # runAsNonRoot: true # runAsUser: 1000 @@ -157,31 +186,59 @@ ingress: # hosts: # - qbittorrent.org.example -## @param resources [object] Resources -resources: {} - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. +# -- enable or disable resources entirely +resourcesEnabled: true +# -- default resources if not specified by user +resourcesDefault: + limits: + memory: 2Gi + requests: + cpu: 200m +# -- raw resources block overrides for user +resources: # limits: - # cpu: 100m # memory: 128Mi # requests: # cpu: 100m - # memory: 128Mi -startupProbe: {} - #httpGet: - # path: / - # port: http -livenessProbe: {} - #httpGet: - # path: / - # port: http -readinessProbe: {} - #httpGet: - # path: / - # port: http +# -- enable or disable startup probe entirely +startupProbeEnabled: true +# -- default startup probe if not specified by user +startupProbeDefault: + httpGet: + path: / + port: http +# -- raw startup probe overrides for user +startupProbe: + # httpGet: + # path: / + # port: http + +# -- enable or disable liveness probe entirely +livenessProbeEnabled: true +# -- default liveness probe if not specified by user +livenessProbeDefault: + httpGet: + path: / + port: http +# -- raw liveness probe overrides for user +livenessProbe: + # httpGet: + # path: / + # port: http + +# -- enable or disable readiness probe entirely +readinessProbeEnabled: true +# -- default readiness probe if not specified by user +readinessProbeDefault: + httpGet: + path: / + port: http +# -- raw readiness probe overrides for user +readinessProbe: + # httpGet: + # path: / + # port: http autoscaling: ## @param autoscaling.enabled [string] Enable autoscaling @@ -194,14 +251,14 @@ autoscaling: targetCPUUtilizationPercentage: 80 # Additional volumes on the output Deployment definition. -volumes: +volumes: [] # - name: foo # secret: # secretName: mysecret # optional: false # Additional volumeMounts on the output Deployment definition. -volumeMounts: +volumeMounts: [] # - name: foo # mountPath: "/etc/foo" # readOnly: true @@ -214,3 +271,6 @@ affinity: {} netpol: enabled: true + +dnsPolicy: "" +dnsConfig: {}