diff options
author | Lunny Xiao <xiaolunwen@gmail.com> | 2024-11-17 21:59:04 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-18 05:59:04 +0000 |
commit | 696fbe60365d59a2d979f977b5ae6f13c52f9188 (patch) | |
tree | d79af3d789fb1874dbdd10afdc0a4906f0a621b3 /services | |
parent | 8a20fba8eb1ac01a0de9355eff84af69d4636d96 (diff) | |
download | gitea-696fbe60365d59a2d979f977b5ae6f13c52f9188.tar.gz gitea-696fbe60365d59a2d979f977b5ae6f13c52f9188.zip |
Refactor push mirror find and add check for updating push mirror (#32539)
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Diffstat (limited to 'services')
-rw-r--r-- | services/forms/repo_form.go | 2 | ||||
-rw-r--r-- | services/mirror/mirror.go | 10 | ||||
-rw-r--r-- | services/mirror/queue.go | 11 |
3 files changed, 11 insertions, 12 deletions
diff --git a/services/forms/repo_form.go b/services/forms/repo_form.go index d27bbca894..8e663084f8 100644 --- a/services/forms/repo_form.go +++ b/services/forms/repo_form.go @@ -122,7 +122,7 @@ type RepoSettingForm struct { MirrorPassword string LFS bool `form:"mirror_lfs"` LFSEndpoint string `form:"mirror_lfs_endpoint"` - PushMirrorID string + PushMirrorID int64 PushMirrorAddress string PushMirrorUsername string PushMirrorPassword string diff --git a/services/mirror/mirror.go b/services/mirror/mirror.go index 44218d6fb3..e029bbb1d6 100644 --- a/services/mirror/mirror.go +++ b/services/mirror/mirror.go @@ -8,7 +8,6 @@ import ( "fmt" repo_model "code.gitea.io/gitea/models/repo" - "code.gitea.io/gitea/modules/graceful" "code.gitea.io/gitea/modules/log" "code.gitea.io/gitea/modules/queue" "code.gitea.io/gitea/modules/setting" @@ -119,14 +118,7 @@ func Update(ctx context.Context, pullLimit, pushLimit int) error { return nil } -func queueHandler(items ...*SyncRequest) []*SyncRequest { - for _, req := range items { - doMirrorSync(graceful.GetManager().ShutdownContext(), req) - } - return nil -} - // InitSyncMirrors initializes a go routine to sync the mirrors func InitSyncMirrors() { - StartSyncMirrors(queueHandler) + StartSyncMirrors() } diff --git a/services/mirror/queue.go b/services/mirror/queue.go index 0d9a624730..ca5e2c7272 100644 --- a/services/mirror/queue.go +++ b/services/mirror/queue.go @@ -28,12 +28,19 @@ type SyncRequest struct { ReferenceID int64 // RepoID for pull mirror, MirrorID for push mirror } +func queueHandler(items ...*SyncRequest) []*SyncRequest { + for _, req := range items { + doMirrorSync(graceful.GetManager().ShutdownContext(), req) + } + return nil +} + // StartSyncMirrors starts a go routine to sync the mirrors -func StartSyncMirrors(queueHandle func(data ...*SyncRequest) []*SyncRequest) { +func StartSyncMirrors() { if !setting.Mirror.Enabled { return } - mirrorQueue = queue.CreateUniqueQueue(graceful.GetManager().ShutdownContext(), "mirror", queueHandle) + mirrorQueue = queue.CreateUniqueQueue(graceful.GetManager().ShutdownContext(), "mirror", queueHandler) if mirrorQueue == nil { log.Fatal("Unable to create mirror queue") } |