Files
kube/clusters/base/apps/photo-stats/helmrelease.yaml
T
2026-08-16 20:48:51 +03:00

100 lines
2.4 KiB
YAML

apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: photo-stats
namespace: photo-stats
spec:
interval: 30m
chartRef:
kind: OCIRepository
name: photo-stats
driftDetection:
mode: enabled
values:
controllers:
app:
containers:
# walks the immich library over NFS (read-only) and periodically
# writes index.html/stats.json into the shared "www" volume; the
# "web" container just serves whatever is currently on disk there.
scanner:
image:
repository: python
tag: 3.13-alpine
command:
- python3
- /app/scan.py
resources:
requests:
cpu: 50m
memory: 64Mi
limits:
memory: 256Mi
web:
image:
repository: nginx
tag: 1.27-alpine
probes:
liveness:
enabled: true
readiness:
enabled: true
resources:
requests:
cpu: 10m
memory: 16Mi
limits:
memory: 64Mi
service:
app:
controller: app
ports:
http:
port: 80
ingress:
app:
className: traefik
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
hosts:
- host: stats.photo.aggtaa.com
paths:
- path: /
pathType: Prefix
service:
identifier: app
port: http
tls:
- secretName: photo-stats-tls
hosts:
- stats.photo.aggtaa.com
persistence:
script:
type: configMap
name: photo-stats-script
advancedMounts:
app:
scanner:
- path: /app/scan.py
subPath: scan.py
readOnly: true
data:
type: persistentVolumeClaim
existingClaim: photo-stats-nas1-sdb2
advancedMounts:
app:
scanner:
- path: /mnt/sdb2
readOnly: true
www:
type: emptyDir
advancedMounts:
app:
scanner:
- path: /www
web:
- path: /usr/share/nginx/html