From 059355401197baf7e21a0f0ca5edbd97d8e9aee9 Mon Sep 17 00:00:00 2001
From: Steffen Illium <steffen.illium@gmail.com>
Date: Tue, 7 May 2024 10:37:42 +0200
Subject: [PATCH] persistence

---
 apps/sftpgo/base/deployment.yaml    | 41 +++++++++++++++--------------
 apps/sftpgo/base/kustomization.yaml |  1 +
 apps/sftpgo/base/pvc.yaml           | 12 +++++++++
 3 files changed, 34 insertions(+), 20 deletions(-)
 create mode 100644 apps/sftpgo/base/pvc.yaml

diff --git a/apps/sftpgo/base/deployment.yaml b/apps/sftpgo/base/deployment.yaml
index 6edde0c..ed02e6d 100644
--- a/apps/sftpgo/base/deployment.yaml
+++ b/apps/sftpgo/base/deployment.yaml
@@ -26,23 +26,6 @@ spec:
       - args:
         - sftpgo
         - serve
-        env:
-        - name: SFTPGO_SFTPD__BINDINGS__0__PORT
-          value: "2022"
-        - name: SFTPGO_SFTPD__BINDINGS__0__ADDRESS
-          value: 0.0.0.0
-        - name: SFTPGO_HTTPD__BINDINGS__0__PORT
-          value: "8080"
-        - name: SFTPGO_HTTPD__BINDINGS__0__ADDRESS
-          value: 0.0.0.0
-        - name: SFTPGO_TELEMETRY__BIND_PORT
-          value: "10000"
-        - name: SFTPGO_TELEMETRY__BIND_ADDRESS
-          value: 0.0.0.0
-        - name: SFTPGO_WEBDAVD__BINDINGS__0__PORT
-          value: "8081"
-        - name: SFTPGO_WEBDAVD__BIND_ADDRESS
-          value: 0.0.0.0
         image: ghcr.io/drakkan/sftpgo:latest
         imagePullPolicy: IfNotPresent
         livenessProbe:
@@ -67,6 +50,17 @@ spec:
         resources: {}
         securityContext: {}
         volumeMounts:
+        - mountPath: /srv/sftpgo
+          name: data
+          subPath: srv
+          readOnly: false
+        - mountPath: /var/lib/sftpgo
+          name: data
+          subPath: lib
+          readOnly: false
+        - mountPath: /consume
+          name: consume
+          readOnly: false
         - mountPath: /etc/sftpgo/sftpgo.json
           name: config
           readOnly: true
@@ -75,6 +69,13 @@ spec:
       securityContext: {}
       serviceAccountName: sftpgo
       volumes:
-      - configMap:
-          name: sftpgo
-        name: config
\ No newline at end of file
+        - name: data
+          persistentVolumeClaim:
+            claimName: sftpgo
+        - name: config
+          configMap:
+            name: sftpgo
+        - name: consume
+          nfs:
+            server: rook-ceph-nfs-load-balancer.rook-ceph.svc.cluster.local
+            path: /consume
\ No newline at end of file
diff --git a/apps/sftpgo/base/kustomization.yaml b/apps/sftpgo/base/kustomization.yaml
index 71ef086..e5e3f9b 100644
--- a/apps/sftpgo/base/kustomization.yaml
+++ b/apps/sftpgo/base/kustomization.yaml
@@ -6,3 +6,4 @@ resources:
 - sa.yaml
 - service.yaml
 - ingress.yaml
+- pvc.yaml
diff --git a/apps/sftpgo/base/pvc.yaml b/apps/sftpgo/base/pvc.yaml
new file mode 100644
index 0000000..3dd0d21
--- /dev/null
+++ b/apps/sftpgo/base/pvc.yaml
@@ -0,0 +1,12 @@
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+  name: sftpgo
+spec:
+  storageClassName: "rook-cephfs"
+  volumeMode: Filesystem
+  accessModes:
+    - ReadWriteMany
+  resources:
+    requests:
+      storage: 5Gi