Skip to content
This repository was archived by the owner on May 11, 2024. It is now read-only.

Commit 593d800

Browse files
committed
add l1/l2 node version flags
1 parent 970245e commit 593d800

File tree

4 files changed

+39
-2
lines changed

4 files changed

+39
-2
lines changed

cmd/flags/prover.go

+14
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,18 @@ var (
190190
Value: false,
191191
Category: proverCategory,
192192
}
193+
L1NodeVersion = &cli.StringFlag{
194+
Name: "prover.l1NodeVersion",
195+
Usage: "Version or tag or the L1 Node Version used as an L1 RPC Url by this guardian prover",
196+
Category: proverCategory,
197+
Value: "",
198+
}
199+
L2NodeVersion = &cli.StringFlag{
200+
Name: "prover.l1NodeVersion",
201+
Usage: "Version or tag or the L1 Node Version used as an L1 RPC Url by this guardian prover",
202+
Category: proverCategory,
203+
Value: "",
204+
}
193205
)
194206

195207
// ProverFlags All prover flags.
@@ -227,4 +239,6 @@ var ProverFlags = MergeFlags(CommonFlags, []cli.Flag{
227239
DatabaseCacheSize,
228240
ProverAssignmentHookAddress,
229241
Allowance,
242+
L1NodeVersion,
243+
L2NodeVersion,
230244
})

prover/config.go

+15
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package prover
22

33
import (
44
"crypto/ecdsa"
5+
"errors"
56
"fmt"
67
"math/big"
78
"net/url"
@@ -57,6 +58,8 @@ type Config struct {
5758
Allowance *big.Int
5859
GuardianProverHealthCheckServerEndpoint *url.URL
5960
RaikoHostEndpoint string
61+
L1NodeVersion string
62+
L2NodeVersion string
6063
}
6164

6265
// NewConfigFromCliContext creates a new config instance from command line flags.
@@ -114,9 +117,19 @@ func NewConfigFromCliContext(c *cli.Context) (*Config, error) {
114117
if err := c.Set(flags.ProveUnassignedBlocks.Name, "true"); err != nil {
115118
return nil, err
116119
}
120+
117121
if err := c.Set(flags.ContesterMode.Name, "true"); err != nil {
118122
return nil, err
119123
}
124+
125+
// l1 and l2 node version flags are required only if guardian prover
126+
if !c.IsSet(flags.L1NodeVersion.Name) {
127+
return nil, errors.New("L1NodeVersion is required if guardian prover is set")
128+
}
129+
130+
if !c.IsSet(flags.L2NodeVersion.Name) {
131+
return nil, errors.New("L2NodeVersion is required if guardian prover is set")
132+
}
120133
}
121134

122135
if !c.IsSet(flags.GuardianProver.Name) && !c.IsSet(flags.RaikoHostEndpoint.Name) {
@@ -165,5 +178,7 @@ func NewConfigFromCliContext(c *cli.Context) (*Config, error) {
165178
DatabasePath: c.String(flags.DatabasePath.Name),
166179
DatabaseCacheSize: c.Uint64(flags.DatabaseCacheSize.Name),
167180
Allowance: allowance,
181+
L1NodeVersion: c.String(flags.L1NodeVersion.Name),
182+
L2NodeVersion: c.String(flags.L2NodeVersion.Name),
168183
}, nil
169184
}

prover/config_test.go

+8
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,10 @@ import (
1515
var (
1616
l1WsEndpoint = os.Getenv("L1_NODE_WS_ENDPOINT")
1717
l1HttpEndpoint = os.Getenv("L1_NODE_HTTP_ENDPOINT")
18+
l1NodeVersion = "1.0.0"
1819
l2WsEndpoint = os.Getenv("L2_EXECUTION_ENGINE_WS_ENDPOINT")
1920
l2HttpEndpoint = os.Getenv("L2_EXECUTION_ENGINE_HTTP_ENDPOINT")
21+
l2NodeVersion = "0.1.0"
2022
taikoL1 = os.Getenv("TAIKO_L1_ADDRESS")
2123
taikoL2 = os.Getenv("TAIKO_L2_ADDRESS")
2224
allowance = "10000000000000000000000000000000000000000000000000"
@@ -50,6 +52,8 @@ func (s *ProverTestSuite) TestNewConfigFromCliContextGuardianProver() {
5052
s.Equal(uint64(minTierFee), c.MinPseZkevmTierFee.Uint64())
5153
s.Equal(uint64(3), c.ProveBlockTxReplacementMultiplier)
5254
s.Equal(uint64(256), c.ProveBlockMaxTxGasTipCap.Uint64())
55+
s.Equal(c.L1NodeVersion, l1NodeVersion)
56+
s.Equal(c.L2NodeVersion, l2NodeVersion)
5357
s.Nil(new(Prover).InitFromCli(context.Background(), ctx))
5458
s.True(c.ProveUnassignedBlocks)
5559
s.Equal("dbPath", c.DatabasePath)
@@ -88,6 +92,8 @@ func (s *ProverTestSuite) TestNewConfigFromCliContextGuardianProver() {
8892
"--" + flags.DatabaseCacheSize.Name, "128",
8993
"--" + flags.MaxProposedIn.Name, "100",
9094
"--" + flags.Allowance.Name, allowance,
95+
"--" + flags.L1NodeVersion.Name, l1NodeVersion,
96+
"--" + flags.L2NodeVersion.Name, l2NodeVersion,
9197
}))
9298
}
9399

@@ -129,6 +135,8 @@ func (s *ProverTestSuite) SetupApp() *cli.App {
129135
&cli.StringFlag{Name: flags.ProverAssignmentHookAddress.Name},
130136
&cli.StringFlag{Name: flags.Allowance.Name},
131137
&cli.StringFlag{Name: flags.ContesterMode.Name},
138+
&cli.StringFlag{Name: flags.L1NodeVersion.Name},
139+
&cli.StringFlag{Name: flags.L2NodeVersion.Name},
132140
}
133141
app.Action = func(ctx *cli.Context) error {
134142
_, err := NewConfigFromCliContext(ctx)

prover/prover.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -405,8 +405,8 @@ func (p *Prover) Start() error {
405405
p.ctx,
406406
version.CommitVersion(),
407407
version.CommitVersion(),
408-
"placeholder", // todo: get l1 node version
409-
"placeholder", // todo: get l2 node version
408+
p.cfg.L1NodeVersion,
409+
p.cfg.L2NodeVersion,
410410
); err != nil {
411411
log.Crit("Failed to send guardian prover startup", "error", err)
412412
}

0 commit comments

Comments
 (0)