github.com/prysmaticlabs/prysm@v1.4.4/cmd/validator/db/db.go (about) 1 package db 2 3 import ( 4 "github.com/prysmaticlabs/prysm/shared/cmd" 5 "github.com/prysmaticlabs/prysm/shared/tos" 6 validatordb "github.com/prysmaticlabs/prysm/validator/db" 7 "github.com/sirupsen/logrus" 8 "github.com/urfave/cli/v2" 9 ) 10 11 var log = logrus.WithField("prefix", "db") 12 13 // Commands for interacting with the Prysm validator database. 14 var Commands = &cli.Command{ 15 Name: "db", 16 Category: "db", 17 Usage: "defines commands for interacting with the Prysm validator database", 18 Subcommands: []*cli.Command{ 19 { 20 Name: "restore", 21 Description: `restores a database from a backup file`, 22 Flags: cmd.WrapFlags([]cli.Flag{ 23 cmd.RestoreSourceFileFlag, 24 cmd.RestoreTargetDirFlag, 25 }), 26 Before: tos.VerifyTosAcceptedOrPrompt, 27 Action: func(cliCtx *cli.Context) error { 28 if err := validatordb.Restore(cliCtx); err != nil { 29 log.Fatalf("Could not restore database: %v", err) 30 } 31 return nil 32 }, 33 }, 34 { 35 Name: "migrate", 36 Category: "db", 37 Usage: "Defines commands for running validator database migrations", 38 Subcommands: []*cli.Command{ 39 { 40 Name: "up", 41 Usage: "Runs up migrations for the validator database", 42 Flags: cmd.WrapFlags([]cli.Flag{ 43 cmd.DataDirFlag, 44 }), 45 Before: tos.VerifyTosAcceptedOrPrompt, 46 Action: func(cliCtx *cli.Context) error { 47 if err := validatordb.MigrateUp(cliCtx); err != nil { 48 log.Fatalf("Could not run database migrations: %v", err) 49 } 50 return nil 51 }, 52 }, 53 { 54 Name: "down", 55 Usage: "Runs down migrations for the validator database", 56 Flags: cmd.WrapFlags([]cli.Flag{ 57 cmd.DataDirFlag, 58 }), 59 Before: tos.VerifyTosAcceptedOrPrompt, 60 Action: func(cliCtx *cli.Context) error { 61 if err := validatordb.MigrateDown(cliCtx); err != nil { 62 log.Fatalf("Could not run database migrations: %v", err) 63 } 64 return nil 65 }, 66 }, 67 }, 68 }, 69 }, 70 }