cmd/blsync: remove todo add flag --datadir

This commit is contained in:
weixie.cui 2025-11-15 17:55:12 +08:00
parent 2a2f106a01
commit e50dcc3b5a

View file

@ -20,6 +20,7 @@ import (
"context" "context"
"fmt" "fmt"
"os" "os"
"path/filepath"
"slices" "slices"
"github.com/ethereum/go-ethereum/beacon/blsync" "github.com/ethereum/go-ethereum/beacon/blsync"
@ -44,7 +45,7 @@ func main() {
utils.BeaconGenesisTimeFlag, utils.BeaconGenesisTimeFlag,
utils.BeaconCheckpointFlag, utils.BeaconCheckpointFlag,
utils.BeaconCheckpointFileFlag, utils.BeaconCheckpointFileFlag,
//TODO datadir for optional permanent database utils.DataDirFlag,
utils.MainnetFlag, utils.MainnetFlag,
utils.SepoliaFlag, utils.SepoliaFlag,
utils.HoleskyFlag, utils.HoleskyFlag,
@ -87,11 +88,18 @@ func makeRPCClient(ctx *cli.Context) *rpc.Client {
log.Warn("No engine API target specified, performing a dry run") log.Warn("No engine API target specified, performing a dry run")
return nil return nil
} }
if !ctx.IsSet(utils.BlsyncJWTSecretFlag.Name) {
utils.Fatalf("JWT secret parameter missing") //TODO use default if datadir is specified
}
engineApiUrl, jwtFileName := ctx.String(utils.BlsyncApiFlag.Name), ctx.String(utils.BlsyncJWTSecretFlag.Name) engineApiUrl := ctx.String(utils.BlsyncApiFlag.Name)
var jwtFileName string
if ctx.IsSet(utils.BlsyncJWTSecretFlag.Name) {
jwtFileName = ctx.String(utils.BlsyncJWTSecretFlag.Name)
} else if ctx.IsSet(utils.DataDirFlag.Name) {
// Use default JWT secret path in datadir
datadir := ctx.String(utils.DataDirFlag.Name)
jwtFileName = filepath.Join(datadir, "jwtsecret")
} else {
utils.Fatalf("JWT secret parameter missing")
}
var jwtSecret [32]byte var jwtSecret [32]byte
if jwt, err := node.ObtainJWTSecret(jwtFileName); err == nil { if jwt, err := node.ObtainJWTSecret(jwtFileName); err == nil {
copy(jwtSecret[:], jwt) copy(jwtSecret[:], jwt)