Files
infrastructure/clusters/cl01tl/manifests/kyoo/Deployment-kyoo-scanner.yaml

140 lines
4.7 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: kyoo-scanner
namespace: kyoo
labels:
helm.sh/chart: kyoo-5.0.0
app.kubernetes.io/name: kyoo-scanner
app.kubernetes.io/instance: kyoo
app.kubernetes.io/component: scanner
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/part-of: kyoo
app.kubernetes.io/version: "5.0.0"
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: kyoo-scanner
app.kubernetes.io/instance: kyoo
template:
metadata:
labels:
helm.sh/chart: kyoo-5.0.0
app.kubernetes.io/name: kyoo-scanner
app.kubernetes.io/instance: kyoo
app.kubernetes.io/component: scanner
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/part-of: kyoo
app.kubernetes.io/version: "5.0.0"
spec:
securityContext:
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
serviceAccountName: kyoo-scanner
containers:
- name: main
image: ghcr.io/zoriya/kyoo_scanner:5.0.0@sha256:fa972f3f1e534264f4de153e30fe9481839754a3e724cc2663524a2b30e82b46
imagePullPolicy: IfNotPresent
args:
env:
- name: SCANNER_LIBRARY_ROOT
value: "/media"
- name: LIBRARY_IGNORE_PATTERN
value: ".*/[dD]ownloads?/.*"
- name: KYOO_URL
value: "http://kyoo-traefik/api"
- name: JWKS_URL
value: "http://kyoo-auth:4568/.well-known/jwks.json"
- name: JWT_ISSUER
value: "https://kyoo.alexlebens.net"
- name: KYOO_APIKEY
valueFrom:
secretKeyRef:
key: scanner-apikey
name: kyoo-key-secret
- name: THEMOVIEDB_API_ACCESS_TOKEN
valueFrom:
secretKeyRef:
key: tmdb-apikey
name: kyoo-key-secret
optional: true
- name: PGUSER
valueFrom:
secretKeyRef:
key: user
name: kyoo-postgresql-18-cluster-app
- name: PGPASSWORD
valueFrom:
secretKeyRef:
key: password
name: kyoo-postgresql-18-cluster-app
- name: PGDATABASE
value: "kyoo_scanner"
- name: PGHOST
value: "kyoo-postgresql-18-cluster-rw"
- name: PGPORT
value: "5432"
- name: PGSSLMODE
value: "disable"
ports:
- name: main
containerPort: 4389
protocol: TCP
livenessProbe:
httpGet:
path: /health
port: main
readinessProbe:
httpGet:
path: /ready
port: main
resources:
requests:
cpu: 10m
memory: 100Mi
volumeMounts:
- mountPath: /media/anime
name: kyoo-media-anime-nfs-storage
readOnly: true
- mountPath: /media/anime-movies
name: kyoo-media-anime-movies-nfs-storage
readOnly: true
- mountPath: /media/movies
name: kyoo-media-movies-nfs-storage
readOnly: true
- mountPath: /media/movies-4k
name: kyoo-media-movies-4k-nfs-storage
readOnly: true
- mountPath: /media/standup
name: kyoo-media-standup-nfs-storage
readOnly: true
- mountPath: /media/tvshows
name: kyoo-media-tvshows-nfs-storage
readOnly: true
- mountPath: /media/tvshows-4k
name: kyoo-media-tvshows-4k-nfs-storage
readOnly: true
volumes:
- name: kyoo-media-anime-nfs-storage
persistentVolumeClaim:
claimName: kyoo-media-anime-nfs-storage
- name: kyoo-media-anime-movies-nfs-storage
persistentVolumeClaim:
claimName: kyoo-media-anime-movies-nfs-storage
- name: kyoo-media-movies-nfs-storage
persistentVolumeClaim:
claimName: kyoo-media-movies-nfs-storage
- name: kyoo-media-movies-4k-nfs-storage
persistentVolumeClaim:
claimName: kyoo-media-movies-4k-nfs-storage
- name: kyoo-media-standup-nfs-storage
persistentVolumeClaim:
claimName: kyoo-media-standup-nfs-storage
- name: kyoo-media-tvshows-nfs-storage
persistentVolumeClaim:
claimName: kyoo-media-tvshows-nfs-storage
- name: kyoo-media-tvshows-4k-nfs-storage
persistentVolumeClaim:
claimName: kyoo-media-tvshows-4k-nfs-storage