mirror of https://github.com/gogs/gogs.git
migrations: clean unlinked webhook and hook_tasks
parent
eccc8109c1
commit
04b4431bc0
|
@ -64,6 +64,8 @@ var migrations = []Migration{
|
|||
NewMigration("update repository sizes", updateRepositorySizes),
|
||||
// v16 -> v17:v0.10.31
|
||||
NewMigration("remove invalid protect branch whitelist", removeInvalidProtectBranchWhitelist),
|
||||
// v18 -> v19:v0.11.55
|
||||
NewMigration("clean unlinked webhook and hook_tasks", cleanUnlinkedWebhookAndHookTasks),
|
||||
}
|
||||
|
||||
// Migrate database to current version
|
||||
|
|
|
@ -0,0 +1,18 @@
|
|||
// Copyright 2018 The Gogs Authors. All rights reserved.
|
||||
// Use of this source code is governed by a MIT-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package migrations
|
||||
|
||||
import (
|
||||
"github.com/go-xorm/xorm"
|
||||
)
|
||||
|
||||
func cleanUnlinkedWebhookAndHookTasks(x *xorm.Engine) error {
|
||||
_, err := x.Exec(`DELETE FROM webhook WHERE repo_id NOT IN (SELECT id FROM repository);`)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
_, err = x.Exec(`DELETE FROM hook_task WHERE repo_id NOT IN (SELECT id FROM repository);`)
|
||||
return err
|
||||
}
|
Loading…
Reference in New Issue