From 426a9623b637172c356bad922aebf3e99bafb1c5 Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Tue, 27 Jul 2021 00:04:02 +0300 Subject: [PATCH] Add manual (static) provisioning example --- deploy/kubernetes/examples/pvc-manual.yaml | 45 ++++++++++++++++++++++ deploy/kubernetes/examples/pvc.yaml | 3 ++ pkg/driver/controllerserver.go | 1 - 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 deploy/kubernetes/examples/pvc-manual.yaml diff --git a/deploy/kubernetes/examples/pvc-manual.yaml b/deploy/kubernetes/examples/pvc-manual.yaml new file mode 100644 index 0000000..2265642 --- /dev/null +++ b/deploy/kubernetes/examples/pvc-manual.yaml @@ -0,0 +1,45 @@ +# Statically provisioned PVC: +# An existing bucket or path inside bucket manually created +# by the administrator beforehand will be bound to the PVC, +# and it won't be removed when you remove the PV +apiVersion: v1 +kind: PersistentVolume +metadata: + name: manualbucket/path +spec: + storageClassName: csi-s3 + capacity: + storage: 10Gi + accessModes: + - ReadWriteMany + claimRef: + namespace: default + name: manualclaim + csi: + driver: ch.ctrox.csi.s3-driver + controllerPublishSecretRef: + name: csi-s3-secret + namespace: kube-system + nodePublishSecretRef: + name: csi-s3-secret + namespace: kube-system + nodeStageSecretRef: + name: csi-s3-secret + namespace: kube-system + volumeAttributes: + capacity: 10Gi + mounter: geesefs + volumeHandle: manualbucket/path +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: csi-s3-pvc +spec: + # Empty storage class disables dynamic provisioning + storageClassName: "" + accessModes: + - ReadWriteMany + resources: + requests: + storage: 10Gi diff --git a/deploy/kubernetes/examples/pvc.yaml b/deploy/kubernetes/examples/pvc.yaml index 68f0496..ad56e55 100644 --- a/deploy/kubernetes/examples/pvc.yaml +++ b/deploy/kubernetes/examples/pvc.yaml @@ -1,3 +1,6 @@ +# Dynamically provisioned PVC: +# A bucket or path inside bucket will be created automatically +# for the PV and removed when the PV will be removed apiVersion: v1 kind: PersistentVolumeClaim metadata: diff --git a/pkg/driver/controllerserver.go b/pkg/driver/controllerserver.go index 8a7337f..e332570 100644 --- a/pkg/driver/controllerserver.go +++ b/pkg/driver/controllerserver.go @@ -125,7 +125,6 @@ func (cs *controllerServer) DeleteVolume(ctx context.Context, req *csi.DeleteVol return nil, fmt.Errorf("failed to initialize S3 client: %s", err) } - // FIXME Don't delete the bucket if it existed initially var deleteErr error if prefix == "" { // prefix is empty, we delete the whole bucket