30 lines
489 B
Go
30 lines
489 B
Go
package migrate
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/urfave/cli/v2"
|
|
"go.neonxp.ru/framework/cmd/app/migrator/migrator"
|
|
"go.neonxp.ru/framework/migrations"
|
|
)
|
|
|
|
func Migrate(c *cli.Context) error {
|
|
m, err := migrator.New(c, migrations.Migrations)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
group, err := m.Migrate(c.Context)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
if group.ID == 0 {
|
|
fmt.Printf("there are no new migrations to run\n")
|
|
return nil
|
|
}
|
|
|
|
fmt.Printf("migrated to %s\n", group)
|
|
|
|
return nil
|
|
}
|