[MM-61099] Fix errcheck issues in server/channels/app/brand.go (#30679)
* [MM-28779] Fix errcheck issues in server/channels/app/brand.go Remove brand.go from the errcheck exclusion list in .golangci.yml and fixed the error by properly handling the return value from a.MoveFile(). 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * [MM-28779] Add test to verify brand image backup functionality Add a new test that verifies backup of the original brand image happens when a new one is uploaded. This helps to ensure the fix for errcheck issues is working as expected. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * use seperate temporary filestore for each test * Use FileSettings.Directory instead of finding the dir programatically * Fix another test * Fix defer * Update server/channels/api4/job_test.go Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Fix bad bot commit * Cleanup logs message * cleanup file path * Fix error variable names * WIP:cleanup panic ussage * Revert "WIP:cleanup panic ussage" This reverts commit c3284e4427a41c818acc161926cd2535dee9a6b9. * cleanup error checks --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Mattermost Build <build@mattermost.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
1cb244e876
Коммит
6de3379994
@@ -10,6 +10,7 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/mattermost/mattermost/server/public/model"
|
||||
"github.com/mattermost/mattermost/server/public/shared/mlog"
|
||||
"github.com/mattermost/mattermost/server/public/shared/request"
|
||||
)
|
||||
|
||||
@@ -45,7 +46,27 @@ func (a *App) SaveBrandImage(rctx request.CTX, imageData *multipart.FileHeader)
|
||||
}
|
||||
|
||||
t := time.Now()
|
||||
a.MoveFile(BrandFilePath+BrandFileName, BrandFilePath+t.Format("2006-01-02T15:04:05")+".png")
|
||||
// Try to backup the old brand image if it exists
|
||||
oldPath := BrandFilePath + BrandFileName
|
||||
newPath := BrandFilePath + t.Format("2006-01-02T15:04:05") + ".png"
|
||||
|
||||
fileExists, appErr := a.FileExists(oldPath)
|
||||
if appErr != nil {
|
||||
rctx.Logger().Warn("Failed to check if brand image exists before backup", mlog.String("path", oldPath), mlog.Err(appErr))
|
||||
}
|
||||
|
||||
if fileExists {
|
||||
if err := a.MoveFile(oldPath, newPath); err != nil {
|
||||
// Log the error but continue since this is a non-critical operation - we're just trying to
|
||||
// backup the old brand image, but it's not a problem if we can't
|
||||
rctx.Logger().Warn(
|
||||
"Failed to backup old brand image",
|
||||
mlog.Err(err),
|
||||
mlog.String("oldPath", oldPath),
|
||||
mlog.String("newPath", newPath),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
if _, err := a.WriteFile(buf, BrandFilePath+BrandFileName); err != nil {
|
||||
return model.NewAppError("SaveBrandImage", "brand.save_brand_image.save_image.app_error", nil, "", http.StatusInternalServerError).Wrap(err)
|
||||
|
||||
@@ -385,7 +385,7 @@ func TestGenerateThumbnailImage(t *testing.T) {
|
||||
th := Setup(t)
|
||||
defer th.TearDown()
|
||||
img := createDummyImage()
|
||||
dataPath, _ := fileutils.FindDir("data")
|
||||
dataPath := *th.App.Config().FileSettings.Directory
|
||||
thumbnailName := "thumb.jpg"
|
||||
thumbnailPath := filepath.Join(dataPath, thumbnailName)
|
||||
|
||||
|
||||
Ссылка в новой задаче
Block a user