MMCTL: Add import delete cmd for removing the import files (#29764)

Co-authored-by: Ben Schumacher <ben.schumacher@mattermost.com>
Этот коммит содержится в:
Harsh Aulakh
2025-06-10 15:36:38 +05:30
коммит произвёл GitHub
родитель 0cf6361139
Коммит 09a2037b61
17 изменённых файлов: 348 добавлений и 35 удалений

Просмотреть файл

@@ -9,10 +9,12 @@ import (
"github.com/mattermost/mattermost/server/public/model"
"github.com/mattermost/mattermost/server/public/shared/mlog"
"github.com/mattermost/mattermost/server/v8/channels/audit"
)
func (api *API) InitImport() {
api.BaseRoutes.Imports.Handle("", api.APISessionRequired(listImports)).Methods(http.MethodGet)
api.BaseRoutes.Import.Handle("", api.APISessionRequired(deleteImport)).Methods(http.MethodDelete)
}
func listImports(c *Context, w http.ResponseWriter, r *http.Request) {
@@ -31,3 +33,23 @@ func listImports(c *Context, w http.ResponseWriter, r *http.Request) {
c.Logger.Warn("Error writing imports", mlog.Err(err))
}
}
func deleteImport(c *Context, w http.ResponseWriter, r *http.Request) {
importName := c.Params.ImportName
auditRec := c.MakeAuditRecord("deleteImport", audit.Fail)
defer c.LogAuditRec(auditRec)
auditRec.AddMeta("import_name", importName)
if !c.App.SessionHasPermissionTo(*c.AppContext.Session(), model.PermissionManageSystem) {
c.SetPermissionError(model.PermissionManageSystem)
return
}
if err := c.App.DeleteImport(importName); err != nil {
c.Err = err
return
}
auditRec.Success()
ReturnStatusOK(w)
}