---
# PersistentVolume for RAG Data
apiVersion: v1
kind: PersistentVolume
metadata:
  name: provisioning-rag-data-pv
  labels:
    app: provisioning-rag
    component: storage
spec:
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: standard
  hostPath:
    path: /data/provisioning-rag
    type: DirectoryOrCreate

---
# PersistentVolume for SurrealDB Data
apiVersion: v1
kind: PersistentVolume
metadata:
  name: surrealdb-data-pv
  labels:
    app: surrealdb
    component: storage
spec:
  capacity:
    storage: 20Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: standard
  hostPath:
    path: /data/surrealdb
    type: DirectoryOrCreate

---
# PersistentVolumeClaim for RAG Service
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: provisioning-rag-data-pvc
  namespace: provisioning-rag
  labels:
    app: provisioning-rag
    component: storage
spec:
  accessModes:
    - ReadWriteOnce
  storageClassName: standard
  resources:
    requests:
      storage: 10Gi
  selector:
    matchLabels:
      app: provisioning-rag
      component: storage

---
# PersistentVolumeClaim for SurrealDB
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: surrealdb-data-pvc
  namespace: provisioning-rag
  labels:
    app: surrealdb
    component: storage
spec:
  accessModes:
    - ReadWriteOnce
  storageClassName: standard
  resources:
    requests:
      storage: 20Gi
  selector:
    matchLabels:
      app: surrealdb
      component: storage
