From e9b3a8a6e3cd79318de87ec9193246128798eed9 Mon Sep 17 00:00:00 2001 From: lewis <747342561@qq.com> Date: Tue, 9 Nov 2021 10:55:17 +0800 Subject: [PATCH 1/2] fix bug --- modules/storage/obs.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/storage/obs.go b/modules/storage/obs.go index bd73281d0..8dbf37b76 100755 --- a/modules/storage/obs.go +++ b/modules/storage/obs.go @@ -178,6 +178,7 @@ func GetObsListObject(jobName, parentDir string) ([]FileInfo, error) { input := &obs.ListObjectsInput{} input.Bucket = setting.Bucket input.Prefix = strings.TrimPrefix(path.Join(setting.TrainJobModelPath, jobName, setting.OutPutPath, parentDir), "/") + strPrefix := strings.Split(input.Prefix, "/") output, err := ObsCli.ListObjects(input) fileInfos := make([]FileInfo, 0) if err == nil { @@ -193,6 +194,10 @@ func GetObsListObject(jobName, parentDir string) ([]FileInfo, error) { continue } } else { + //files in next level dir + if len(str1) - len(strPrefix) > 1 { + continue + } fileName = str1[len(str1)-1] isDir = false } From 2b564a7a342495142bf36c5b2c3752e830beb920 Mon Sep 17 00:00:00 2001 From: lewis <747342561@qq.com> Date: Tue, 9 Nov 2021 11:54:08 +0800 Subject: [PATCH 2/2] dirs --- modules/storage/obs.go | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/modules/storage/obs.go b/modules/storage/obs.go index 8dbf37b76..8e72c03c4 100755 --- a/modules/storage/obs.go +++ b/modules/storage/obs.go @@ -187,10 +187,19 @@ func GetObsListObject(jobName, parentDir string) ([]FileInfo, error) { var isDir bool var fileName,nextParentDir string if strings.HasSuffix(val.Key, "/") { + //dirs in next level dir + if len(str1) - len(strPrefix) > 2 { + continue + } fileName = str1[len(str1)-2] isDir = true - nextParentDir = fileName - if fileName == parentDir || (fileName + "/") == setting.OutPutPath { + if parentDir == "" { + nextParentDir = fileName + } else { + nextParentDir = parentDir + "/" + fileName + } + + if fileName == strPrefix[len(strPrefix)-1] || (fileName + "/") == setting.OutPutPath { continue } } else { @@ -200,6 +209,7 @@ func GetObsListObject(jobName, parentDir string) ([]FileInfo, error) { } fileName = str1[len(str1)-1] isDir = false + nextParentDir = parentDir } fileInfo := FileInfo{