GoDoxy/migrations/migrate.go
2025-04-14 15:36:24 +08:00

30 lines
709 B
Go

package migrations
import (
"github.com/yusing/go-proxy/internal/gperr"
"github.com/yusing/go-proxy/internal/logging"
"github.com/yusing/go-proxy/pkg"
)
func RunMigrations() error {
if currentVersion.IsEqual(lastVersion) {
return nil
}
logging.Info().Msg("running migrations...")
errs := gperr.NewBuilder("migration error")
for _, m := range migrations {
if !currentVersion.IsOlderThan(m.Since) {
continue
}
if err := m.Run(); err != nil {
errs.Add(gperr.PrependSubject(m.Name, err))
}
}
return errs.Error()
}
var currentVersion = pkg.GetVersion()
var lastVersion = pkg.GetLastVersion()
var migrations = []migration{
{"move json data", m001_move_json_data, pkg.Ver(0, 11, 0)},
}