shed: set control address: add dump bytes option
This commit is contained in:
parent
f5ec47a2b3
commit
db86c7d121
@ -2,6 +2,7 @@ package main
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
|
"encoding/hex"
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
@ -420,6 +421,11 @@ var actorControlSet = &cli.Command{
|
|||||||
Name: "actor",
|
Name: "actor",
|
||||||
Usage: "specify the address of miner actor",
|
Usage: "specify the address of miner actor",
|
||||||
},
|
},
|
||||||
|
&cli.BoolFlag{
|
||||||
|
Name: "dump-bytes",
|
||||||
|
Usage: "Dumps the bytes of the message that would propose this change",
|
||||||
|
Value: false,
|
||||||
|
},
|
||||||
&cli.BoolFlag{
|
&cli.BoolFlag{
|
||||||
Name: "really-do-it",
|
Name: "really-do-it",
|
||||||
Usage: "Actually send transaction performing the action",
|
Usage: "Actually send transaction performing the action",
|
||||||
@ -427,11 +433,6 @@ var actorControlSet = &cli.Command{
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
Action: func(cctx *cli.Context) error {
|
Action: func(cctx *cli.Context) error {
|
||||||
if !cctx.Bool("really-do-it") {
|
|
||||||
fmt.Println("Pass --really-do-it to actually execute this action")
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
var maddr address.Address
|
var maddr address.Address
|
||||||
if act := cctx.String("actor"); act != "" {
|
if act := cctx.String("actor"); act != "" {
|
||||||
var err error
|
var err error
|
||||||
@ -521,14 +522,36 @@ var actorControlSet = &cli.Command{
|
|||||||
return xerrors.Errorf("serializing params: %w", err)
|
return xerrors.Errorf("serializing params: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
smsg, err := nodeAPI.MpoolPushMessage(ctx, &types.Message{
|
msg := &types.Message{
|
||||||
From: mi.Owner,
|
From: mi.Owner,
|
||||||
To: maddr,
|
To: maddr,
|
||||||
Method: builtin.MethodsMiner.ChangeWorkerAddress,
|
Method: builtin.MethodsMiner.ChangeWorkerAddress,
|
||||||
|
|
||||||
Value: big.Zero(),
|
Value: big.Zero(),
|
||||||
Params: sp,
|
Params: sp,
|
||||||
}, nil)
|
}
|
||||||
|
|
||||||
|
if cctx.Bool("dump-bytes") {
|
||||||
|
|
||||||
|
msg, err = nodeAPI.GasEstimateMessageGas(ctx, msg, nil, types.EmptyTSK)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
msgBytes, err := msg.Serialize()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
fmt.Fprintln(cctx.App.Writer, hex.EncodeToString(msgBytes))
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
if !cctx.Bool("really-do-it") {
|
||||||
|
fmt.Fprintln(cctx.App.Writer, "Pass --really-do-it to actually execute this action")
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
smsg, err := nodeAPI.MpoolPushMessage(ctx, msg, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return xerrors.Errorf("mpool push: %w", err)
|
return xerrors.Errorf("mpool push: %w", err)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user