add vers mountoptions and fix comments

This commit is contained in:
andyzhangx 2017-11-16 07:12:05 +00:00
parent badefda861
commit e316bbcdb3
3 changed files with 27 additions and 14 deletions

View File

@ -222,7 +222,7 @@ func (b *azureFileMounter) SetUpAt(dir string, fsGroup *int64) error {
} else { } else {
os.MkdirAll(dir, 0700) os.MkdirAll(dir, 0700)
// parameters suggested by https://azure.microsoft.com/en-us/documentation/articles/storage-how-to-use-files-linux/ // parameters suggested by https://azure.microsoft.com/en-us/documentation/articles/storage-how-to-use-files-linux/
options := []string{fmt.Sprintf("vers=3.0,username=%s,password=%s", accountName, accountKey)} options := []string{fmt.Sprintf("username=%s,password=%s", accountName, accountKey)}
if b.readOnly { if b.readOnly {
options = append(options, "ro") options = append(options, "ro")
} }

View File

@ -368,19 +368,23 @@ func TestAppendDefaultMountOptions(t *testing.T) {
}{ }{
{ {
options: []string{"dir_mode=0777"}, options: []string{"dir_mode=0777"},
expected: []string{"dir_mode=0777", fmt.Sprintf("%s=%s", fileModeName, defaultFileMode)}, expected: []string{"dir_mode=0777", fmt.Sprintf("%s=%s", fileMode, defaultFileMode), fmt.Sprintf("%s=%s", vers, defaultVers)},
}, },
{ {
options: []string{"file_mode=0777"}, options: []string{"file_mode=0777"},
expected: []string{"file_mode=0777", fmt.Sprintf("%s=%s", dirModeName, defaultDirMode)}, expected: []string{"file_mode=0777", fmt.Sprintf("%s=%s", dirMode, defaultDirMode), fmt.Sprintf("%s=%s", vers, defaultVers)},
},
{
options: []string{"vers=2.1"},
expected: []string{"vers=2.1", fmt.Sprintf("%s=%s", fileMode, defaultFileMode), fmt.Sprintf("%s=%s", dirMode, defaultDirMode)},
}, },
{ {
options: []string{""}, options: []string{""},
expected: []string{"", fmt.Sprintf("%s=%s", fileModeName, defaultFileMode), fmt.Sprintf("%s=%s", dirModeName, defaultDirMode)}, expected: []string{"", fmt.Sprintf("%s=%s", fileMode, defaultFileMode), fmt.Sprintf("%s=%s", dirMode, defaultDirMode), fmt.Sprintf("%s=%s", vers, defaultVers)},
}, },
{ {
options: []string{"file_mode=0777", "dir_mode=0777"}, options: []string{"file_mode=0777", "dir_mode=0777"},
expected: []string{"file_mode=0777", "dir_mode=0777"}, expected: []string{"file_mode=0777", "dir_mode=0777", fmt.Sprintf("%s=%s", vers, defaultVers)},
}, },
} }

View File

@ -27,10 +27,12 @@ import (
) )
const ( const (
fileModeName = "file_mode" fileMode = "file_mode"
dirModeName = "dir_mode" dirMode = "dir_mode"
defaultFileMode = "700" vers = "vers"
defaultDirMode = "700" defaultFileMode = "0700"
defaultDirMode = "0700"
defaultVers = "3.0"
) )
// Abstract interface to azure file operations. // Abstract interface to azure file operations.
@ -93,28 +95,35 @@ func (s *azureSvc) SetAzureCredentials(host volume.VolumeHost, nameSpace, accoun
return secretName, err return secretName, err
} }
// check whether mountOptions contains file_mode and dir_mode, if not, append default mode // check whether mountOptions contain file_mode and dir_mode, if not, append default mode
func appendDefaultMountOptions(mountOptions []string) []string { func appendDefaultMountOptions(mountOptions []string) []string {
fileModeFlag := false fileModeFlag := false
dirModeFlag := false dirModeFlag := false
versFlag := false
for _, mountOption := range mountOptions { for _, mountOption := range mountOptions {
if strings.HasPrefix(mountOption, fileModeName) { if strings.HasPrefix(mountOption, fileMode) {
fileModeFlag = true fileModeFlag = true
} }
if strings.HasPrefix(mountOption, dirModeName) { if strings.HasPrefix(mountOption, dirMode) {
dirModeFlag = true dirModeFlag = true
} }
if strings.HasPrefix(mountOption, vers) {
versFlag = true
}
} }
allMountOptions := mountOptions allMountOptions := mountOptions
if !fileModeFlag { if !fileModeFlag {
allMountOptions = append(allMountOptions, fmt.Sprintf("%s=%s", fileModeName, defaultFileMode)) allMountOptions = append(allMountOptions, fmt.Sprintf("%s=%s", fileMode, defaultFileMode))
} }
if !dirModeFlag { if !dirModeFlag {
allMountOptions = append(allMountOptions, fmt.Sprintf("%s=%s", dirModeName, defaultDirMode)) allMountOptions = append(allMountOptions, fmt.Sprintf("%s=%s", dirMode, defaultDirMode))
} }
if !versFlag {
allMountOptions = append(allMountOptions, fmt.Sprintf("%s=%s", vers, defaultVers))
}
return allMountOptions return allMountOptions
} }