Skip to content

Commit 840fc85

Browse files
committed
Settings: use existing "migrations" section
1 parent d2c1619 commit 840fc85

File tree

7 files changed

+23
-52
lines changed

7 files changed

+23
-52
lines changed

custom/conf/app.example.ini

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1187,6 +1187,12 @@ QUEUE_CONN_STR = "addrs=127.0.0.1:6379 db=0"
11871187
MAX_ATTEMPTS = 3
11881188
; Backoff time per http/https request retry (seconds)
11891189
RETRY_BACKOFF = 3
1190+
; Allowlist for migrating, default is blank. Blank means everything will be allowed.
1191+
; Multiple domains could be separated by commas.
1192+
ALLOWLISTED_DOMAINS =
1193+
; Blocklist for migrating, default is blank. Multiple domains could be separated by commas.
1194+
; When ALLOWLISTED_DOMAINS is not blank, this option will be ignored.
1195+
BLOCKLISTED_DOMAINS =
11901196

11911197
; default storage for attachments, lfs and avatars
11921198
[storage]
@@ -1212,11 +1218,3 @@ STORAGE_TYPE = local
12121218
;MINIO_LOCATION = us-east-1
12131219
; Minio enabled ssl only available when STORAGE_TYPE is `minio`
12141220
;MINIO_USE_SSL = false
1215-
1216-
[migration]
1217-
; Allowlist for migrating, default is blank. Blank means everything will be allowed.
1218-
; Multiple domains could be separated by commas.
1219-
ALLOWLISTED_DOMAINS =
1220-
; Blocklist for migrating, default is blank. Multiple domains could be separated by commas.
1221-
; When ALLOWLISTED_DOMAINS is not blank, this option will be ignored.
1222-
BLOCKLISTED_DOMAINS =

docs/content/doc/advanced/config-cheat-sheet.en-us.md

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -846,6 +846,8 @@ Task queue configuration has been moved to `queue.task`. However, the below conf
846846

847847
- `MAX_ATTEMPTS`: **3**: Max attempts per http/https request on migrations.
848848
- `RETRY_BACKOFF`: **3**: Backoff time per http/https request retry (seconds)
849+
- `ALLOWLISTED_DOMAINS`: ****: Domains allowlist for migrating repositories, default is blank. It means everything will be allowed. Multiple domains could be separated by commas.
850+
- `BLOCKLISTED_DOMAINS`: ****: Domains blocklist for migrating repositories, default is blank. Multiple domains could be separated by commas. When `ALLOWLISTED_DOMAINS` is not blank, this option will be ignored.
849851

850852
## Mirror (`mirror`)
851853

@@ -902,11 +904,6 @@ MINIO_USE_SSL = false
902904

903905
And used by `[attachment]`, `[lfs]` and etc. as `STORAGE_TYPE`.
904906

905-
## Migraions (`migration`)
906-
907-
- `ALLOWLISTED_DOMAINS`: ****: Domains allowlist for migrating repositories, default is blank. It means everything will be allowed. Multiple domains could be separated by commas.
908-
- `BLOCKLISTED_DOMAINS`: ****: Domains blocklist for migrating repositories, default is blank. Multiple domains could be separated by commas. When `ALLOWLISTED_DOMAINS` is not blank, this option will be ignored.
909-
910907
## Other (`other`)
911908

912909
- `SHOW_FOOTER_BRANDING`: **false**: Show Gitea branding in the footer.

docs/content/doc/advanced/config-cheat-sheet.zh-cn.md

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,8 @@ IS_INPUT_FILE = false
313313

314314
- `MAX_ATTEMPTS`: **3**: 在迁移过程中的 http/https 请求重试次数。
315315
- `RETRY_BACKOFF`: **3**: 等待下一次重试的时间,单位秒。
316+
- `ALLOWLISTED_DOMAINS`: ****: 迁移仓库的域名白名单,默认为空,表示允许从任意域名迁移仓库,多个域名用逗号分隔。
317+
- `BLOCKLISTED_DOMAINS`: ****: 迁移仓库的域名黑名单,默认为空,多个域名用逗号分隔。如果 `ALLOWLISTED_DOMAINS` 不为空,此选项将会被忽略。
316318

317319
## LFS (`lfs`)
318320

@@ -363,11 +365,6 @@ MINIO_USE_SSL = false
363365

