@@ -36,13 +36,15 @@ import (
3636 "github.com/kubernetes-csi/external-attacher/pkg/connection"
3737
3838 csiMigration "github.com/kubernetes-csi/kubernetes-csi-migration-library"
39+ csiclient "k8s.io/csi-api/pkg/client/clientset/versioned"
3940)
4041
4142// csiHandler is a handler that calls CSI to attach/detach volume.
4243// It adds finalizer to VolumeAttachment instance to make sure they're detached
4344// before deletion.
4445type csiHandler struct {
4546 client kubernetes.Interface
47+ csiClientSet csiclient.Interface
4648 attacherName string
4749 csiConnection connection.CSIConnection
4850 pvLister corelisters.PersistentVolumeLister
@@ -58,6 +60,7 @@ var _ Handler = &csiHandler{}
5860// NewCSIHandler creates a new CSIHandler.
5961func NewCSIHandler (
6062 client kubernetes.Interface ,
63+ csiClientSet csiclient.Interface ,
6164 attacherName string ,
6265 csiConnection connection.CSIConnection ,
6366 pvLister corelisters.PersistentVolumeLister ,
@@ -68,6 +71,7 @@ func NewCSIHandler(
6871
6972 return & csiHandler {
7073 client : client ,
74+ csiClientSet : csiClientSet ,
7175 attacherName : attacherName ,
7276 csiConnection : csiConnection ,
7377 pvLister : pvLister ,
@@ -497,7 +501,8 @@ func (h *csiHandler) getCredentialsFromPV(csiSource *v1.CSIPersistentVolumeSourc
497501// node ID stored in VolumeAttachment annotation.
498502func (h * csiHandler ) getNodeID (driver string , nodeName string , va * storage.VolumeAttachment ) (string , error ) {
499503 // Try to find CSINodeInfo first.
500- nodeInfo , err := h .nodeInfoLister .Get (nodeName )
504+ // nodeInfo, err := h.nodeInfoLister.Get(nodeName) // TODO (kubernetes/kubernetes #71052) use the lister once it syncs existing CSINodeInfo objects properly.
505+ nodeInfo , err := h .csiClientSet .CsiV1alpha1 ().CSINodeInfos ().Get (nodeName , metav1.GetOptions {})
501506 if err == nil {
502507 if nodeID , found := GetNodeIDFromNodeInfo (driver , nodeInfo ); found {
503508 glog .V (4 ).Infof ("Found NodeID %s in CSINodeInfo %s" , nodeID , nodeName )
0 commit comments