discard umount error if directory is not mounted

if the directory is not mounted return nil
during umount of mountPoint

Discard error if error is os.IsNotExist

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
(cherry picked from commit dcafdb519e)
This commit is contained in:
Madhu Rajanna 2019-12-17 14:37:46 +05:30 committed by mergify[bot]
parent 7912ec0040
commit eddfc123e5
3 changed files with 7 additions and 2 deletions

View File

@ -267,7 +267,8 @@ func (ns *NodeServer) NodeUnpublishVolume(ctx context.Context, req *csi.NodeUnpu
return nil, status.Error(codes.Internal, err.Error())
}
if err = os.Remove(targetPath); err != nil {
err = os.Remove(targetPath)
if err != nil && !os.IsNotExist(err) {
return nil, status.Error(codes.Internal, err.Error())
}

View File

@ -321,6 +321,10 @@ func bindMount(ctx context.Context, from, to string, readOnly bool, mntOptions [
func unmountVolume(ctx context.Context, mountPoint string) error {
if err := execCommandErr(ctx, "umount", mountPoint); err != nil {
if strings.Contains(err.Error(), fmt.Sprintf("exit status 32: umount: %s: not mounted", mountPoint)) ||
strings.Contains(err.Error(), "No such file or directory") {
return nil
}
return err
}

View File

@ -155,7 +155,7 @@ func (nc *NodeCache) Delete(identifier string) error {
file := path.Join(nc.BasePath, nc.CacheDir, identifier+".json")
err := os.Remove(file)
if err != nil {
if err == os.ErrNotExist {
if os.IsNotExist(err) {
klog.V(4).Infof("node-cache: cannot delete missing metadata storage file %s, assuming it's already deleted", file)
return nil
}