refactor: move Helm chart to standard directory structure
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				Build Helm Chart / helm-package (push) Successful in 4s
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	Build Helm Chart / helm-package (push) Successful in 4s
				
			This commit restructures the paperless-ai Helm chart by moving all files from the nested directory (charts/paperless-ai/paperless-ai/) to the standard Helm chart directory structure (charts/paperless-ai/). The change eliminates the redundant directory nesting that was causing issues with Helm chart packaging and installation. No functional changes were made to any files - this is purely a directory structure reorganization to follow Helm best practices and improve chart maintainability.
This commit is contained in:
		
							
								
								
									
										152
									
								
								charts/paperless-ai/values.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										152
									
								
								charts/paperless-ai/values.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,152 @@
 | 
			
		||||
# Default values for paperless-ai.
 | 
			
		||||
# This is a YAML-formatted file.
 | 
			
		||||
# Declare variables to be passed into your templates.
 | 
			
		||||
 | 
			
		||||
# This will set the replicaset count more information can be found here: https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/
 | 
			
		||||
# Please keep this value to 1, while many instances running a crontab could lead to unknown results.
 | 
			
		||||
replicaCount: 1
 | 
			
		||||
 | 
			
		||||
# This sets the container image more information can be found here: https://kubernetes.io/docs/concepts/containers/images/
 | 
			
		||||
image:
 | 
			
		||||
  repository: clusterzx/paperless-ai
 | 
			
		||||
  # This sets the pull policy for images.
 | 
			
		||||
  pullPolicy: IfNotPresent
 | 
			
		||||
  # Overrides the image tag whose default is the chart appVersion.
 | 
			
		||||
  # Use latest or nightly to be up2date.
 | 
			
		||||
  tag: ""
 | 
			
		||||
 | 
			
		||||
# This is for the secretes for pulling an image from a private repository more information can be found here: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
 | 
			
		||||
imagePullSecrets: []
 | 
			
		||||
# This is to override the chart name.
 | 
			
		||||
nameOverride: ""
 | 
			
		||||
fullnameOverride: ""
 | 
			
		||||
 | 
			
		||||
# This is for setting Kubernetes Annotations to a Pod.
 | 
			
		||||
# For more information checkout: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ 
 | 
			
		||||
podAnnotations: {}
 | 
			
		||||
# This is for setting Kubernetes Labels to a Pod.
 | 
			
		||||
# For more information checkout: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
 | 
			
		||||
podLabels: {}
 | 
			
		||||
 | 
			
		||||
podSecurityContext: {}
 | 
			
		||||
  # fsGroup: 2000
 | 
			
		||||
 | 
			
		||||
securityContext: {}
 | 
			
		||||
  # capabilities:
 | 
			
		||||
  #   drop:
 | 
			
		||||
  #   - ALL
 | 
			
		||||
  # readOnlyRootFilesystem: true
 | 
			
		||||
  # runAsNonRoot: true
 | 
			
		||||
  # runAsUser: 1000
 | 
			
		||||
 | 
			
		||||
# This is for setting up a service more information can be found here: https://kubernetes.io/docs/concepts/services-networking/service/
 | 
			
		||||
service:
 | 
			
		||||
  # This sets the service type more information can be found here: https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types
 | 
			
		||||
  type: ClusterIP
 | 
			
		||||
  # This sets the ports more information can be found here: https://kubernetes.io/docs/concepts/services-networking/service/#field-spec-ports
 | 
			
		||||
  port: 3000
 | 
			
		||||
 | 
			
		||||
# This block is for setting up the ingress for more information can be found here: https://kubernetes.io/docs/concepts/services-networking/ingress/
 | 
			
		||||
ingress:
 | 
			
		||||
  enabled: false
 | 
			
		||||
  className: ""
 | 
			
		||||
  annotations: {}
 | 
			
		||||
    # kubernetes.io/ingress.class: nginx
 | 
			
		||||
    # kubernetes.io/tls-acme: "true"
 | 
			
		||||
  hosts:
 | 
			
		||||
    - host: chart-example.local
 | 
			
		||||
      paths:
 | 
			
		||||
        - path: /
 | 
			
		||||
          pathType: ImplementationSpecific
 | 
			
		||||
  tls: []
 | 
			
		||||
  #  - secretName: chart-example-tls
 | 
			
		||||
  #    hosts:
 | 
			
		||||
  #      - chart-example.local
 | 
			
		||||
 | 
			
		||||
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:'.
 | 
			
		||||
  # limits:
 | 
			
		||||
  #   cpu: 100m
 | 
			
		||||
  #   memory: 128Mi
 | 
			
		||||
  # requests:
 | 
			
		||||
  #   cpu: 100m
 | 
			
		||||
  #   memory: 128Mi
 | 
			
		||||
 | 
			
		||||
