Skip to content

Commit c59b807

Browse files
authored
fix: start signer path (#2687)
<!-- Please read and fill out this form before submitting your PR. Please make sure you have reviewed our contributors guide before submitting your first PR. NOTE: PR titles should follow semantic commits: https://www.conventionalcommits.org/en/v1.0.0/ --> ## Overview closes #2603 make relative path work with start command
1 parent 10e1582 commit c59b807

File tree

4 files changed

+30
-30
lines changed

4 files changed

+30
-30
lines changed

docs/learn/config.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -837,7 +837,7 @@ signer:
837837

838838
**Command-line Flag:**
839839
`--rollkit.signer.signer_path <string>`
840-
_Example:_ `--rollkit.signer.signer_path ./keys/mykey.pem`
840+
_Example:_ `--rollkit.signer.signer_path ./config`
841841
_Default:_ (Depends on application)
842842
_Constant:_ `FlagSignerPath`
843843

pkg/cmd/run_node.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
"os"
88
"os/signal"
99
"path/filepath"
10+
"strings"
1011
"syscall"
1112
"time"
1213

@@ -96,19 +97,18 @@ func StartNode(
9697
return err
9798
}
9899

99-
// Resolve signer path relative to root directory if it's not an absolute path
100-
signerPath := nodeConfig.Signer.SignerPath
101-
if !filepath.IsAbs(signerPath) {
102-
signerPath = filepath.Join(nodeConfig.RootDir, signerPath)
100+
// Resolve signer path; allow absolute, relative to node root, or relative to CWD if resolution fails
101+
signerPath, err := filepath.Abs(strings.TrimSuffix(nodeConfig.Signer.SignerPath, "signer.json"))
102+
if err != nil {
103+
return err
103104
}
105+
104106
signer, err = file.LoadFileSystemSigner(signerPath, []byte(passphrase))
105107
if err != nil {
106108
return err
107109
}
108-
} else if nodeConfig.Signer.SignerType == "grpc" {
109-
panic("grpc remote signer not implemented")
110-
} else if nodeConfig.Node.Aggregator {
111-
return fmt.Errorf("unknown remote signer type: %s", nodeConfig.Signer.SignerType)
110+
} else if nodeConfig.Node.Aggregator && nodeConfig.Signer.SignerType != "file" {
111+
return fmt.Errorf("unknown signer type: %s", nodeConfig.Signer.SignerType)
112112
}
113113

114114
metrics := node.DefaultMetricsProvider(nodeConfig.Instrumentation)

pkg/cmd/run_node_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -578,15 +578,15 @@ func TestStartNodeErrors(t *testing.T) {
578578
cfg.Signer.SignerType = "grpc"
579579
cfg.Node.Aggregator = true
580580
},
581-
expectPanic: true,
581+
expectedError: "unknown signer type",
582582
},
583583
{
584584
name: "UnknownSignerError",
585585
configModifier: func(cfg *rollconf.Config) {
586586
cfg.Signer.SignerType = "unknown"
587587
cfg.Node.Aggregator = true
588588
},
589-
expectedError: "unknown remote signer type: unknown",
589+
expectedError: "unknown signer type",
590590
},
591591
{
592592
name: "LoadFileSystemSignerError",

test/e2e/base_test.go

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -51,19 +51,19 @@ func TestBasic(t *testing.T) {
5151
"init",
5252
"--home="+node1Home,
5353
"--chain_id=testing",
54-
"--rollkit.node.aggregator",
55-
"--rollkit.signer.passphrase="+aggregatorPass,
54+
"--evnode.node.aggregator",
55+
"--evnode.signer.passphrase="+aggregatorPass,
5656
)
5757
require.NoError(t, err, "failed to init aggregator", output)
5858

5959
// start aggregator
6060
sut.ExecCmd(binaryPath,
6161
"start",
6262
"--home="+node1Home,
63-
"--rollkit.node.aggregator",
64-
"--rollkit.signer.passphrase="+aggregatorPass,
65-
"--rollkit.node.block_time=5ms",
66-
"--rollkit.da.block_time=15ms",
63+
"--evnode.node.aggregator",
64+
"--evnode.signer.passphrase="+aggregatorPass,
65+
"--evnode.node.block_time=5ms",
66+
"--evnode.da.block_time=15ms",
6767
"--kv-endpoint=127.0.0.1:9090",
6868
)
6969

@@ -90,9 +90,9 @@ func TestBasic(t *testing.T) {
9090
binaryPath,
9191
"start",
9292
"--home="+node2Home,
93-
"--rollkit.log.level=debug",
94-
"--rollkit.p2p.listen_address="+node2P2P,
95-
fmt.Sprintf("--rollkit.rpc.address=%s", node2RPC),
93+
"--evnode.log.level=debug",
94+
"--evnode.p2p.listen_address="+node2P2P,
95+
fmt.Sprintf("--evnode.rpc.address=%s", node2RPC),
9696
)
9797

9898
sut.AwaitNodeUp(t, "http://"+node2RPC, 2*time.Second)
@@ -146,19 +146,19 @@ func TestNodeRestartPersistence(t *testing.T) {
146146
"init",
147147
"--home="+nodeHome,
148148
"--chain_id=testing",
149-
"--rollkit.node.aggregator",
150-
"--rollkit.signer.passphrase=12345678",
149+
"--evnode.node.aggregator",
150+
"--evnode.signer.passphrase=12345678",
151151
)
152152
require.NoError(t, err, "failed to init node", output)
153153

154154
// Start node
155155
sut.ExecCmd(binaryPath,
156156
"start",
157157
"--home="+nodeHome,
158-
"--rollkit.node.aggregator",
159-
"--rollkit.signer.passphrase=12345678",
160-
"--rollkit.node.block_time=5ms",
161-
"--rollkit.da.block_time=15ms",
158+
"--evnode.node.aggregator",
159+
"--evnode.signer.passphrase=12345678",
160+
"--evnode.node.block_time=5ms",
161+
"--evnode.da.block_time=15ms",
162162
"--kv-endpoint=127.0.0.1:9090",
163163
)
164164
sut.AwaitNodeUp(t, "http://127.0.0.1:7331", 2*time.Second)
@@ -191,10 +191,10 @@ func TestNodeRestartPersistence(t *testing.T) {
191191
sut.ExecCmd(binaryPath,
192192
"start",
193193
"--home="+nodeHome,
194-
"--rollkit.node.aggregator",
195-
"--rollkit.signer.passphrase=12345678",
196-
"--rollkit.node.block_time=5ms",
197-
"--rollkit.da.block_time=15ms",
194+
"--evnode.node.aggregator",
195+
"--evnode.signer.passphrase=12345678",
196+
"--evnode.node.block_time=5ms",
197+
"--evnode.da.block_time=15ms",
198198
"--kv-endpoint=127.0.0.1:9090",
199199
)
200200
sut.AwaitNodeUp(t, "http://127.0.0.1:7331", 2*time.Second)

0 commit comments

Comments
 (0)