diff --git a/pkg/controller/util.go b/pkg/controller/util.go index 3b99324b..8c64de83 100644 --- a/pkg/controller/util.go +++ b/pkg/controller/util.go @@ -106,6 +106,12 @@ func storeObjectUpdate(store cache.Store, obj interface{}, className string) (bo // GetSnapshotContentNameForSnapshot returns SnapshotContent.Name for the create VolumeSnapshotContent. // The name must be unique. func GetSnapshotContentNameForSnapshot(snapshot *crdv1.VolumeSnapshot) string { + // If VolumeSnapshot object has SnapshotContentName, use it directly. + // This might be the case for static provisioning. + if len(snapshot.Spec.SnapshotContentName) > 0 { + return snapshot.Spec.SnapshotContentName + } + // Construct SnapshotContentName for dynamic provisioning. return "snapcontent-" + string(snapshot.UID) }