# This is to setup the liveness and readiness probes more information can be found here: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
 | 
			
		||||
livenessProbe:
 | 
			
		||||
  initialDelaySeconds: 90
 | 
			
		||||
  httpGet:
 | 
			
		||||
    path: /
 | 
			
		||||
#    path: /health
 | 
			
		||||
    port: http
 | 
			
		||||
readinessProbe:
 | 
			
		||||
  initialDelaySeconds: 90
 | 
			
		||||
  httpGet:
 | 
			
		||||
    path: /
 | 
			
		||||
#    path: /health
 | 
			
		||||
    port: http
 | 
			
		||||
 | 
			
		||||
# paperless-ai config 
 | 
			
		||||
paperless:
 | 
			
		||||
  apiUrl: "http://paperless-ngx:8000"
 | 
			
		||||
  apiToken:
 | 
			
		||||
 | 
			
		||||
ai:
 | 
			
		||||
  provider: "openai"
 | 
			
		||||
  addProcessedTag: yes
 | 
			
		||||
  processedTagName: ai-processed
 | 
			
		||||
 | 
			
		||||
prompt:
 | 
			
		||||
  useTags: yes
 | 
			
		||||
  tags: Rechnung,Kontoauszug,Vertrag,Arbeitgeber
 | 
			
		||||
 | 
			
		||||
openAi:
 | 
			
		||||
  apiKey: 
 | 
			
		||||
  model: "gpt-4o-mini"
 | 
			
		||||
 | 
			
		||||
ollama:
 | 
			
		||||
  apiUrl: ""
 | 
			
		||||
  model: ""
 | 
			
		||||
 | 
			
		||||
scanInterval: "*/30 * * * *"
 | 
			
		||||
 | 
			
		||||
systemPrompt: |-
 | 
			
		||||
  Return the result EXCLUSIVELY as a JSON object. The Tags and Title MUST be in the language that is used in the document.:
 | 
			
		||||
  
 | 
			
		||||
  {
 | 
			
		||||
    "title": "xxxxx",
 | 
			
		||||
    "correspondent": "xxxxxxxx",
 | 
			
		||||
    "tags": ["Tag1", "Tag2", "Tag3", "Tag4"],
 | 
			
		||||
    "document_date": "YYYY-MM-DD",
 | 
			
		||||
    "language": "en/de/es/..."
 | 
			
		||||
  }
 | 
			
		||||
processPredefinedDocuments: "no"
 | 
			
		||||
tags: "indexed,indexed2"
 | 
			
		||||
 | 
			
		||||
# additional envs, if neccessary
 | 
			
		||||
envs: []
 | 
			
		||||
#  - name: CONFIG_PATH
 | 
			
		||||
#    value: "/app/config"
 | 
			
		||||
 | 
			
		||||
nodeSelector: {}
 | 
			
		||||
 | 
			
		||||
tolerations: []
 | 
			
		||||
 | 
			
		||||
affinity: {}
 | 
			
		||||
 | 
			
		||||
# persistence volumes needed for configuration and processing data directory
 | 
			
		||||
persistence:
 | 
			
		||||
  config:
 | 
			
		||||
    mountPath: "/app/config/config.js"
 | 
			
		||||
    subPath: "config.js"
 | 
			
		||||
  envfile:
 | 
			
		||||
    mountPath: "app/.env"
 | 
			
		||||
    subPath: ".env"
 | 
			
		||||
  data:
 | 
			
		||||
    enabled: true
 | 
			
		||||
    size: 1Gi
 | 
			
		||||
    storageClass: standard
 | 
			
		||||
    mountPath: "/app/data"
 | 
			
		||||
		Reference in New Issue
	
	Block a user