From 8092904e3c20d7fff0a8ffb20b59b0e5fa027fc2 Mon Sep 17 00:00:00 2001 From: danielqsj Date: Tue, 8 Jan 2019 22:08:00 +0800 Subject: [PATCH] Cleanup PathExists callers --- pkg/kubelet/kubelet_getters.go | 8 ++++---- pkg/volume/awsebs/aws_util.go | 5 +++-- pkg/volume/azure_dd/azure_mounter.go | 3 ++- pkg/volume/cinder/attacher.go | 2 +- pkg/volume/cinder/cinder.go | 2 +- pkg/volume/emptydir/empty_dir.go | 2 +- pkg/volume/fc/fc_util.go | 3 ++- pkg/volume/flexvolume/detacher.go | 5 +++-- pkg/volume/flexvolume/unmounter.go | 5 +++-- pkg/volume/gcepd/gce_util.go | 3 ++- pkg/volume/iscsi/iscsi_util.go | 4 ++-- pkg/volume/photon_pd/attacher.go | 2 +- pkg/volume/photon_pd/photon_util.go | 3 ++- pkg/volume/rbd/attacher.go | 2 +- pkg/volume/rbd/rbd.go | 2 +- pkg/volume/rbd/rbd_util.go | 4 ++-- pkg/volume/util/util.go | 6 ------ pkg/volume/vsphere_volume/vsphere_volume_util.go | 3 ++- 18 files changed, 33 insertions(+), 31 deletions(-) diff --git a/pkg/kubelet/kubelet_getters.go b/pkg/kubelet/kubelet_getters.go index a577a6bfad7..1386a83ccb6 100644 --- a/pkg/kubelet/kubelet_getters.go +++ b/pkg/kubelet/kubelet_getters.go @@ -25,14 +25,14 @@ import ( cadvisorapiv1 "github.com/google/cadvisor/info/v1" "k8s.io/klog" - v1 "k8s.io/api/core/v1" + "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/types" "k8s.io/kubernetes/pkg/kubelet/cm" "k8s.io/kubernetes/pkg/kubelet/config" kubecontainer "k8s.io/kubernetes/pkg/kubelet/container" utilfile "k8s.io/kubernetes/pkg/util/file" + "k8s.io/kubernetes/pkg/util/mount" utilnode "k8s.io/kubernetes/pkg/util/node" - volumeutil "k8s.io/kubernetes/pkg/volume/util" ) // getRootDir returns the full path to the directory under which kubelet can @@ -278,7 +278,7 @@ func (kl *Kubelet) getPodVolumePathListFromDisk(podUID types.UID) ([]string, err volumes := []string{} podVolDir := kl.getPodVolumesDir(podUID) - if pathExists, pathErr := volumeutil.PathExists(podVolDir); pathErr != nil { + if pathExists, pathErr := mount.PathExists(podVolDir); pathErr != nil { return volumes, fmt.Errorf("Error checking if path %q exists: %v", podVolDir, pathErr) } else if !pathExists { klog.Warningf("Path %q does not exist", podVolDir) @@ -327,7 +327,7 @@ func (kl *Kubelet) getMountedVolumePathListFromDisk(podUID types.UID) ([]string, func (kl *Kubelet) podVolumeSubpathsDirExists(podUID types.UID) (bool, error) { podVolDir := kl.getPodVolumeSubpathsDir(podUID) - if pathExists, pathErr := volumeutil.PathExists(podVolDir); pathErr != nil { + if pathExists, pathErr := mount.PathExists(podVolDir); pathErr != nil { return true, fmt.Errorf("Error checking if path %q exists: %v", podVolDir, pathErr) } else if !pathExists { return false, nil diff --git a/pkg/volume/awsebs/aws_util.go b/pkg/volume/awsebs/aws_util.go index e1c85aa8b70..b7a8438c756 100644 --- a/pkg/volume/awsebs/aws_util.go +++ b/pkg/volume/awsebs/aws_util.go @@ -31,6 +31,7 @@ import ( "k8s.io/apimachinery/pkg/util/sets" cloudprovider "k8s.io/cloud-provider" "k8s.io/kubernetes/pkg/cloudprovider/providers/aws" + "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/volume" volumeutil "k8s.io/kubernetes/pkg/volume/util" ) @@ -187,7 +188,7 @@ func populateVolumeOptions(pluginName, pvcName string, capacityGB resource.Quant // Returns the first path that exists, or empty string if none exist. func verifyDevicePath(devicePaths []string) (string, error) { for _, path := range devicePaths { - if pathExists, err := volumeutil.PathExists(path); err != nil { + if pathExists, err := mount.PathExists(path); err != nil { return "", fmt.Errorf("Error checking if path exists: %v", err) } else if pathExists { return path, nil @@ -201,7 +202,7 @@ func verifyDevicePath(devicePaths []string) (string, error) { func verifyAllPathsRemoved(devicePaths []string) (bool, error) { allPathsRemoved := true for _, path := range devicePaths { - exists, err := volumeutil.PathExists(path) + exists, err := mount.PathExists(path) if err != nil { return false, fmt.Errorf("Error checking if path exists: %v", err) } diff --git a/pkg/volume/azure_dd/azure_mounter.go b/pkg/volume/azure_dd/azure_mounter.go index 66c0e12910b..a47d709b0ca 100644 --- a/pkg/volume/azure_dd/azure_mounter.go +++ b/pkg/volume/azure_dd/azure_mounter.go @@ -23,6 +23,7 @@ import ( "k8s.io/api/core/v1" "k8s.io/klog" + "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/util" ) @@ -172,7 +173,7 @@ func (u *azureDiskUnmounter) TearDown() error { } func (u *azureDiskUnmounter) TearDownAt(dir string) error { - if pathExists, pathErr := util.PathExists(dir); pathErr != nil { + if pathExists, pathErr := mount.PathExists(dir); pathErr != nil { return fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { klog.Warningf("Warning: Unmount skipped because path does not exist: %v", dir) diff --git a/pkg/volume/cinder/attacher.go b/pkg/volume/cinder/attacher.go index 16fbac3e433..493d2a54c1d 100644 --- a/pkg/volume/cinder/attacher.go +++ b/pkg/volume/cinder/attacher.go @@ -237,7 +237,7 @@ func (attacher *cinderDiskAttacher) WaitForAttach(spec *volume.Spec, devicePath // Using the Cinder volume ID, find the real device path (See Issue #33128) devicePath = attacher.cinderProvider.GetDevicePath(volumeID) } - exists, err := volumeutil.PathExists(devicePath) + exists, err := mount.PathExists(devicePath) if exists && err == nil { klog.Infof("Successfully found attached Cinder disk %q at %v.", volumeID, devicePath) return devicePath, nil diff --git a/pkg/volume/cinder/cinder.go b/pkg/volume/cinder/cinder.go index e4e488b8d2e..2366eb93023 100644 --- a/pkg/volume/cinder/cinder.go +++ b/pkg/volume/cinder/cinder.go @@ -429,7 +429,7 @@ func (c *cinderVolumeUnmounter) TearDown() error { // Unmounts the bind mount, and detaches the disk only if the PD // resource was the last reference to that disk on the kubelet. func (c *cinderVolumeUnmounter) TearDownAt(dir string) error { - if pathExists, pathErr := util.PathExists(dir); pathErr != nil { + if pathExists, pathErr := mount.PathExists(dir); pathErr != nil { return fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { klog.Warningf("Warning: Unmount skipped because path does not exist: %v", dir) diff --git a/pkg/volume/emptydir/empty_dir.go b/pkg/volume/emptydir/empty_dir.go index 0dd6c6508a0..226480c60e4 100644 --- a/pkg/volume/emptydir/empty_dir.go +++ b/pkg/volume/emptydir/empty_dir.go @@ -367,7 +367,7 @@ func (ed *emptyDir) TearDown() error { // TearDownAt simply discards everything in the directory. func (ed *emptyDir) TearDownAt(dir string) error { - if pathExists, pathErr := volumeutil.PathExists(dir); pathErr != nil { + if pathExists, pathErr := mount.PathExists(dir); pathErr != nil { return fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { klog.Warningf("Warning: Unmount skipped because path does not exist: %v", dir) diff --git a/pkg/volume/fc/fc_util.go b/pkg/volume/fc/fc_util.go index 2beafee94bf..9c08d52ffe4 100644 --- a/pkg/volume/fc/fc_util.go +++ b/pkg/volume/fc/fc_util.go @@ -28,6 +28,7 @@ import ( utilfeature "k8s.io/apiserver/pkg/util/feature" "k8s.io/klog" "k8s.io/kubernetes/pkg/features" + "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/volume" volumeutil "k8s.io/kubernetes/pkg/volume/util" ) @@ -375,7 +376,7 @@ func (util *fcUtil) DetachBlockFCDisk(c fcDiskUnmapper, mapPath, devicePath stri } func checkPathExists(path string) (bool, error) { - if pathExists, pathErr := volumeutil.PathExists(path); pathErr != nil { + if pathExists, pathErr := mount.PathExists(path); pathErr != nil { return pathExists, fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { klog.Warningf("Warning: Unmap skipped because path does not exist: %v", path) diff --git a/pkg/volume/flexvolume/detacher.go b/pkg/volume/flexvolume/detacher.go index d98791f3d1b..72292f876fa 100644 --- a/pkg/volume/flexvolume/detacher.go +++ b/pkg/volume/flexvolume/detacher.go @@ -22,6 +22,7 @@ import ( "k8s.io/apimachinery/pkg/types" "k8s.io/klog" + "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/util" ) @@ -51,7 +52,7 @@ func (d *flexVolumeDetacher) Detach(volumeName string, hostName types.NodeName) // UnmountDevice is part of the volume.Detacher interface. func (d *flexVolumeDetacher) UnmountDevice(deviceMountPath string) error { - pathExists, pathErr := util.PathExists(deviceMountPath) + pathExists, pathErr := mount.PathExists(deviceMountPath) if !pathExists { klog.Warningf("Warning: Unmount skipped because path does not exist: %v", deviceMountPath) return nil @@ -85,7 +86,7 @@ func (d *flexVolumeDetacher) UnmountDevice(deviceMountPath string) error { } // Flexvolume driver may remove the directory. Ignore if it does. - if pathExists, pathErr := util.PathExists(deviceMountPath); pathErr != nil { + if pathExists, pathErr := mount.PathExists(deviceMountPath); pathErr != nil { return fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { return nil diff --git a/pkg/volume/flexvolume/unmounter.go b/pkg/volume/flexvolume/unmounter.go index a62636aba40..2827d67d2dd 100644 --- a/pkg/volume/flexvolume/unmounter.go +++ b/pkg/volume/flexvolume/unmounter.go @@ -21,6 +21,7 @@ import ( "os" "k8s.io/klog" + "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/util" "k8s.io/utils/exec" @@ -43,7 +44,7 @@ func (f *flexVolumeUnmounter) TearDown() error { func (f *flexVolumeUnmounter) TearDownAt(dir string) error { - pathExists, pathErr := util.PathExists(dir) + pathExists, pathErr := mount.PathExists(dir) if !pathExists { klog.Warningf("Warning: Unmount skipped because path does not exist: %v", dir) return nil @@ -64,7 +65,7 @@ func (f *flexVolumeUnmounter) TearDownAt(dir string) error { } // Flexvolume driver may remove the directory. Ignore if it does. - if pathExists, pathErr := util.PathExists(dir); pathErr != nil { + if pathExists, pathErr := mount.PathExists(dir); pathErr != nil { return fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { return nil diff --git a/pkg/volume/gcepd/gce_util.go b/pkg/volume/gcepd/gce_util.go index 153bab8716d..d0e13a8ddf7 100644 --- a/pkg/volume/gcepd/gce_util.go +++ b/pkg/volume/gcepd/gce_util.go @@ -33,6 +33,7 @@ import ( "k8s.io/kubernetes/pkg/features" kubeletapis "k8s.io/kubernetes/pkg/kubelet/apis" utilfile "k8s.io/kubernetes/pkg/util/file" + "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/volume" volumeutil "k8s.io/kubernetes/pkg/volume/util" "k8s.io/utils/exec" @@ -207,7 +208,7 @@ func verifyDevicePath(devicePaths []string, sdBeforeSet sets.String, diskName st } for _, path := range devicePaths { - if pathExists, err := volumeutil.PathExists(path); err != nil { + if pathExists, err := mount.PathExists(path); err != nil { return "", fmt.Errorf("Error checking if path exists: %v", err) } else if pathExists { // validate that the path actually resolves to the correct disk diff --git a/pkg/volume/iscsi/iscsi_util.go b/pkg/volume/iscsi/iscsi_util.go index e5e04c518fd..9e04ab2b5f8 100644 --- a/pkg/volume/iscsi/iscsi_util.go +++ b/pkg/volume/iscsi/iscsi_util.go @@ -590,7 +590,7 @@ func deleteDevices(c iscsiDiskUnmounter) error { // DetachDisk unmounts and detaches a volume from node func (util *ISCSIUtil) DetachDisk(c iscsiDiskUnmounter, mntPath string) error { - if pathExists, pathErr := volumeutil.PathExists(mntPath); pathErr != nil { + if pathExists, pathErr := mount.PathExists(mntPath); pathErr != nil { return fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { klog.Warningf("Warning: Unmount skipped because path does not exist: %v", mntPath) @@ -667,7 +667,7 @@ func (util *ISCSIUtil) DetachDisk(c iscsiDiskUnmounter, mntPath string) error { // DetachBlockISCSIDisk removes loopback device for a volume and detaches a volume from node func (util *ISCSIUtil) DetachBlockISCSIDisk(c iscsiDiskUnmapper, mapPath string) error { - if pathExists, pathErr := volumeutil.PathExists(mapPath); pathErr != nil { + if pathExists, pathErr := mount.PathExists(mapPath); pathErr != nil { return fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { klog.Warningf("Warning: Unmap skipped because path does not exist: %v", mapPath) diff --git a/pkg/volume/photon_pd/attacher.go b/pkg/volume/photon_pd/attacher.go index 2421eee6980..3592e7ce8e3 100644 --- a/pkg/volume/photon_pd/attacher.go +++ b/pkg/volume/photon_pd/attacher.go @@ -293,7 +293,7 @@ func (detacher *photonPersistentDiskDetacher) WaitForDetach(devicePath string, t select { case <-ticker.C: klog.V(4).Infof("Checking device %q is detached.", devicePath) - if pathExists, err := volumeutil.PathExists(devicePath); err != nil { + if pathExists, err := mount.PathExists(devicePath); err != nil { return fmt.Errorf("Error checking if device path exists: %v", err) } else if !pathExists { return nil diff --git a/pkg/volume/photon_pd/photon_util.go b/pkg/volume/photon_pd/photon_util.go index fe3a6c24c6d..23ebf92d033 100644 --- a/pkg/volume/photon_pd/photon_util.go +++ b/pkg/volume/photon_pd/photon_util.go @@ -27,6 +27,7 @@ import ( cloudprovider "k8s.io/cloud-provider" "k8s.io/klog" "k8s.io/kubernetes/pkg/cloudprovider/providers/photon" + "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/volume" volumeutil "k8s.io/kubernetes/pkg/volume/util" ) @@ -69,7 +70,7 @@ func scsiHostScan() { } func verifyDevicePath(path string) (string, error) { - if pathExists, err := volumeutil.PathExists(path); err != nil { + if pathExists, err := mount.PathExists(path); err != nil { return "", fmt.Errorf("Error checking if path exists: %v", err) } else if pathExists { return path, nil diff --git a/pkg/volume/rbd/attacher.go b/pkg/volume/rbd/attacher.go index 626dc321489..c82a20e40f3 100644 --- a/pkg/volume/rbd/attacher.go +++ b/pkg/volume/rbd/attacher.go @@ -197,7 +197,7 @@ var _ volume.DeviceUnmounter = &rbdDetacher{} // - Remove the deviceMountPath at last. // This method is idempotent, callers are responsible for retrying on failure. func (detacher *rbdDetacher) UnmountDevice(deviceMountPath string) error { - if pathExists, pathErr := volutil.PathExists(deviceMountPath); pathErr != nil { + if pathExists, pathErr := mount.PathExists(deviceMountPath); pathErr != nil { return fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { klog.Warningf("Warning: Unmount skipped because path does not exist: %v", deviceMountPath) diff --git a/pkg/volume/rbd/rbd.go b/pkg/volume/rbd/rbd.go index d9197428f8b..96fc66d64e8 100644 --- a/pkg/volume/rbd/rbd.go +++ b/pkg/volume/rbd/rbd.go @@ -848,7 +848,7 @@ func (c *rbdUnmounter) TearDown() error { func (c *rbdUnmounter) TearDownAt(dir string) error { klog.V(4).Infof("rbd: attempting to teardown at %s", dir) - if pathExists, pathErr := volutil.PathExists(dir); pathErr != nil { + if pathExists, pathErr := mount.PathExists(dir); pathErr != nil { return fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { klog.Warningf("Warning: Unmount skipped because path does not exist: %v", dir) diff --git a/pkg/volume/rbd/rbd_util.go b/pkg/volume/rbd/rbd_util.go index ec0dd7f2ebb..a4afb518605 100644 --- a/pkg/volume/rbd/rbd_util.go +++ b/pkg/volume/rbd/rbd_util.go @@ -363,7 +363,7 @@ func (util *RBDUtil) AttachDisk(b rbdMounter) (string, error) { var output []byte globalPDPath := util.MakeGlobalPDName(*b.rbd) - if pathExists, pathErr := volutil.PathExists(globalPDPath); pathErr != nil { + if pathExists, pathErr := mount.PathExists(globalPDPath); pathErr != nil { return "", fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { if err := os.MkdirAll(globalPDPath, 0750); err != nil { @@ -505,7 +505,7 @@ func (util *RBDUtil) DetachDisk(plugin *rbdPlugin, deviceMountPath string, devic // DetachBlockDisk detaches the disk from the node. func (util *RBDUtil) DetachBlockDisk(disk rbdDiskUnmapper, mapPath string) error { - if pathExists, pathErr := volutil.PathExists(mapPath); pathErr != nil { + if pathExists, pathErr := mount.PathExists(mapPath); pathErr != nil { return fmt.Errorf("Error checking if path exists: %v", pathErr) } else if !pathExists { klog.Warningf("Warning: Unmap skipped because path does not exist: %v", mapPath) diff --git a/pkg/volume/util/util.go b/pkg/volume/util/util.go index 437803b7afc..da79215b5d3 100644 --- a/pkg/volume/util/util.go +++ b/pkg/volume/util/util.go @@ -125,12 +125,6 @@ func SetReady(dir string) { file.Close() } -// PathExists returns true if the specified path exists. -// TODO: Change callers to call mount pkg directly -func PathExists(path string) (bool, error) { - return mount.PathExists(path) -} - // IsCorruptedMnt return true if err is about corrupted mount point // TODO: Change callers to call mount pkg directly func IsCorruptedMnt(err error) bool { diff --git a/pkg/volume/vsphere_volume/vsphere_volume_util.go b/pkg/volume/vsphere_volume/vsphere_volume_util.go index a5880ea7fbf..4c87623326c 100644 --- a/pkg/volume/vsphere_volume/vsphere_volume_util.go +++ b/pkg/volume/vsphere_volume/vsphere_volume_util.go @@ -28,6 +28,7 @@ import ( "k8s.io/klog" "k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere" "k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vclib" + "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/volume" volumeutil "k8s.io/kubernetes/pkg/volume/util" ) @@ -73,7 +74,7 @@ type VolumeSpec struct { } func verifyDevicePath(path string) (string, error) { - if pathExists, err := volumeutil.PathExists(path); err != nil { + if pathExists, err := mount.PathExists(path); err != nil { return "", fmt.Errorf("Error checking if path exists: %v", err) } else if pathExists { return path, nil