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  }