From 437166767339b5d6057b54ec32c82620dae32a94 Mon Sep 17 00:00:00 2001 From: Christopher Goes Date: Tue, 27 Mar 2018 11:47:41 +0200 Subject: [PATCH 1/2] Add show_validator command (ref #704) --- examples/basecoin/cmd/basecoind/main.go | 1 + server/show_validator.go | 37 +++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 server/show_validator.go diff --git a/examples/basecoin/cmd/basecoind/main.go b/examples/basecoin/cmd/basecoind/main.go index b25847358..6a4f45956 100644 --- a/examples/basecoin/cmd/basecoind/main.go +++ b/examples/basecoin/cmd/basecoind/main.go @@ -69,6 +69,7 @@ func main() { server.StartCmd(generateApp, logger), server.UnsafeResetAllCmd(logger), server.ShowNodeIdCmd(logger), + server.ShowValidatorCmd(logger), version.VersionCmd, ) diff --git a/server/show_validator.go b/server/show_validator.go new file mode 100644 index 000000000..cdbcc3631 --- /dev/null +++ b/server/show_validator.go @@ -0,0 +1,37 @@ +package server + +import ( + "fmt" + + "github.com/spf13/cobra" + + "github.com/tendermint/go-wire/data" + tcmd "github.com/tendermint/tendermint/cmd/tendermint/commands" + "github.com/tendermint/tendermint/types" + "github.com/tendermint/tmlibs/log" +) + +// ShowValidator - ported from Tendermint, show this node's validator info +func ShowValidatorCmd(logger log.Logger) *cobra.Command { + cmd := showValidator{logger} + return &cobra.Command{ + Use: "show_validator", + Short: "Show this node's validator info", + RunE: cmd.run, + } +} + +type showValidator struct { + logger log.Logger +} + +func (s showValidator) run(cmd *cobra.Command, args []string) error { + cfg, err := tcmd.ParseConfig() + if err != nil { + return err + } + privValidator := types.LoadOrGenPrivValidatorFS(cfg.PrivValidatorFile()) + pubKeyJSONBytes, _ := data.ToJSON(privValidator.PubKey) + fmt.Println(string(pubKeyJSONBytes)) + return nil +} From fef3e157c06d9ca9fb43abd6b07c5e5b9e22b4bb Mon Sep 17 00:00:00 2001 From: Christopher Goes Date: Tue, 27 Mar 2018 22:13:05 +0200 Subject: [PATCH 2/2] Capture & return data.ToJSON error --- server/show_validator.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/server/show_validator.go b/server/show_validator.go index cdbcc3631..d2c7705d6 100644 --- a/server/show_validator.go +++ b/server/show_validator.go @@ -31,7 +31,10 @@ func (s showValidator) run(cmd *cobra.Command, args []string) error { return err } privValidator := types.LoadOrGenPrivValidatorFS(cfg.PrivValidatorFile()) - pubKeyJSONBytes, _ := data.ToJSON(privValidator.PubKey) + pubKeyJSONBytes, err := data.ToJSON(privValidator.PubKey) + if err != nil { + return err + } fmt.Println(string(pubKeyJSONBytes)) return nil }