Instructions and environment variables for deploying Blockscout on rollup chains.
CHAIN_TYPE
) as rollup deployments require different backend setups depending on the rollup type. Below we provide information and examples for Arbitrum and Optimism.
CHAIN_TYPE=arbitrum
. Default values are set for many variables and do not need adjustment for common setups.
INDEXER_ARBITRUM_L1_RPC
INDEXER_ARBITRUM_L1_ROLLUP_CONTRACT
OutputInfo.json
file in the main directory of your script folder). The rollup contract address must be added as there is no default value for this variable. If using a RaaS for deployment the service may provide this output. For example, Gelato provides a list of contracts on deployment, and you can copy the value from their dashboard.
INDEXER_ARBITRUM_L1_ROLLUP_INIT_BLOCK
INDEXER_ARBITRUM_L1_RPC_HISTORICAL_BLOCKS_RANGE
eth_getLogs
operation is needed. This can be identified empirically or by contacting the node admin.SequencerInbox
contract. To find the contract address, go the Rollup
contract in the block explorer, go to read methods (or read proxy), and find the SequencerInbox
method. This will display the address of the contract.Click contract and Read Contract (or read proxy depending on the contract type)
Scroll to the sequencerInbox method and copy the contract address
SequencerInbox
contract is called with the method addSequencerL2BatchFromOrigin
. Transactions to the contract can be found on the contract page of the block explorer.INDEXER_ARBITRUM_BATCHES_TRACKING_RECHECK_INTERVAL
& INDEXER_ARBITRUM_TRACKING_MESSAGES_ON_L1_RECHECK_INTERVAL
INDEXER_ARBITRUM_ROLLUP_CHUNK_SIZE & INDEXER_ARBITRUM_L1_RPC_CHUNK_SIZE
INDEXER_ARBITRUM_ROLLUP_CHUNK_SIZE
configures the chunk size for the rollup RPC node andINDEXER_ARBITRUM_L1_RPC_CHUNK_SIZE
configures the chunk size for the settlement layer (L1) RPC node.
INDEXER_ARBITRUM_BATCHES_TRACKING_MESSAGES_TO_BLOCKS_SHIFT
addSequencerL2BatchFromOrigin
of the SequencerInbox
contract do not correspond directly to the rollup block numbers.
INDEXER_ARBITRUM_BATCHES_TRACKING_ENABLED
& INDEXER_ARBITRUM_BRIDGE_MESSAGES_TRACKING_ENABLED
CHAIN_TYPE=optimism.
Default values are set for many variables and typically do not need adjustment for common setups.
INDEXER_OPTIMISM_L1_SYSTEM_CONFIG_CONTRACT
INDEXER_OPTIMISM_L1_BATCH_BLOCKSCOUT_BLOBS_API_URL
INDEXER_BEACON_RPC_URL
INDEXER_BEACON_BLOB_FETCHER_REFERENCE_SLOT
INDEXER_BEACON_BLOB_FETCHER_REFERENCE_TIMESTAMP
INDEXER_BEACON_BLOB_FETCHER_SLOT_DURATION
INDEXER_OPTIMISM_L2_BATCH_GENESIS_BLOCK_NUMBER
105235063
. For most new OP chains the value will be 0
as these chains start with the BedRock upgrade activated from scratch.
INDEXER_OPTIMISM_L1_OUTPUT_ORACLE_CONTRACT