Files
infrastructure/clusters/cl01tl/manifests/soulsync/Deployment-soulsync.yaml
gitea-bot af4ef0f160 Automated Manifest Update (#2845)
This PR contains newly rendered Kubernetes manifests automatically generated by the CI workflow.

Reviewed-on: #2845
Co-authored-by: gitea-bot <gitea-bot@alexlebens.net>
Co-committed-by: gitea-bot <gitea-bot@alexlebens.net>
2025-12-24 23:01:31 +00:00

124 lines
3.4 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: soulsync
labels:
app.kubernetes.io/controller: main
app.kubernetes.io/instance: soulsync
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: soulsync
helm.sh/chart: soulsync-4.5.0
namespace: soulsync
spec:
revisionHistoryLimit: 3
replicas: 0
strategy:
type: Recreate
selector:
matchLabels:
app.kubernetes.io/controller: main
app.kubernetes.io/name: soulsync
app.kubernetes.io/instance: soulsync
template:
metadata:
labels:
app.kubernetes.io/controller: main
app.kubernetes.io/instance: soulsync
app.kubernetes.io/name: soulsync
spec:
enableServiceLinks: false
serviceAccountName: default
automountServiceAccountToken: true
hostIPC: false
hostNetwork: false
hostPID: false
dnsPolicy: ClusterFirst
initContainers:
- command:
- /bin/sh
- -ec
- |
echo ">> Coping files ..."
ls /tmp
cp -fv /tmp/config.json /app/config/config.json
echo ">> Files in config:"
ls /app/config
image: busybox:1.37.0
imagePullPolicy: IfNotPresent
name: init-copy-config
resources:
requests:
cpu: 10m
memory: 128Mi
volumeMounts:
- mountPath: /app/config
name: config
- mountPath: /tmp/config.json
mountPropagation: None
name: secret
readOnly: true
subPath: config.json
containers:
- env:
- name: TZ
value: US/Central
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: FLASK_ENV
value: production
- name: PYTHONPATH
value: /app
- name: SOULSYNC_CONFIG_PATH
value: /app/config/config.json
image: boulderbadgedad/soulsync:latest
imagePullPolicy: IfNotPresent
livenessProbe:
exec:
command:
- CMD
- curl
- -f
- http://localhost:8888/
failureThreshold: 5
initialDelaySeconds: 60
periodSeconds: 30
successThreshold: 1
timeoutSeconds: 10
name: main
resources:
requests:
cpu: 100m
memory: 512Mi
volumeMounts:
- mountPath: /app/config
name: config
- mountPath: /app/database
name: database
- mountPath: /app/downloads
name: downloads
- mountPath: /music
name: music
readOnly: true
- mountPath: /app/Transfer
name: transfer
volumes:
- name: config
persistentVolumeClaim:
claimName: soulsync-config
- name: database
persistentVolumeClaim:
claimName: soulsync-database
- name: downloads
persistentVolumeClaim:
claimName: soulsync-slskd-nfs-storage
- name: music
persistentVolumeClaim:
claimName: soulsync-music-nfs-storage
- name: secret
secret:
secretName: soulsync-config-secret
- emptyDir: {}
name: transfer