mercury/cmd/migrate/cmd.go
2023-09-03 00:23:48 +02:00

31 lines
663 B
Go

package migrate
import (
"emperror.dev/errors"
"git.sleepycat.moe/sam/mercury/config"
"git.sleepycat.moe/sam/mercury/internal/database/sql"
"github.com/rs/zerolog/log"
"github.com/urfave/cli/v2"
)
var Command = &cli.Command{
Name: "migrate",
Usage: "Run migrations on the database",
Action: run,
}
func run(c *cli.Context) error {
log.Debug().Msg("Running migrations")
log.Debug().Msg("Reading configuration")
cfg, err := config.Parse("config.toml")
if err != nil {
return errors.Wrap(err, "reading configuration")
}
err = sql.Migrate(cfg.Core.Postgres)
if err != nil {
return errors.Wrap(err, "performing migrations")
}
return nil
}