Files
ezbookkeeping/cmd/database.go
T
2020-11-09 01:12:32 +08:00

40 lines
946 B
Go

package cmd
import (
"github.com/urfave/cli"
"github.com/mayswind/lab/pkg/datastore"
"github.com/mayswind/lab/pkg/log"
"github.com/mayswind/lab/pkg/models"
)
var Database = cli.Command{
Name: "database",
Usage: "lab database maintenance",
Subcommands: []cli.Command{
{
Name: "update",
Usage: "Update database structure",
Action: updateDatabaseStructure,
},
},
}
func updateDatabaseStructure(c *cli.Context) error {
_, err := initializeSystem(c)
if err != nil {
return err
}
log.BootInfof("[database.updateDatabaseStructure] starting maintaining")
_ = datastore.Container.UserStore.SyncStructs(new(models.User), new(models.TwoFactor), new(models.TwoFactorRecoveryCode))
_ = datastore.Container.TokenStore.SyncStructs(new(models.TokenRecord))
_ = datastore.Container.UserDataStore.SyncStructs(new(models.Account))
log.BootInfof("[database.updateDatabaseStructure] maintained successfully")
return nil
}