added clone pvc test

This commit is contained in:
Manuel Ganter 2025-07-22 14:41:18 +02:00
parent 13fc4d916d
commit 2edc6c0c39
No known key found for this signature in database
4 changed files with 130 additions and 0 deletions

11
README.md Normal file
View file

@ -0,0 +1,11 @@
# test_01
State: **SUCCESSFUL**
Question Answered: Does Snapshotting/Restore with CSI volumes work?
# test_02
State: **FAILED**
Question Answered: Can i clone a non-csi volume to a csi-volume?

54
test_02/01_deploy.yaml Normal file
View file

@ -0,0 +1,54 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: non-csi
namespace: default
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 200Gi
storageClassName: default
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: nginx
name: test-02
namespace: default
spec:
progressDeadlineSeconds: 600
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
app: nginx
strategy:
type: Recreate
template:
metadata:
creationTimestamp: null
labels:
app: nginx
spec:
containers:
- image: nginx
imagePullPolicy: Always
name: nginx
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: "/non-csi"
name: non-csi
volumes:
- name: non-csi
persistentVolumeClaim:
claimName: non-csi
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 30

View file

@ -0,0 +1,3 @@
Open shell to default/non-csi and `cd /non-csi`.
Then create a file here.

View file

@ -0,0 +1,62 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: cloned-non-csi
namespace: default
spec:
accessModes:
- ReadWriteOnce
storageClassName: "csi-disk"
resources:
requests:
storage: 8Gi
dataSource:
kind: PersistentVolumeClaim
name: non-csi
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: nginx
name: test-02
namespace: default
spec:
progressDeadlineSeconds: 600
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
app: nginx
strategy:
type: Recreate
template:
metadata:
creationTimestamp: null
labels:
app: nginx
spec:
containers:
- image: nginx
imagePullPolicy: Always
name: nginx
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: "/non-csi"
name: non-csi
- mountPath: "/cloned-non-csi"
name: cloned-non-csi
volumes:
- name: non-csi
persistentVolumeClaim:
claimName: non-csi
- name: cloned-non-csi
persistentVolumeClaim:
claimName: cloned-non-csi
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 30