--- # yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2beta2.json apiVersion: helm.toolkit.fluxcd.io/v2beta2 kind: HelmRelease metadata: name: &app lychee 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: lychee-redis values: controllers: main: annotations: reloader.stakater.com/auto: "true" type: statefulset initContainers: init-db: image: repository: ghcr.io/onedr0p/postgres-init tag: 16 envFrom: &envFrom - secretRef: name: lychee-secret containers: main: image: repository: lycheeorg/lychee-laravel tag: v5.0.2@sha256:e3380ec75274758aec61b6c472d76d8d69bef215fc400640236eda3e019b26f7 env: TIMEZONE: ${TIMEZONE} APP_NAME: Lychee APP_URL: https://lychee.${SECRET_CLUSTER_DOMAIN} DB_CONNECTION: pgsql PHP_TZ: ${TIMEZONE} REDIS_HOST: lychee-redis.default.svc.cluster.local. REDIS_PORT: 6379 TRUSTED_PROXIES: "*" envFrom: *envFrom resources: requests: cpu: 100m memory: 256Mi statefulset: volumeClaimTemplates: - name: config accessMode: ReadWriteOnce size: 50Gi storageClass: rook-ceph-block globalMounts: - path: /uploads service: main: ports: http: port: 80 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:camera hosts: - host: &host "{{ .Release.Name }}.${SECRET_CLUSTER_DOMAIN}" paths: - path: / service: name: main tls: - hosts: - *host persistence: photo: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/photo readOnly: true globalMounts: - path: /mnt/storage/photo