Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( L1WSEndpoint = cli.StringFlag{ Name: "l1.ws", Usage: "Websocket RPC endpoint of a L1 ethereum node", Required: true, Category: commonCategory, } L2WSEndpoint = cli.StringFlag{ Name: "l2.ws", Usage: "Websocket RPC endpoint of a L2 taiko-geth execution engine", Required: true, Category: commonCategory, } TaikoL1Address = cli.StringFlag{ Name: "taikoL1", Usage: "TaikoL1 contract address", Required: true, Category: commonCategory, } TaikoL2Address = cli.StringFlag{ Name: "taikoL2", Usage: "TaikoL2 contract address", Required: true, Category: commonCategory, } // Optional flags used by all client softwares. // Logging Verbosity = &cli.IntFlag{ Name: "verbosity", Usage: "Logging verbosity: 0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail", Value: 3, Category: loggingCategory, } LogJson = &cli.BoolFlag{ Name: "log.json", Usage: "Format logs with JSON", Category: loggingCategory, } // Metrics MetricsEnabled = &cli.BoolFlag{ Name: "metrics", Usage: "Enable metrics collection and reporting", Category: metricsCategory, Value: false, } MetricsAddr = &cli.StringFlag{ Name: "metrics.addr", Usage: "Metrics reporting server listening address", Category: metricsCategory, Value: "0.0.0.0", } MetricsPort = &cli.IntFlag{ Name: "metrics.port", Usage: "Metrics reporting server listening port", Category: metricsCategory, Value: 6060, } )
Required flags used by all client softwares.
View Source
var ( L2AuthEndpoint = cli.StringFlag{ Name: "l2.auth", Usage: "Authenticated HTTP RPC endpoint of a L2 taiko-geth execution engine", Required: true, Category: driverCategory, } ThrowawayBlocksBuilderPrivKey = cli.StringFlag{ Name: "l2.throwawayBlockBuilderPrivKey", Usage: "Private key of the L2 throwaway blocks builder," + "who will be the suggested fee recipient of L2 throwaway blocks", Required: true, Category: driverCategory, } JWTSecret = cli.StringFlag{ Name: "jwtSecret", Usage: "Path to a JWT secret to use for authenticated RPC endpoints", Required: true, Category: driverCategory, } )
Flags used by driver.
View Source
var ( P2PSyncVerifiedBlocks = cli.BoolFlag{ Name: "p2p.syncVerifiedBlocks", Usage: "Try P2P syncing verified blocks between L2 execution engines, " + "will be helpful to bring a new node online quickly", Value: false, Category: driverCategory, } P2PSyncTimeout = cli.UintFlag{ Name: "p2p.syncTimeout", Usage: "P2P syncing timeout in seconds, if no sync progress is made within this time span, " + "driver will stop the P2P sync and insert all remaining L2 blocks one by one", Value: 120, Category: driverCategory, } )
Optional flags used by driver.
View Source
var ( L1ProposerPrivKey = cli.StringFlag{ Name: "l1.proposerPrivKey", Usage: "Private key of the L1 proposer, who will send TaikoL1.proposeBlock transactions", Required: true, Category: proposerCategory, } L2SuggestedFeeRecipient = cli.StringFlag{ Name: "l2.suggestedFeeRecipient", Usage: "Address of the proposed block's suggested fee recipient", Required: true, Category: proposerCategory, } )
Required flags used by proposer.
View Source
var ( ProposeInterval = cli.StringFlag{ Name: "proposeInterval", Usage: "Time interval to propose L2 pending transactions", Category: proposerCategory, } CommitSlot = cli.Uint64Flag{ Name: "commitSlot", Usage: "The commit slot will be used by proposer, by default, a random number will be used", Value: rand.Uint64(), Category: proposerCategory, } ShufflePoolContent = cli.BoolFlag{ Name: "shufflePoolContent", Usage: "Perform a weighted shuffle when building the transactions list to propose", Value: false, Category: proposerCategory, } )
Optional flags used by proposer.
View Source
var ( ZkEvmRpcdEndpoint = cli.StringFlag{ Name: "zkevmRpcdEndpoint", Usage: "RPC endpoint of a ZKEVM RPCD service", Required: true, Category: proverCategory, } ZkEvmRpcdParamsPath = cli.StringFlag{ Name: "zkevmRpcdParamsPath", Usage: "Path of ZKEVM parameters file to use", Required: true, Category: proverCategory, } L1ProverPrivKey = cli.StringFlag{ Name: "l1.proverPrivKey", Usage: "Private key of L1 prover, " + "who will send TaikoL1.proveBlock / TaikoL1.proveBlockInvalid transactions", Required: true, Category: proverCategory, } )
Required flags used by prover.
View Source
var ( Dummy = cli.BoolFlag{ Name: "dummy", Usage: "Produce dummy proofs, testing purposes only", Value: false, Category: proverCategory, } RandomDummyProofDelay = cli.StringFlag{ Name: "randomDummyProofDelay", Usage: "Set the random dummy proof delay between the bounds using the format: " + "`lowerBound-upperBound` (e.g. `30m-1h`), testing purposes only", Category: proverCategory, } )
Special flags for testing.
View Source
var CommonFlags = []cli.Flag{ &L1WSEndpoint, &L2WSEndpoint, &TaikoL1Address, &TaikoL2Address, Verbosity, LogJson, MetricsEnabled, MetricsAddr, MetricsPort, }
All common flags.
View Source
var DriverFlags = MergeFlags(CommonFlags, []cli.Flag{ &L2AuthEndpoint, &ThrowawayBlocksBuilderPrivKey, &JWTSecret, &P2PSyncVerifiedBlocks, &P2PSyncTimeout, })
All driver flags.
View Source
var ProposerFlags = MergeFlags(CommonFlags, []cli.Flag{ &L1ProposerPrivKey, &L2SuggestedFeeRecipient, &ProposeInterval, &ShufflePoolContent, &CommitSlot, })
All proposer flags.
View Source
var ProverFlags = MergeFlags(CommonFlags, []cli.Flag{ &ZkEvmRpcdEndpoint, &ZkEvmRpcdParamsPath, &L1ProverPrivKey, &Dummy, &RandomDummyProofDelay, })
All prover flags.
Functions ¶
func MergeFlags ¶
func MergeFlags(groups ...[]cli.Flag) []cli.Flag
MergeFlags merges the given flag slices.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.