[agent-operator] - DLTU download from oss part

This commit is contained in:
zeaslity
2024-04-22 16:47:40 +08:00
parent c8bfb2b133
commit 30d83f3c61
4 changed files with 61 additions and 15 deletions

View File

@@ -203,9 +203,17 @@ func DownloadCompressUpload(fullNameList []string, shouldGzip bool, gzipFolderFu
// 5. ossFileName - 如果结尾为txt则为文件的形式如果为tar.gz则为gzip文件夹的形式
func DownloadLoadTagPush(downloadFromOss bool, ossUrlPrefix, ossFileName, localGzipFolder string, targetHarborFullName string) []string {
separator := os.PathSeparator
if !strings.HasSuffix(localGzipFolder, string(separator)) {
localGzipFolder += string(separator)
}
// download
if downloadFromOss {
parseAndDownloadFromOss(ossUrlPrefix, ossFileName, localGzipFolder)
if !parseAndDownloadFromOss(ossUrlPrefix, ossFileName, localGzipFolder) {
log.ErrorF("download from oss error !")
return nil
}
}
// load
loadAllGzipImageFromLocalFolder(localGzipFolder)
@@ -247,7 +255,7 @@ func loadAllGzipImageFromLocalFolder(localGzipFolder string) {
}
func parseAndDownloadFromOss(ossUrlPrefix, ossFileName, localGzipFolder string) {
func parseAndDownloadFromOss(ossUrlPrefix, ossFileName, localGzipFolder string) bool {
if ossUrlPrefix == "" {
ossUrlPrefix = DefaultOssUrlPrefix
@@ -257,20 +265,26 @@ func parseAndDownloadFromOss(ossUrlPrefix, ossFileName, localGzipFolder string)
// get oss endpoint
// mc login
if !strings.HasPrefix(ossUrlPrefix, "/") {
ossUrlPrefix += "/"
}
if !DefaultCmiiMinioOperator.DemoMinioOperator.DownloadFileFromOssFullUrl(ossUrlPrefix+ossFileName, localGzipFolder) {
log.ErrorF("download %s from oss error !", ossUrlPrefix+ossFileName)
return false
}
if strings.HasSuffix(ossFileName, ".txt") {
// a list of files
// download all files in the txt file
result := utils.ReadLineFromFile(localGzipFolder + ossFileName)
for _, gzipFileName := range result {
DefaultCmiiMinioOperator.DemoMinioOperator.DownloadFileFromOssFullUrl(ossUrlPrefix+gzipFileName, localGzipFolder)
}
}
if strings.HasSuffix(ossFileName, ".tar.gz") {
// single gzip file
}
// mv list all gzip file name
// download all gzip files to local folder
// 解析
return true
}
// DownloadCompressUploadFromDemo 获取DEMO环境的全部镜像