prysm-pulse/cmd/validator/accounts/list.go
Mike Neuder 9fab9df61e
Refactor validator accounts delete to remove cli context dependency (#10686)
* add functional options accounts delete

* bazel run //:gazelle -- fix

Co-authored-by: james-prysm <90280386+james-prysm@users.noreply.github.com>
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
2022-05-17 23:13:36 +00:00

50 lines
1.3 KiB
Go

package accounts
import (
"strings"
"github.com/prysmaticlabs/prysm/cmd"
"github.com/prysmaticlabs/prysm/cmd/validator/flags"
"github.com/prysmaticlabs/prysm/validator/accounts"
"github.com/prysmaticlabs/prysm/validator/client"
"github.com/urfave/cli/v2"
)
func accountsList(c *cli.Context) error {
w, km, err := walletWithKeymanager(c)
if err != nil {
return err
}
dialOpts := client.ConstructDialOptions(
c.Int(cmd.GrpcMaxCallRecvMsgSizeFlag.Name),
c.String(flags.CertFlag.Name),
c.Uint(flags.GrpcRetriesFlag.Name),
c.Duration(flags.GrpcRetryDelayFlag.Name),
)
grpcHeaders := strings.Split(c.String(flags.GrpcHeadersFlag.Name), ",")
opts := []accounts.Option{
accounts.WithWallet(w),
accounts.WithKeymanager(km),
accounts.WithGRPCDialOpts(dialOpts),
accounts.WithBeaconRPCProvider(c.String(flags.BeaconRPCProviderFlag.Name)),
accounts.WithGRPCHeaders(grpcHeaders),
}
if c.IsSet(flags.ShowDepositDataFlag.Name) {
opts = append(opts, accounts.WithShowDepositData())
}
if c.IsSet(flags.ShowPrivateKeysFlag.Name) {
opts = append(opts, accounts.WithShowPrivateKeys())
}
if c.IsSet(flags.ListValidatorIndices.Name) {
opts = append(opts, accounts.WithListValidatorIndices())
}
acc, err := accounts.NewCLIManager(opts...)
if err != nil {
return err
}
return acc.List(
c.Context,
)
}