mirror of
https://github.com/OpenListTeam/OpenList.git
synced 2025-09-19 12:16:24 +08:00
feat(patch): add migration from Alist V3 driver to OpenList (#919)
* feat(patch): add migration from Alist V3 driver to OpenList * chore(patch): improve logging
This commit is contained in:
@ -4,6 +4,7 @@ import (
|
|||||||
"github.com/OpenListTeam/OpenList/v4/internal/bootstrap/patch/v3_24_0"
|
"github.com/OpenListTeam/OpenList/v4/internal/bootstrap/patch/v3_24_0"
|
||||||
"github.com/OpenListTeam/OpenList/v4/internal/bootstrap/patch/v3_32_0"
|
"github.com/OpenListTeam/OpenList/v4/internal/bootstrap/patch/v3_32_0"
|
||||||
"github.com/OpenListTeam/OpenList/v4/internal/bootstrap/patch/v3_41_0"
|
"github.com/OpenListTeam/OpenList/v4/internal/bootstrap/patch/v3_41_0"
|
||||||
|
"github.com/OpenListTeam/OpenList/v4/internal/bootstrap/patch/v3_all"
|
||||||
)
|
)
|
||||||
|
|
||||||
type VersionPatches struct {
|
type VersionPatches struct {
|
||||||
@ -32,4 +33,10 @@ var UpgradePatches = []VersionPatches{
|
|||||||
v3_41_0.GrantAdminPermissions,
|
v3_41_0.GrantAdminPermissions,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
Version: "v3.0.0",
|
||||||
|
Patches: []func(){
|
||||||
|
v3_all.RenameAlistV3Driver,
|
||||||
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
33
internal/bootstrap/patch/v3_all/rename.go
Normal file
33
internal/bootstrap/patch/v3_all/rename.go
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
package v3_all
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/OpenListTeam/OpenList/v4/internal/db"
|
||||||
|
"github.com/OpenListTeam/OpenList/v4/pkg/utils"
|
||||||
|
)
|
||||||
|
|
||||||
|
// Rename Alist V3 driver to OpenList
|
||||||
|
func RenameAlistV3Driver() {
|
||||||
|
storages, _, err := db.GetStorages(1, -1)
|
||||||
|
if err != nil {
|
||||||
|
utils.Log.Errorf("[RenameAlistV3Driver] failed to get storages: %s", err.Error())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
updatedCount := 0
|
||||||
|
for _, s := range storages {
|
||||||
|
if s.Driver == "AList V3" {
|
||||||
|
utils.Log.Warnf("[RenameAlistV3Driver] rename storage [%d]%s from Alist V3 to OpenList", s.ID, s.MountPath)
|
||||||
|
s.Driver = "OpenList"
|
||||||
|
err = db.UpdateStorage(&s)
|
||||||
|
if err != nil {
|
||||||
|
utils.Log.Errorf("[RenameAlistV3Driver] failed to update storage [%d]%s: %s", s.ID, s.MountPath, err.Error())
|
||||||
|
} else {
|
||||||
|
updatedCount++
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if updatedCount > 0 {
|
||||||
|
utils.Log.Infof("[RenameAlistV3Driver] updated %d storages from Alist V3 to OpenList", updatedCount)
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user