diff --git a/cloud/blockstore/tools/csi_driver/deploy/example_pv/pvc.yaml b/cloud/blockstore/tools/csi_driver/deploy/example_pv/pvc.yaml index 928b081255b..f22b624328b 100644 --- a/cloud/blockstore/tools/csi_driver/deploy/example_pv/pvc.yaml +++ b/cloud/blockstore/tools/csi_driver/deploy/example_pv/pvc.yaml @@ -12,3 +12,4 @@ spec: limits: storage: 1Gi storageClassName: nbs-csi-sc + volumeName: my-pv diff --git a/cloud/blockstore/tools/csi_driver/deploy/manifests/6-daemonset.yaml b/cloud/blockstore/tools/csi_driver/deploy/manifests/6-daemonset.yaml index 9dd0ddeecc1..0bc7cf63f42 100644 --- a/cloud/blockstore/tools/csi_driver/deploy/manifests/6-daemonset.yaml +++ b/cloud/blockstore/tools/csi_driver/deploy/manifests/6-daemonset.yaml @@ -92,9 +92,7 @@ spec: type: DirectoryOrCreate - name: sockets-dir hostPath: - path: /run/nbsd/sockets/ + path: /run/nbsd/sockets type: DirectoryOrCreate imagePullSecrets: - name: nbs-puller-secret - tolerations: - - operator: Exists diff --git a/cloud/blockstore/tools/csi_driver/internal/driver/controller.go b/cloud/blockstore/tools/csi_driver/internal/driver/controller.go index 9f87b739b34..55619888687 100644 --- a/cloud/blockstore/tools/csi_driver/internal/driver/controller.go +++ b/cloud/blockstore/tools/csi_driver/internal/driver/controller.go @@ -84,12 +84,27 @@ func (c *nbsServerControllerService) CreateVolume( ) } + var baseDiskID string + var baseDiskCheckpointID string + if req.Parameters != nil { + for key, value := range req.Parameters { + if key == "base-disk-id" { + baseDiskID = value + } + if key == "base-disk-checkpoint-id" { + baseDiskCheckpointID = value + } + } + } + diskId := req.Name createVolumeRequest := &nbsblockstorepublicapi.TCreateVolumeRequest{ - DiskId: diskId, - BlockSize: diskBlockSize, - BlocksCount: uint64(requiredBytes) / uint64(diskBlockSize), - StorageMediaKind: nbsstoragecoreapi.EStorageMediaKind_STORAGE_MEDIA_SSD, + DiskId: diskId, + BlockSize: diskBlockSize, + BlocksCount: uint64(requiredBytes) / uint64(diskBlockSize), + StorageMediaKind: nbsstoragecoreapi.EStorageMediaKind_STORAGE_MEDIA_SSD, + BaseDiskId: baseDiskID, + BaseDiskCheckpointId: baseDiskCheckpointID, } _, err := c.nbsClient.CreateVolume(ctx, createVolumeRequest)