forked from NYANDEV/forgejo
[GITEA] do not use deprecatedSettingFatal for cosmetic reasons
It breaks existing instances that would otherwise work perfectly
fine. Failing to start an instance should only happen when there is a
compelling reason to do so, for instance if the `app.ini` could not be
modified in a way that is backward compatible. If the only motivation
is to remove the setting for cosmetic reason, it must not be fatal.
(cherry picked from commit c09ef82e9a4a1f450adce46fe7adcf733d8cc9da)
(cherry picked from commit e80aaa11d9
)
This commit is contained in:
parent
6c0932f8a4
commit
2de8602855
3 changed files with 32 additions and 7 deletions
|
@ -322,12 +322,6 @@ func deprecatedSetting(rootCfg ConfigProvider, oldSection, oldKey, newSection, n
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func deprecatedSettingFatal(rootCfg ConfigProvider, oldSection, oldKey, newSection, newKey, version string) {
|
|
||||||
if rootCfg.Section(oldSection).HasKey(oldKey) {
|
|
||||||
log.Fatal("Deprecated fallback `[%s]` `%s` present. Use `[%s]` `%s` instead. This fallback will be/has been removed in %s. Shutting down", oldSection, oldKey, newSection, newKey, version)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// deprecatedSettingDB add a hint that the configuration has been moved to database but still kept in app.ini
|
// deprecatedSettingDB add a hint that the configuration has been moved to database but still kept in app.ini
|
||||||
func deprecatedSettingDB(rootCfg ConfigProvider, oldSection, oldKey string) {
|
func deprecatedSettingDB(rootCfg ConfigProvider, oldSection, oldKey string) {
|
||||||
if rootCfg.Section(oldSection).HasKey(oldKey) {
|
if rootCfg.Section(oldSection).HasKey(oldKey) {
|
||||||
|
|
|
@ -34,7 +34,14 @@ func loadLFSFrom(rootCfg ConfigProvider) error {
|
||||||
// Specifically default PATH to LFS_CONTENT_PATH
|
// Specifically default PATH to LFS_CONTENT_PATH
|
||||||
// DEPRECATED should not be removed because users maybe upgrade from lower version to the latest version
|
// DEPRECATED should not be removed because users maybe upgrade from lower version to the latest version
|
||||||
// if these are removed, the warning will not be shown
|
// if these are removed, the warning will not be shown
|
||||||
deprecatedSettingFatal(rootCfg, "server", "LFS_CONTENT_PATH", "lfs", "PATH", "v1.19.0")
|
deprecatedSetting(rootCfg, "server", "LFS_CONTENT_PATH", "lfs", "PATH", "v1.19.0")
|
||||||
|
|
||||||
|
if val := sec.Key("LFS_CONTENT_PATH").String(); val != "" {
|
||||||
|
if lfsSec == nil {
|
||||||
|
lfsSec = rootCfg.Section("lfs")
|
||||||
|
}
|
||||||
|
lfsSec.Key("PATH").MustString(val)
|
||||||
|
}
|
||||||
|
|
||||||
var err error
|
var err error
|
||||||
LFS.Storage, err = getStorage(rootCfg, "lfs", "", lfsSec)
|
LFS.Storage, err = getStorage(rootCfg, "lfs", "", lfsSec)
|
||||||
|
|
|
@ -21,6 +21,30 @@ func Test_getStorageInheritNameSectionTypeForLFS(t *testing.T) {
|
||||||
assert.EqualValues(t, "minio", LFS.Storage.Type)
|
assert.EqualValues(t, "minio", LFS.Storage.Type)
|
||||||
assert.EqualValues(t, "lfs/", LFS.Storage.MinioConfig.BasePath)
|
assert.EqualValues(t, "lfs/", LFS.Storage.MinioConfig.BasePath)
|
||||||
|
|
||||||
|
iniStr = `
|
||||||
|
[server]
|
||||||
|
LFS_CONTENT_PATH = path_ignored
|
||||||
|
[lfs]
|
||||||
|
PATH = path_used
|
||||||
|
`
|
||||||
|
cfg, err = NewConfigProviderFromData(iniStr)
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.NoError(t, loadLFSFrom(cfg))
|
||||||
|
|
||||||
|
assert.EqualValues(t, "local", LFS.Storage.Type)
|
||||||
|
assert.Contains(t, LFS.Storage.Path, "path_used")
|
||||||
|
|
||||||
|
iniStr = `
|
||||||
|
[server]
|
||||||
|
LFS_CONTENT_PATH = deprecatedpath
|
||||||
|
`
|
||||||
|
cfg, err = NewConfigProviderFromData(iniStr)
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.NoError(t, loadLFSFrom(cfg))
|
||||||
|
|
||||||
|
assert.EqualValues(t, "local", LFS.Storage.Type)
|
||||||
|
assert.Contains(t, LFS.Storage.Path, "deprecatedpath")
|
||||||
|
|
||||||
iniStr = `
|
iniStr = `
|
||||||
[storage.lfs]
|
[storage.lfs]
|
||||||
STORAGE_TYPE = minio
|
STORAGE_TYPE = minio
|
||||||
|
|
Loading…
Reference in a new issue