Skip to content

Commit

Permalink
fix: extract gnoland and gnovm outside tm2
Browse files Browse the repository at this point in the history
Signed-off-by: gfanton <8671905+gfanton@users.noreply.github.com>
  • Loading branch information
gfanton committed Dec 21, 2023
1 parent 489e4a4 commit 32511b3
Show file tree
Hide file tree
Showing 8 changed files with 103 additions and 19 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package client
package main

// TODO: move most of the logic in ROOT/gno.land/...

Expand All @@ -12,19 +12,20 @@ import (
"github.com/gnolang/gno/tm2/pkg/amino"
"github.com/gnolang/gno/tm2/pkg/commands"
"github.com/gnolang/gno/tm2/pkg/crypto/keys"
"github.com/gnolang/gno/tm2/pkg/crypto/keys/client"
"github.com/gnolang/gno/tm2/pkg/errors"
"github.com/gnolang/gno/tm2/pkg/std"
)

type MakeAddPkgCfg struct {
RootCfg *MakeTxCfg
RootCfg *client.MakeTxCfg

PkgPath string
PkgDir string
Deposit string
}

func NewMakeAddPkgCmd(rootCfg *MakeTxCfg, io commands.IO) *commands.Command {
func NewMakeAddPkgCmd(rootCfg *client.MakeTxCfg, io commands.IO) *commands.Command {
cfg := &MakeAddPkgCfg{
RootCfg: rootCfg,
}
Expand Down Expand Up @@ -128,7 +129,7 @@ func execMakeAddPkg(cfg *MakeAddPkgCfg, args []string, io commands.IO) error {
}

if cfg.RootCfg.Broadcast {
err := signAndBroadcast(cfg.RootCfg, args, tx, io)
err := client.ExecSignAndBroadcast(cfg.RootCfg, args, tx, io)
if err != nil {
return err
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package client
package main

import (
"context"
Expand All @@ -9,28 +9,29 @@ import (
"github.com/gnolang/gno/tm2/pkg/amino"
"github.com/gnolang/gno/tm2/pkg/commands"
"github.com/gnolang/gno/tm2/pkg/crypto/keys"
"github.com/gnolang/gno/tm2/pkg/crypto/keys/client"
"github.com/gnolang/gno/tm2/pkg/errors"
"github.com/gnolang/gno/tm2/pkg/std"
)

type MakeCallCfg struct {
RootCfg *MakeTxCfg
RootCfg *client.MakeTxCfg

Send string
PkgPath string
FuncName string
Args commands.StringArr
}

func NewMakeCallCmd(rootCfg *MakeTxCfg, io commands.IO) *commands.Command {
func NewMakeCallCmd(rootCfg *client.MakeTxCfg, io commands.IO) *commands.Command {
cfg := &MakeCallCfg{
RootCfg: rootCfg,
}

return commands.NewCommand(
commands.Metadata{
Name: "call",
ShortUsage: "call [flags] <key-name or address>",
1ShortUsage: "call [flags] <key-name or address>",
ShortHelp: "Executes a Realm function call",
},
cfg,
Expand Down Expand Up @@ -131,7 +132,7 @@ func execMakeCall(cfg *MakeCallCfg, args []string, io commands.IO) error {
}

if cfg.RootCfg.Broadcast {
err := signAndBroadcast(cfg.RootCfg, args, tx, io)
err := client.ExecSignAndBroadcast(cfg.RootCfg, args, tx, io)
if err != nil {
return err
}
Expand Down
83 changes: 83 additions & 0 deletions gno.land/cmd/gnokey/maketx.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
package main

import (
"flag"

"github.com/gnolang/gno/tm2/pkg/commands"
"github.com/gnolang/gno/tm2/pkg/crypto/keys/client"
)

type MakeTxCfg struct {
RootCfg *client.BaseCfg

GasWanted int64
GasFee string
Memo string

Broadcast bool
ChainID string
}

func NewMakeTxCmd(rootCfg *client.BaseCfg, io commands.IO) *commands.Command {
cfg := &client.MakeTxCfg{
RootCfg: rootCfg,
}

cmd := commands.NewCommand(
commands.Metadata{
Name: "maketx",
ShortUsage: "<subcommand> [flags] [<arg>...]",
ShortHelp: "Composes a tx document to sign",
},
cfg,
commands.HelpExec,
)

cmd.AddSubCommands(
client.NewMakeSendCmd(cfg, io),

// custom commands
NewMakeAddPkgCmd(cfg, io),
NewMakeCallCmd(cfg, io),
NewMakeRunCmd(cfg, io),
)

return cmd
}

func (c *MakeTxCfg) RegisterFlags(fs *flag.FlagSet) {
fs.Int64Var(
&c.GasWanted,
"gas-wanted",
0,
"gas requested for tx",
)

fs.StringVar(
&c.GasFee,
"gas-fee",
"",
"gas payment fee",
)

fs.StringVar(
&c.Memo,
"memo",
"",
"any descriptive text",
)

fs.BoolVar(
&c.Broadcast,
"broadcast",
false,
"sign and broadcast",
)

fs.StringVar(
&c.ChainID,
"chainid",
"dev",
"chainid to sign for (only useful if --broadcast)",
)
}
1 change: 1 addition & 0 deletions gno.land/cmd/gnokey/root.go
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
package main
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package client
package main

import (
"context"
Expand All @@ -12,15 +12,16 @@ import (
"github.com/gnolang/gno/tm2/pkg/amino"
"github.com/gnolang/gno/tm2/pkg/commands"
"github.com/gnolang/gno/tm2/pkg/crypto/keys"
"github.com/gnolang/gno/tm2/pkg/crypto/keys/client"
"github.com/gnolang/gno/tm2/pkg/errors"
"github.com/gnolang/gno/tm2/pkg/std"
)

type MakeRunCfg struct {
RootCfg *MakeTxCfg
RootCfg *client.MakeTxCfg
}

func NewMakeRunCmd(rootCfg *MakeTxCfg, io commands.IO) *commands.Command {
func NewMakeRunCmd(rootCfg *client.MakeTxCfg, io commands.IO) *commands.Command {
cfg := &MakeRunCfg{
RootCfg: rootCfg,
}
Expand Down Expand Up @@ -128,7 +129,7 @@ func execMakeRun(cfg *MakeRunCfg, args []string, io commands.IO) error {
}

if cfg.RootCfg.Broadcast {
err := signAndBroadcast(cfg.RootCfg, args, tx, io)
err := client.ExecSignAndBroadcast(cfg.RootCfg, args, tx, io)
if err != nil {
return err
}
Expand Down
5 changes: 1 addition & 4 deletions tm2/pkg/crypto/keys/client/maketx.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,7 @@ func NewMakeTxCmd(rootCfg *BaseCfg, io commands.IO) *commands.Command {
)

cmd.AddSubCommands(
NewMakeAddPkgCmd(cfg, io),
NewMakeSendCmd(cfg, io),
NewMakeCallCmd(cfg, io),
NewMakeRunCmd(cfg, io),
)

return cmd
Expand Down Expand Up @@ -146,7 +143,7 @@ func SignAndBroadcastHandler(
return BroadcastHandler(bopts)
}

func signAndBroadcast(
func ExecSignAndBroadcast(
cfg *MakeTxCfg,
args []string,
tx std.Tx,
Expand Down
2 changes: 1 addition & 1 deletion tm2/pkg/crypto/keys/client/send.go
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ func execMakeSend(cfg *MakeSendCfg, args []string, io commands.IO) error {
}

if cfg.RootCfg.Broadcast {
err := signAndBroadcast(cfg.RootCfg, args, tx, io)
err := ExecSignAndBroadcast(cfg.RootCfg, args, tx, io)
if err != nil {
return err
}
Expand Down
2 changes: 1 addition & 1 deletion tm2/pkg/crypto/keys/client/sign.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@ package client

import (
"context"
"errors"
"flag"
"fmt"
"os"

"github.com/gnolang/gno/tm2/pkg/amino"
"github.com/gnolang/gno/tm2/pkg/commands"
"github.com/gnolang/gno/tm2/pkg/crypto/keys"
"github.com/gnolang/gno/tm2/pkg/errors"
"github.com/gnolang/gno/tm2/pkg/std"
)

Expand Down

0 comments on commit 32511b3

Please sign in to comment.