Refactor paperless-ai Helm chart for improved configuration
Some checks failed
Build Helm Chart / helm-package (push) Failing after 3s

This update substantially refactors the paperless-ai Helm chart.
Key changes include:

- Complete removal of outdated files: `.helmignore`, `LICENSE`,
  `README.adoc`, and several template files like `configfileConfigmap.yaml`,
  `configmap.yaml`, `dataPvc.yaml`, `envfileSecret.yaml`,
  `openAiApiSecret.yaml`, `paperlessApiSecret.yaml`, and others.

- Introduction of a new Persistent Volume Claim configuration in
  `pvc.yaml` to simplify storage management.

- Significant updates to `Chart.yaml` for better metadata, including
  a new maintainer and project description in German.

- Enhancements to the main deployment template in `deployment.yaml`,
  focusing on clarity and proper utilization of Kubernetes security
  contexts, environment variables, and container properties.

- Updated service definitions in `service.yaml` with better labels
  and service properties.

- Refined the `ingress.yaml` to improve external service access
  management, including annotations for potential customization.

These changes were implemented to modernize the Helm chart based on
the current best practices, improve user experience, and set a
foundation for future enhancements. There are no breaking changes to
the existing user configurations.
This commit is contained in:
2025-07-06 09:02:17 +02:00
parent c18b5c7514
commit ba732eb734
19 changed files with 202 additions and 504 deletions

View File

@ -1,15 +1,15 @@
# service.yaml
# Definiert einen Kubernetes Service, der den Zugriff auf die Pods des Deployments ermöglicht.
apiVersion: v1
kind: Service
metadata:
name: {{ include "paperless-ai.fullname" . }}
labels:
{{- include "paperless-ai.labels" . | nindent 4 }}
name: { { include "paperless-ai.fullname" . } } # Der Name des Services.
labels: { { - include "paperless-ai.labels" . | nindent 4 } } # Allgemeine Labels für den Service.
spec:
type: {{ .Values.service.type }}
type: { { .Values.service.type } } # Der Typ des Services (z.B. ClusterIP, NodePort, LoadBalancer).
ports:
- port: {{ .Values.service.port }}
targetPort: http
protocol: TCP
name: http
selector:
{{- include "paperless-ai.selectorLabels" . | nindent 4 }}
- port: { { .Values.service.port } } # Der Port, auf dem der Service Anfragen empfängt.
targetPort: { { .Values.service.targetPort } } # Der Port des Pods, an den der Service weiterleitet.
protocol: TCP # Das Protokoll des Ports.
name: http # Name des Service-Ports.
selector: { { - include "paperless-ai.selectorLabels" . | nindent 4 } } # Selector, um die Pods zu finden, die dieser Service bedient.