Jiquan Long d9081980e2
[skip e2e] Exit migration after session expired (#20282)
Signed-off-by: longjiquan <jiquan.long@zilliz.com>

Signed-off-by: longjiquan <jiquan.long@zilliz.com>
2022-11-03 11:47:36 +08:00

31 lines
1004 B
Go

package command
import (
"context"
"github.com/milvus-io/milvus/cmd/tools/migration/configs"
"github.com/milvus-io/milvus/cmd/tools/migration/console"
"github.com/milvus-io/milvus/cmd/tools/migration/migration"
)
func Run(c *configs.Config) {
ctx := context.Background()
runner := migration.NewRunner(ctx, c)
console.AbnormalExitIf(runner.CheckSessions(), false)
console.AbnormalExitIf(runner.RegisterSession(), false)
fn := func() { runner.Stop() }
defer fn()
// double check.
console.AbnormalExitIf(runner.CheckSessions(), false, console.AddCallbacks(fn))
console.AbnormalExitIf(runner.Validate(), false, console.AddCallbacks(fn))
console.NormalExitIf(runner.CheckCompatible(), "version compatible, no need to migrate", console.AddCallbacks(fn))
if c.RunWithBackup {
console.AbnormalExitIf(runner.Backup(), false, console.AddCallbacks(fn))
} else {
console.Warning("run migration without backup!")
}
console.AbnormalExitIf(runner.Migrate(), true, console.AddCallbacks(fn))
}