diff options
author | 6543 <6543@obermui.de> | 2021-09-07 17:49:36 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-07 17:49:36 +0200 |
commit | 63d7cbcef13b4eb719a5749a1a79361461c77135 (patch) | |
tree | 55f50695a9cdd31b33eccb5fac766dbaa78cd6ab /services/mirror | |
parent | ded438fb1a320b2f4741e5efbd9a5b3d5e3ad0c7 (diff) | |
download | gitea-63d7cbcef13b4eb719a5749a1a79361461c77135.tar.gz gitea-63d7cbcef13b4eb719a5749a1a79361461c77135.zip |
Make mirror feature more configurable (#16957)
Rename`[repository]` `DISABLE_MIRRORS` to `[mirror]` `DISABLE_NEW_PULL` and add `ENABLED` and `DISABLE_NEW_PUSH` with the below meanings:
- `ENABLED`: **true**: Enables the mirror functionality. Set to **false** to disable all mirrors.
- `DISABLE_NEW_PULL`: **false**: Disable the creation of **new** mirrors. Pre-existing mirrors remain valid.
- `DISABLE_NEW_PUSH`: **false**: Disable the creation of **new** push mirrors. Pre-existing mirrors remain valid.
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: delvh <dev.lh@web.de>
Diffstat (limited to 'services/mirror')
-rw-r--r-- | services/mirror/mirror.go | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/services/mirror/mirror.go b/services/mirror/mirror.go index 1e30c919e6..7a3e37d993 100644 --- a/services/mirror/mirror.go +++ b/services/mirror/mirror.go @@ -22,6 +22,10 @@ var mirrorQueue = sync.NewUniqueQueue(setting.Repository.MirrorQueueLength) // Update checks and updates mirror repositories. func Update(ctx context.Context) error { + if !setting.Mirror.Enabled { + log.Warn("Mirror feature disabled, but cron job enabled: skip update") + return nil + } log.Trace("Doing: Update") handler := func(idx int, bean interface{}) error { @@ -89,15 +93,24 @@ func syncMirrors(ctx context.Context) { // InitSyncMirrors initializes a go routine to sync the mirrors func InitSyncMirrors() { + if !setting.Mirror.Enabled { + return + } go graceful.GetManager().RunWithShutdownContext(syncMirrors) } // StartToMirror adds repoID to mirror queue func StartToMirror(repoID int64) { + if !setting.Mirror.Enabled { + return + } go mirrorQueue.Add(fmt.Sprintf("pull %d", repoID)) } // AddPushMirrorToQueue adds the push mirror to the queue func AddPushMirrorToQueue(mirrorID int64) { + if !setting.Mirror.Enabled { + return + } go mirrorQueue.Add(fmt.Sprintf("push %d", mirrorID)) } |