mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-10-24 11:02:42 +00:00
[CI] Revert "Restrict `[actions].DEFAULT_ACTIONS_URL` to only `github` or `self` (#25581)" This reverts commit67bd9d4f1e. (cherry picked from commit0547e94023) (cherry picked from commitd21ad654ad) (cherry picked from commitb905e9d838) (cherry picked from commit 251a5bf235b1723bc2bc324f9e8c03a8668bb5ae) (cherry picked from commitb370e47694) (cherry picked from commit2cc28d0785) (cherry picked from commited870a39e9) (cherry picked from commit7bb0c4654e) (cherry picked from commitbab1f552c3) Conflicts: custom/conf/app.example.ini modules/setting/actions.go https://codeberg.org/forgejo/forgejo/pulls/1413 [CI] DEFAULT_ACTIONS_URL = https://codeberg.org (cherry picked from commit52b364ddbd) (cherry picked from commit99887cd567) (cherry picked from commitcd5788782a) (cherry picked from commit71c698a704) (cherry picked from commit71386241dd) (cherry picked from commitb7ab05aeac) (cherry picked from commite78b9ca59c) (cherry picked from commitedb3adf460) (cherry picked from commit3e40088197) [BRANDING] DEFAULT_ACTIONS_URL = https://code.forgejo.org (cherry picked from commitd0e4512c90) (cherry picked from commit8ba6e04709) (cherry picked from commit6349081044) (cherry picked from commite06bd44495) (cherry picked from commitd58219d8e1) (cherry picked from commit052f2c2aa4) (cherry picked from commit29dc395386) (cherry picked from commit9eef3f59f3) (cherry picked from commitd650391fed) (cherry picked from commitc2e6e8c55d) (cherry picked from commite28a47741d) [CI] DEFAULT_ACTIONS_URL support for self & github (squash) Refs: https://codeberg.org/forgejo/forgejo/issues/1062 (cherry picked from commit74cc25376e) (cherry picked from commit405430708f) (cherry picked from commit 0274a6dee7f383bcd6b65b995b991b5ab0ee635a) (cherry picked from commitbe5cda0fd0) (cherry picked from commitd27474849f) (cherry picked from commit4a5e9e2d81) (cherry picked from commit65b31906b2) (cherry picked from commit13cf0b0963) Conflicts: custom/conf/app.example.ini modules/setting/actions.go https://codeberg.org/forgejo/forgejo/pulls/1413 (cherry picked from commit49529badce) Conflicts: custom/conf/app.example.ini docs/content/administration/config-cheat-sheet.en-us.md modules/setting/actions.go https://codeberg.org/forgejo/forgejo/pulls/1460 (cherry picked from commit00327b9b1f) (cherry picked from commit3b322e43d5) (cherry picked from commit492cc52059) (cherry picked from commit294ca47a39) Conflicts: modules/setting/actions.go https://codeberg.org/forgejo/forgejo/pulls/1574 (cherry picked from commit1ad8ae5946) (cherry picked from commit93f64f5e32) (cherry picked from commit8f0e65025c) (cherry picked from commit8d3e4d31fb) (cherry picked from commitedc36d5a7d)
158 lines
4.1 KiB
Go
158 lines
4.1 KiB
Go
// Copyright 2023 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package setting
|
|
|
|
import (
|
|
"path/filepath"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func Test_getStorageInheritNameSectionTypeForActions(t *testing.T) {
|
|
iniStr := `
|
|
[storage]
|
|
STORAGE_TYPE = minio
|
|
`
|
|
cfg, err := NewConfigProviderFromData(iniStr)
|
|
assert.NoError(t, err)
|
|
assert.NoError(t, loadActionsFrom(cfg))
|
|
|
|
assert.EqualValues(t, "minio", Actions.LogStorage.Type)
|
|
assert.EqualValues(t, "actions_log/", Actions.LogStorage.MinioConfig.BasePath)
|
|
assert.EqualValues(t, "minio", Actions.ArtifactStorage.Type)
|
|
assert.EqualValues(t, "actions_artifacts/", Actions.ArtifactStorage.MinioConfig.BasePath)
|
|
|
|
iniStr = `
|
|
[storage.actions_log]
|
|
STORAGE_TYPE = minio
|
|
`
|
|
cfg, err = NewConfigProviderFromData(iniStr)
|
|
assert.NoError(t, err)
|
|
assert.NoError(t, loadActionsFrom(cfg))
|
|
|
|
assert.EqualValues(t, "minio", Actions.LogStorage.Type)
|
|
assert.EqualValues(t, "actions_log/", Actions.LogStorage.MinioConfig.BasePath)
|
|
assert.EqualValues(t, "local", Actions.ArtifactStorage.Type)
|
|
assert.EqualValues(t, "actions_artifacts", filepath.Base(Actions.ArtifactStorage.Path))
|
|
|
|
iniStr = `
|
|
[storage.actions_log]
|
|
STORAGE_TYPE = my_storage
|
|
|
|
[storage.my_storage]
|
|
STORAGE_TYPE = minio
|
|
`
|
|
cfg, err = NewConfigProviderFromData(iniStr)
|
|
assert.NoError(t, err)
|
|
assert.NoError(t, loadActionsFrom(cfg))
|
|
|
|
assert.EqualValues(t, "minio", Actions.LogStorage.Type)
|
|
assert.EqualValues(t, "actions_log/", Actions.LogStorage.MinioConfig.BasePath)
|
|
assert.EqualValues(t, "local", Actions.ArtifactStorage.Type)
|
|
assert.EqualValues(t, "actions_artifacts", filepath.Base(Actions.ArtifactStorage.Path))
|
|
|
|
iniStr = `
|
|
[storage.actions_artifacts]
|
|
STORAGE_TYPE = my_storage
|
|
|
|
[storage.my_storage]
|
|
STORAGE_TYPE = minio
|
|
`
|
|
cfg, err = NewConfigProviderFromData(iniStr)
|
|
assert.NoError(t, err)
|
|
assert.NoError(t, loadActionsFrom(cfg))
|
|
|
|
assert.EqualValues(t, "local", Actions.LogStorage.Type)
|
|
assert.EqualValues(t, "actions_log", filepath.Base(Actions.LogStorage.Path))
|
|
assert.EqualValues(t, "minio", Actions.ArtifactStorage.Type)
|
|
assert.EqualValues(t, "actions_artifacts/", Actions.ArtifactStorage.MinioConfig.BasePath)
|
|
|
|
iniStr = `
|
|
[storage.actions_artifacts]
|
|
STORAGE_TYPE = my_storage
|
|
|
|
[storage.my_storage]
|
|
STORAGE_TYPE = minio
|
|
`
|
|
cfg, err = NewConfigProviderFromData(iniStr)
|
|
assert.NoError(t, err)
|
|
assert.NoError(t, loadActionsFrom(cfg))
|
|
|
|
assert.EqualValues(t, "local", Actions.LogStorage.Type)
|
|
assert.EqualValues(t, "actions_log", filepath.Base(Actions.LogStorage.Path))
|
|
assert.EqualValues(t, "minio", Actions.ArtifactStorage.Type)
|
|
assert.EqualValues(t, "actions_artifacts/", Actions.ArtifactStorage.MinioConfig.BasePath)
|
|
|
|
iniStr = ``
|
|
cfg, err = NewConfigProviderFromData(iniStr)
|
|
assert.NoError(t, err)
|
|
assert.NoError(t, loadActionsFrom(cfg))
|
|
|
|
assert.EqualValues(t, "local", Actions.LogStorage.Type)
|
|
assert.EqualValues(t, "actions_log", filepath.Base(Actions.LogStorage.Path))
|
|
assert.EqualValues(t, "local", Actions.ArtifactStorage.Type)
|
|
assert.EqualValues(t, "actions_artifacts", filepath.Base(Actions.ArtifactStorage.Path))
|
|
}
|
|
|
|
func Test_getDefaultActionsURLForActions(t *testing.T) {
|
|
oldActions := Actions
|
|
oldAppURL := AppURL
|
|
defer func() {
|
|
Actions = oldActions
|
|
AppURL = oldAppURL
|
|
}()
|
|
|
|
AppURL = "http://test_get_default_actions_url_for_actions:3000/"
|
|
|
|
tests := []struct {
|
|
name string
|
|
iniStr string
|
|
wantURL string
|
|
}{
|
|
{
|
|
name: "default",
|
|
iniStr: `
|
|
[actions]
|
|
`,
|
|
wantURL: "https://code.forgejo.org",
|
|
},
|
|
{
|
|
name: "github",
|
|
iniStr: `
|
|
[actions]
|
|
DEFAULT_ACTIONS_URL = github
|
|
`,
|
|
wantURL: "https://github.com",
|
|
},
|
|
{
|
|
name: "self",
|
|
iniStr: `
|
|
[actions]
|
|
DEFAULT_ACTIONS_URL = self
|
|
`,
|
|
wantURL: "http://test_get_default_actions_url_for_actions:3000",
|
|
},
|
|
{
|
|
name: "custom urls",
|
|
iniStr: `
|
|
[actions]
|
|
DEFAULT_ACTIONS_URL = https://example.com
|
|
`,
|
|
wantURL: "https://example.com",
|
|
},
|
|
}
|
|
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
cfg, err := NewConfigProviderFromData(tt.iniStr)
|
|
require.NoError(t, err)
|
|
if !assert.NoError(t, loadActionsFrom(cfg)) {
|
|
return
|
|
}
|
|
assert.EqualValues(t, tt.wantURL, Actions.DefaultActionsURL.URL())
|
|
})
|
|
}
|
|
}
|