add remount logic for azure file plugin

fix comments
pull/6/head
andyzhangx 2018-03-01 05:57:32 +00:00
parent 07240b7166
commit dce507ce69
1 changed files with 14 additions and 1 deletions

View File

@ -18,6 +18,7 @@ package azure_file
import (
"fmt"
"io/ioutil"
"os"
"runtime"
@ -241,8 +242,20 @@ func (b *azureFileMounter) SetUpAt(dir string, fsGroup *int64) error {
return err
}
if !notMnt {
return nil
// testing original mount point, make sure the mount link is valid
if _, err := ioutil.ReadDir(dir); err == nil {
glog.V(4).Infof("azureFile - already mounted to target %s", dir)
return nil
}
// mount link is invalid, now unmount and remount later
glog.Warningf("azureFile - ReadDir %s failed with %v, unmount this directory", dir, err)
if err := b.mounter.Unmount(dir); err != nil {
glog.Errorf("azureFile - Unmount directory %s failed with %v", dir, err)
return err
}
notMnt = true
}
var accountKey, accountName string
if accountName, accountKey, err = b.util.GetAzureCredentials(b.plugin.host, b.secretNamespace, b.secretName); err != nil {
return err