Files
auricom-home-cluster/kubernetes/apps/default/paperless/app/helmrelease.yaml
2023-12-10 12:07:01 +01:00

125 lines
3.7 KiB
YAML

---
# 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.4.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