Address review
This commit is contained in:
parent
fcb7cd0eb0
commit
c9a557e0d9
@ -22,10 +22,17 @@ import (
|
|||||||
var sendCsvCmd = &cli.Command{
|
var sendCsvCmd = &cli.Command{
|
||||||
Name: "send-csv",
|
Name: "send-csv",
|
||||||
Usage: "Utility for sending a batch of balance transfers",
|
Usage: "Utility for sending a batch of balance transfers",
|
||||||
ArgsUsage: "[sender] [csvfile]",
|
Flags: []cli.Flag{
|
||||||
|
&cli.StringFlag{
|
||||||
|
Name: "from",
|
||||||
|
Usage: "specify the account to send funds from",
|
||||||
|
Required: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
ArgsUsage: "[csvfile]",
|
||||||
Action: func(cctx *cli.Context) error {
|
Action: func(cctx *cli.Context) error {
|
||||||
if cctx.NArg() != 2 {
|
if cctx.NArg() != 1 {
|
||||||
return xerrors.New("must supply sender and path to csv file")
|
return xerrors.New("must supply path to csv file")
|
||||||
}
|
}
|
||||||
|
|
||||||
api, closer, err := lcli.GetFullNodeAPIV1(cctx)
|
api, closer, err := lcli.GetFullNodeAPIV1(cctx)
|
||||||
@ -36,12 +43,12 @@ var sendCsvCmd = &cli.Command{
|
|||||||
defer closer()
|
defer closer()
|
||||||
ctx := lcli.ReqContext(cctx)
|
ctx := lcli.ReqContext(cctx)
|
||||||
|
|
||||||
sender, err := address.NewFromString(cctx.Args().Get(0))
|
sender, err := address.NewFromString(cctx.String("from"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
fileReader, err := os.Open(cctx.Args().Get(1))
|
fileReader, err := os.Open(cctx.Args().First())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return xerrors.Errorf("read csv: %w", err)
|
return xerrors.Errorf("read csv: %w", err)
|
||||||
}
|
}
|
||||||
@ -53,7 +60,11 @@ var sendCsvCmd = &cli.Command{
|
|||||||
return xerrors.Errorf("read csv: %w", err)
|
return xerrors.Errorf("read csv: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
var msgCids []cid.Cid
|
if strings.TrimSpace(records[0][0]) != "Recipient" || strings.TrimSpace(records[0][1]) != "FIL" {
|
||||||
|
return xerrors.Errorf("expected header row to be \"Recipient, FIL\"")
|
||||||
|
}
|
||||||
|
|
||||||
|
var msgs []*types.Message
|
||||||
for i, e := range records[1:] {
|
for i, e := range records[1:] {
|
||||||
addr, err := address.NewFromString(e[0])
|
addr, err := address.NewFromString(e[0])
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -65,16 +76,21 @@ var sendCsvCmd = &cli.Command{
|
|||||||
return xerrors.Errorf("failed to parse value balance: %w", err)
|
return xerrors.Errorf("failed to parse value balance: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
smsg, err := api.MpoolPushMessage(ctx, &types.Message{
|
msgs = append(msgs, &types.Message{
|
||||||
To: addr,
|
To: addr,
|
||||||
From: sender,
|
From: sender,
|
||||||
Value: abi.TokenAmount(value),
|
Value: abi.TokenAmount(value),
|
||||||
}, nil)
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
var msgCids []cid.Cid
|
||||||
|
for i, msg := range msgs {
|
||||||
|
smsg, err := api.MpoolPushMessage(ctx, msg, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt.Printf("sending %s to %s in msg %s\n", value.String(), addr, smsg.Cid())
|
fmt.Printf("sending %s to %s in msg %s\n", msg.Value.String(), msg.To, smsg.Cid())
|
||||||
|
|
||||||
if i > 0 && i%100 == 0 {
|
if i > 0 && i%100 == 0 {
|
||||||
fmt.Printf("catching up until latest message lands")
|
fmt.Printf("catching up until latest message lands")
|
||||||
|
Loading…
Reference in New Issue
Block a user