From 1e71bd481c150c241e71ede16229331f965e15ec Mon Sep 17 00:00:00 2001 From: Benjamin Bollen <ben@monax.io> Date: Mon, 20 Feb 2017 19:15:17 +0100 Subject: [PATCH] genesis: add GenerateGenesisFileBytes() --- genesis/make_genesis_file.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/genesis/make_genesis_file.go b/genesis/make_genesis_file.go index f67a86d8..4fffd203 100644 --- a/genesis/make_genesis_file.go +++ b/genesis/make_genesis_file.go @@ -27,6 +27,25 @@ func GenerateKnown(chainID, accountsPathCSV, validatorsPathCSV string) (string, time.Now()) } +//------------------------------------------------------------------------------------ +// interface functions that are consumed by monax tooling + +func GenerateGenesisFileBytes(chainName string, genesisAccounts []*GenesisAccount, + genesisValidators []*GenesisValidator) ([]byte, error) { + genesisDoc, err := MakeGenesisDocFromAccounts(chainName, genesisAccounts, genesisValidators) + + buf, buf2, n := new(bytes.Buffer), new(bytes.Buffer), new(int) + wire.WriteJSON(genesisDoc, buf, n, &err) + if err != nil { + return nil, err + } + if err := json.Indent(buf2, buf.Bytes(), "", "\t"); err != nil { + return nil, err + } + + return buf2.Bytes(), nil +} + //------------------------------------------------------------------------------------ // core functions that provide functionality for monax tooling in v0.16 -- GitLab