From 2c89d80a27fdad34bbeb732b0c581a5de9a85621 Mon Sep 17 00:00:00 2001 From: wangchuxiao Date: Tue, 10 May 2022 18:28:57 +0800 Subject: [PATCH] update app --- .../api/third/minio_storage_credential.go | 31 ++++++++++++------- pkg/utils/file.go | 3 ++ 2 files changed, 22 insertions(+), 12 deletions(-) diff --git a/internal/api/third/minio_storage_credential.go b/internal/api/third/minio_storage_credential.go index 3f59deec9..c80035c5a 100644 --- a/internal/api/third/minio_storage_credential.go +++ b/internal/api/third/minio_storage_credential.go @@ -161,7 +161,13 @@ func UploadUpdateApp(c *gin.Context) { return } log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req) - newFileName, newYamlName, err := utils.GetUploadAppNewName(req.Type, req.Version, req.File.Filename, req.Yaml.Filename) + var yamlName string + if req.Yaml == nil { + yamlName = "" + } else { + yamlName = req.Yaml.Filename + } + newFileName, newYamlName, err := utils.GetUploadAppNewName(req.Type, req.Version, req.File.Filename, yamlName) if err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetUploadAppNewName failed", err.Error()) c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": "invalid file type" + err.Error()}) @@ -179,18 +185,19 @@ func UploadUpdateApp(c *gin.Context) { c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "PutObject file error" + err.Error()}) return } - - yamlObj, err := req.Yaml.Open() - if err == nil { - _, err = MinioClient.PutObject(context.Background(), config.Config.Credential.Minio.AppBucket, newYamlName, yamlObj, req.Yaml.Size, minio.PutObjectOptions{ContentType: path.Ext(newYamlName)}) - if err != nil { - log.NewError(req.OperationID, utils.GetSelfFuncName(), "PutObject yaml error") - c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "PutObject yaml error" + err.Error()}) - return + if newYamlName != "" { + yamlObj, err := req.Yaml.Open() + if err == nil { + _, err = MinioClient.PutObject(context.Background(), config.Config.Credential.Minio.AppBucket, newYamlName, yamlObj, req.Yaml.Size, minio.PutObjectOptions{ContentType: path.Ext(newYamlName)}) + if err != nil { + log.NewError(req.OperationID, utils.GetSelfFuncName(), "PutObject yaml error") + c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "PutObject yaml error" + err.Error()}) + return + } + } else { + log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error()) + newYamlName = "" } - } else { - log.NewError(req.OperationID, utils.GetSelfFuncName(), err.Error()) - newYamlName = "" } if err := imdb.UpdateAppVersion(req.Type, req.Version, req.ForceUpdate, newFileName, newYamlName); err != nil { log.NewError(req.OperationID, utils.GetSelfFuncName(), "UpdateAppVersion error", err.Error()) diff --git a/pkg/utils/file.go b/pkg/utils/file.go index 94a30917b..9108ede8f 100644 --- a/pkg/utils/file.go +++ b/pkg/utils/file.go @@ -70,5 +70,8 @@ func GetUploadAppNewName(appType int, version, fileName, yamlName string) (strin suffixYaml := path.Ext(yamlName) newFileName = fmt.Sprintf("%s%s", newFileName, suffixFile) newYamlName = fmt.Sprintf("%s%s", newYamlName, suffixYaml) + if yamlName == "" { + newYamlName = "" + } return newFileName, newYamlName, nil }