e6956aa001
- React frontend with route-level code splitting - Backend rebranded from Baihu to TaskPool - DB brand migration script and local compatibility
30 lines
924 B
Go
30 lines
924 B
Go
package migrate
|
||
|
||
import (
|
||
"fmt"
|
||
"github.com/engigu/taskpool/internal/bootstrap"
|
||
"github.com/engigu/taskpool/internal/services"
|
||
)
|
||
|
||
func Run(args []string) {
|
||
fmt.Println("Starting Migration V3...")
|
||
// 初始化基础环境(配置和数据库,但不运行常规 Migrate,因为我们想手动控)
|
||
// 不过 bootstrap.New() 会调用 Migrate().
|
||
// 我们可以调用 InitBasic()
|
||
app := bootstrap.InitBasicForCmd()
|
||
if app == nil {
|
||
fmt.Println("Failed to initialize app")
|
||
return
|
||
}
|
||
|
||
// 此时数据库已经连接,Migrate() 已经运行过了(因为 bootstrap.InitBasic 调用了 app.initDatabase)
|
||
// 由于我们在 Migrate() 中集成了 RunMigrationV3(),所以其实已经跑过了。
|
||
// 如果用户想重复跑,或者单独跑:
|
||
err := services.RunMigrationV3()
|
||
if err != nil {
|
||
fmt.Printf("Migration failed: %v\n", err)
|
||
return
|
||
}
|
||
fmt.Println("Migration V3 completed successfully.")
|
||
}
|