summaryrefslogtreecommitdiff
path: root/cmd/migrator/migrate/migrate.go
blob: 6245879d3f1c710de9ab094b3548064927940f00 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package migrate

import (
	"context"
	"fmt"

	"git.neonxp.ru/neonxp/guessr/cmd/migrator/migrator"
	"git.neonxp.ru/neonxp/guessr/migrations"
	"github.com/urfave/cli/v3"
)

func Migrate(ctx context.Context, c *cli.Command) error {
	m, err := migrator.New(c, migrations.Migrations)
	if err != nil {
		return err
	}

	group, err := m.Migrate(ctx)
	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
}