diff options
author | zeripath <art27@cantab.net> | 2020-10-24 00:46:35 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-23 19:46:35 -0400 |
commit | f40a2a4404e3eabf5e28ae43e1f395bb13176307 (patch) | |
tree | e4c0ece7b11704eba0e9e60cb10158dbb5399db8 /models/task.go | |
parent | 9b11c3e32037a77e53551127d26dbf54139aa2fc (diff) | |
download | gitea-f40a2a4404e3eabf5e28ae43e1f395bb13176307.tar.gz gitea-f40a2a4404e3eabf5e28ae43e1f395bb13176307.zip |
Store task errors following migrations and display them (#13246)
* Store task errors following migrations and display them
When migrate tasks fail store the error in the task table
and ensure that they show on the status page.
Fix #13242
Signed-off-by: Andrew Thornton <art27@cantab.net>
* Update web_src/js/index.js
* Hide the failed first
Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
Diffstat (limited to 'models/task.go')
-rw-r--r-- | models/task.go | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/models/task.go b/models/task.go index 43cb2d4d9a..b86314b449 100644 --- a/models/task.go +++ b/models/task.go @@ -147,6 +147,27 @@ func GetMigratingTask(repoID int64) (*Task, error) { return &task, nil } +// GetMigratingTaskByID returns the migrating task by repo's id +func GetMigratingTaskByID(id, doerID int64) (*Task, *migration.MigrateOptions, error) { + var task = Task{ + ID: id, + DoerID: doerID, + Type: structs.TaskTypeMigrateRepo, + } + has, err := x.Get(&task) + if err != nil { + return nil, nil, err + } else if !has { + return nil, nil, ErrTaskDoesNotExist{id, 0, task.Type} + } + + var opts migration.MigrateOptions + if err := json.Unmarshal([]byte(task.PayloadContent), &opts); err != nil { + return nil, nil, err + } + return &task, &opts, nil +} + // FindTaskOptions find all tasks type FindTaskOptions struct { Status int |