From ccfec98f96d22854804d0be79e34cf863be4d3f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Magiera?= Date: Fri, 26 Jul 2019 01:25:46 +0200 Subject: [PATCH] pond: Handle genesis --- lotuspond/main.go | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/lotuspond/main.go b/lotuspond/main.go index cdd087e51..afb3860ba 100644 --- a/lotuspond/main.go +++ b/lotuspond/main.go @@ -27,6 +27,7 @@ type api struct { cmds int32 running map[int32]runningNode runningLk sync.Mutex + genesis string } type nodeInfo struct { @@ -41,9 +42,25 @@ func (api *api) Spawn() (nodeInfo, error) { return nodeInfo{}, err } + genParam := "--genesis=" + api.genesis id := atomic.AddInt32(&api.cmds, 1) + if id == 1 { + // make genesis + genf, err := ioutil.TempFile(os.TempDir(), "lotus-genesis-") + if err != nil { + return nodeInfo{}, err + } - cmd := exec.Command("./lotus", "daemon", "--api", fmt.Sprintf("%d", 2500+id)) + api.genesis = genf.Name() + genParam = "--lotus-make-random-genesis=" + api.genesis + + if err := genf.Close(); err != nil { + return nodeInfo{}, err + } + + } + + cmd := exec.Command("./lotus", "daemon", genParam, "--api", fmt.Sprintf("%d", 2500+id)) cmd.Stderr = os.Stderr cmd.Stdout = os.Stdout cmd.Env = []string{"LOTUS_PATH=" + dir}