--- # yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/helmrelease-helm-v2beta1.json apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: &app paperless namespace: default spec: interval: 30m chart: spec: chart: app-template version: 2.3.0 sourceRef: kind: HelmRepository name: bjw-s namespace: flux-system maxHistory: 2 install: createNamespace: true remediation: retries: 3 upgrade: cleanupOnFail: true remediation: retries: 3 uninstall: keepHistory: false dependsOn: - name: paperless-redis values: controllers: main: strategy: RollingUpdate annotations: reloader.stakater.com/auto: "true" initContainers: init-db: image: repository: ghcr.io/auricom/postgres-init tag: 15.5@sha256:9b1b80d8101d3f1c73ef13b90dff2ab3bc855bd79ebcd334cba57db391ce6db0 pullPolicy: IfNotPresent envFrom: &envFrom - secretRef: name: paperless-secret containers: main: image: repository: ghcr.io/paperless-ngx/paperless-ngx tag: 2.1.1 env: COMPOSE_PROJECT_NAME: paperless PAPERLESS_CONSUMER_POLLING: "60" PAPERLESS_CONSUMER_RECURSIVE: "true" PAPERLESS_CONSUMER_SUBDIRS_AS_TAGS: "true" PAPERLESS_ENABLE_HTTP_REMOTE_USER: "true" PAPERLESS_HTTP_REMOTE_USER_HEADER_NAME: HTTP_X_AUTH_REQUEST_EMAIL PAPERLESS_OCR_LANGUAGES: fra PAPERLESS_OCR_LANGUAGE: fra PAPERLESS_PORT: 8000 PAPERLESS_DBNAME: paperless PAPERLESS_REDIS: redis://paperless-redis.default.svc.cluster.local:6379 PAPERLESS_TASK_WORKERS: 2 PAPERLESS_TIME_ZONE: "Europe/Paris" PAPERLESS_URL: https://paperless.${SECRET_CLUSTER_DOMAIN} envFrom: *envFrom resources: requests: cpu: 25m memory: 3Gi limits: memory: 7Gi service: main: ports: http: port: 8000 ingress: main: enabled: true className: "nginx" annotations: external-dns.alpha.kubernetes.io/enabled: "true" external-dns.alpha.kubernetes.io/target: services.${SECRET_DOMAIN}. hajimari.io/icon: mdi:barcode-scan hosts: - host: &host "{{ .Release.Name }}.${SECRET_CLUSTER_DOMAIN}" paths: - path: / service: name: main port: http tls: - hosts: - *host persistence: data: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/shared-documents/paperless/data globalMounts: - path: /usr/src/paperless/data media: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/shared-documents/paperless/media globalMounts: - path: /usr/src/paperless/media consume: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/shared-documents/paperless/watch globalMounts: - path: /usr/src/paperless/consume export: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/shared-documents/paperless/export globalMounts: - path: /usr/src/paperless/export