From 562e5c6f3fec50fa5c48978d27a10353ec2b2f0d Mon Sep 17 00:00:00 2001 From: wenjgao Date: Fri, 31 Aug 2018 10:42:10 +0800 Subject: [PATCH] add lun info when construct iscsi volumeSpec from mountPath --- pkg/volume/iscsi/iscsi.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkg/volume/iscsi/iscsi.go b/pkg/volume/iscsi/iscsi.go index f7f2cc2b130..d676065c642 100644 --- a/pkg/volume/iscsi/iscsi.go +++ b/pkg/volume/iscsi/iscsi.go @@ -231,6 +231,14 @@ func (plugin *iscsiPlugin) ConstructVolumeSpec(volumeName, mountPath string) (*v if err != nil { return nil, err } + arr := strings.Split(device, "-lun-") + if len(arr) < 2 { + return nil, fmt.Errorf("failed to retrieve lun from globalPDPath: %v", globalPDPath) + } + lun, err := strconv.Atoi(arr[1]) + if err != nil { + return nil, err + } iface, _ := extractIface(globalPDPath) iscsiVolume := &v1.Volume{ Name: volumeName, @@ -238,6 +246,7 @@ func (plugin *iscsiPlugin) ConstructVolumeSpec(volumeName, mountPath string) (*v ISCSI: &v1.ISCSIVolumeSource{ TargetPortal: bkpPortal, IQN: iqn, + Lun: int32(lun), ISCSIInterface: iface, }, },