Files
turingpi/manifests/maintainerr/deployment.yaml
T
gilgamezh 79a28a674a feat(maintainerr): deploy for watched-movie cleanup (Plex -> Radarr)
Rule-based deletion of watched movies from Radarr (with files), driven by
Maintainerr. Raw manifests + directory-type Argo Application (no Helm).
Config on shared plex-data NFS PVC (subPath configs/maintainerr); Recreate
strategy since it uses SQLite on RWX NFS. ClusterIP only, no ingress —
access via kubectl/k9s port-forward.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-01 21:34:44 +02:00

64 lines
1.5 KiB
YAML

---
apiVersion: apps/v1
kind: Deployment
metadata:
name: maintainerr
namespace: default
labels:
app: maintainerr
spec:
replicas: 1
# SQLite on the shared NFS PVC: never run two writers at once.
strategy:
type: Recreate
selector:
matchLabels:
app: maintainerr
template:
metadata:
labels:
app: maintainerr
spec:
securityContext:
runAsUser: 1000
runAsGroup: 1000
fsGroup: 1000
containers:
- name: maintainerr
image: ghcr.io/maintainerr/maintainerr:latest
imagePullPolicy: Always
ports:
- name: http
containerPort: 6246
protocol: TCP
env:
- name: TZ
value: "Europe/Amsterdam"
volumeMounts:
- name: plex-data
mountPath: /opt/data
subPath: configs/maintainerr
readinessProbe:
httpGet:
path: /api/app/status
port: http
initialDelaySeconds: 20
periodSeconds: 15
livenessProbe:
httpGet:
path: /api/app/status
port: http
initialDelaySeconds: 60
periodSeconds: 30
resources:
requests:
memory: "256Mi"
cpu: "100m"
limits:
memory: "512Mi"
cpu: "1000m"
volumes:
- name: plex-data
persistentVolumeClaim:
claimName: plex-data