364366
然后你在 `[attachment]`, `[lfs]` 等中可以把这个名字用作 `STORAGE_TYPE` 的值。
365367

366-
## Migraions (`migration`)
367-
368-
- `ALLOWLISTED_DOMAINS`: ****: 迁移仓库的域名白名单,默认为空,表示允许从任意域名迁移仓库,多个域名用逗号分隔。
369-
- `BLOCKLISTED_DOMAINS`: ****: 迁移仓库的域名黑名单,默认为空,多个域名用逗号分隔。如果 `ALLOWLISTED_DOMAINS` 不为空,此选项将会被忽略。
370-
371368
## Other (`other`)
372369

373370
- `SHOW_FOOTER_BRANDING`: 为真则在页面底部显示Gitea的字样。

modules/migrations/migrate.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ func isMigrateURLAllowed(remoteURL string) (bool, error) {
3737
}
3838

3939
if strings.EqualFold(u.Scheme, "http") || strings.EqualFold(u.Scheme, "https") {
40-
if len(setting.Migration.AllowlistedDomains) > 0 {
40+
if len(setting.Migrations.AllowlistedDomains) > 0 {
4141
if !allowlist.Match(u.Host) {
4242
return false, fmt.Errorf("Migrate from %v is not allowed", u.Host)
4343
}
@@ -345,12 +345,12 @@ var (
345345
// Init migrations service
346346
func Init() error {
347347
var err error
348-
allowlist, err = matchlist.NewMatchlist(setting.Migration.AllowlistedDomains...)
348+
allowlist, err = matchlist.NewMatchlist(setting.Migrations.AllowlistedDomains...)
349349
if err != nil {
350350
return fmt.Errorf("init migration allowlist domains failed: %v", err)
351351
}
352352

353-
blocklist, err = matchlist.NewMatchlist(setting.Migration.BlocklistedDomains...)
353+
blocklist, err = matchlist.NewMatchlist(setting.Migrations.BlocklistedDomains...)
354354
if err != nil {
355355
return fmt.Errorf("init migration blocklist domains failed: %v", err)
356356
}

modules/migrations/migrate_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import (
1313
)
1414

1515
func TestMigrateWhiteBlocklist(t *testing.T) {
16-
setting.Migration.AllowlistedDomains = []string{"github.com"}
16+
setting.Migrations.AllowlistedDomains = []string{"github.com"}
1717
assert.NoError(t, Init())
1818

1919
allowed, err := isMigrateURLAllowed("https://gitlab.com/gitlab/gitlab.git")
@@ -24,8 +24,8 @@ func TestMigrateWhiteBlocklist(t *testing.T) {
2424
assert.True(t, allowed)
2525
assert.NoError(t, err)
2626

27-
setting.Migration.AllowlistedDomains = []string{}
28-
setting.Migration.BlocklistedDomains = []string{"github.com"}
27+
setting.Migrations.AllowlistedDomains = []string{}
28+
setting.Migrations.BlocklistedDomains = []string{"github.com"}
2929
assert.NoError(t, Init())
3030

3131
allowed, err = isMigrateURLAllowed("https://gitlab.com/gitlab/gitlab.git")

modules/setting/migrate.go

Lines changed: 0 additions & 26 deletions
This file was deleted.

modules/setting/migrations.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,10 @@ package setting
77
var (
88
// Migrations settings
99
Migrations = struct {
10-
MaxAttempts int
11-
RetryBackoff int
10+
MaxAttempts int
11+
RetryBackoff int
12+
AllowlistedDomains []string
13+
BlocklistedDomains []string
1214
}{
1315
MaxAttempts: 3,
1416
RetryBackoff: 3,
@@ -19,4 +21,7 @@ func newMigrationsService() {
1921
sec := Cfg.Section("migrations")
2022
Migrations.MaxAttempts = sec.Key("MAX_ATTEMPTS").MustInt(Migrations.MaxAttempts)
2123
Migrations.RetryBackoff = sec.Key("RETRY_BACKOFF").MustInt(Migrations.RetryBackoff)
24+
25+
Migrations.AllowlistedDomains = sec.Key("ALLOWLISTED_DOMAINS").Strings(",")
26+
Migrations.BlocklistedDomains = sec.Key("BLOCKLISTED_DOMAINS").Strings(",")
2227
}

0 commit comments

Comments
 (0)