2019-07-11 02:36:43 +00:00
|
|
|
package cli
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
|
|
|
|
|
|
|
"github.com/pkg/errors"
|
|
|
|
"gopkg.in/urfave/cli.v2"
|
|
|
|
)
|
|
|
|
|
|
|
|
var minerCmd = &cli.Command{
|
|
|
|
Name: "miner",
|
|
|
|
Usage: "Manage mining",
|
|
|
|
Subcommands: []*cli.Command{
|
|
|
|
minerStart,
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
var minerStart = &cli.Command{
|
|
|
|
Name: "start",
|
|
|
|
Usage: "start mining",
|
|
|
|
Action: func(cctx *cli.Context) error {
|
2019-07-18 23:16:23 +00:00
|
|
|
api, err := GetAPI(cctx)
|
2019-07-12 04:09:04 +00:00
|
|
|
if err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
|
2019-07-18 23:16:23 +00:00
|
|
|
ctx := ReqContext(cctx)
|
2019-07-11 02:36:43 +00:00
|
|
|
|
|
|
|
// TODO: this address needs to be the address of an actual miner
|
2019-07-26 17:33:54 +00:00
|
|
|
maddr, err := api.WalletDefaultAddress(ctx)
|
2019-07-11 02:36:43 +00:00
|
|
|
if err != nil {
|
|
|
|
return errors.Wrap(err, "failed to create miner address")
|
|
|
|
}
|
|
|
|
|
|
|
|
if err := api.MinerStart(ctx, maddr); err != nil {
|
|
|
|
return err
|
|
|
|
}
|
|
|
|
|
|
|
|
fmt.Println("started mining")
|
|
|
|
|
|
|
|
return nil
|
|
|
|
},
|
|
|
|
}
|