diff --git a/.gitbook/assets/sepolia 28882.png b/.gitbook/assets/sepolia 28882.png new file mode 100644 index 0000000000..563d2571f6 Binary files /dev/null and b/.gitbook/assets/sepolia 28882.png differ diff --git a/SUMMARY.md b/SUMMARY.md index 52dae3f97c..33cec53ad9 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -21,10 +21,16 @@ * [Development Stack](boba\_documentation/developer/local-stack.md) * [Fees](boba\_documentation/developer/fee-scheme.md) * [xDomain Transaction Status](boba\_documentation/developer/xdomain-tx-status.md) - * [Replica node](boba\_community/boba-node/README.md) * [Exchange Integration](boba\_documentation/developer/exchange-integration.md) * [Contracts Registration](for-developers/register.md) * [Token Addresses](boba\_documentation/developer/token-addresses.md) + * [Node Operators](for-developers/node-operators/README.md) + * [Overview](for-developers/node-operators/overview.md) + * [Run a Node With Docker](for-developers/node-operators/run-node-docker.md) + * [Run a Node From Source](for-developers/node-operators/run-node-source.md) + * [Snapshot downloads](for-developers/node-operators/snapshot-downloads.md) + * [Software release](for-developers/node-operators/software-release.md) + * [Replica node (Legacy)](boba\_community/boba-node/README.md) * [Oracles](for-developers/oracles/README.md) * [Boba Straw Price Feed Oracle](oracles/oracle.md) * [Gas Price Oracle](oracles/gas-price-oracle.md) diff --git a/boba_community/boba-node/README.md b/boba_community/boba-node/README.md index 15f16a3b46..ffc265f416 100644 --- a/boba_community/boba-node/README.md +++ b/boba_community/boba-node/README.md @@ -1,4 +1,4 @@ -# Replica node +# Replica node (Legacy) The [boba\_community/boba-node](./) repo runs a replica of the Boba L2geth, which is useful for generating analytics for blockexplorers and other specialized use cases. diff --git a/boba_documentation/diagrams/node-operator.png b/boba_documentation/diagrams/node-operator.png new file mode 100644 index 0000000000..c290479218 Binary files /dev/null and b/boba_documentation/diagrams/node-operator.png differ diff --git a/for-developers/multichain/network-avalanche.md b/for-developers/multichain/network-avalanche.md deleted file mode 100644 index 72b6a43f4c..0000000000 --- a/for-developers/multichain/network-avalanche.md +++ /dev/null @@ -1,106 +0,0 @@ ---- -description: >- - A collection of links and addresses to get started on Boba-Avalanche. Notice: - Boba Avalanche has been shutdown on October 31, 2023. ---- - -# Contract Addresses Boba/Avalanche - -* \[Boba Avalanche Testnet L2 (4328) for the Avalanche Testnet (43113)] - * [Testnet Fountain for Developers on Boba Avalanche Testnet L2](network-avalanche.md#testnet-fountain-for-developers-on-boba-avalanche-testnet-l2) - * [Bridging](network-avalanche.md#bridging) - * [Analytics and eth\_getLogs for Boba Avalanche Testnet](network-avalanche.md#Analytics-and-eth-getlogs-for-boba-avalanche-testnet) - * [Boba Avalanche Testnet L2 Addresses](network-avalanche.md#boba-avalanche-testnet-l2-addresses) - * [Boba Avalanche Testnet L2 Links and Endpoints](network-avalanche.md#boba-avalanche-testnet-l2-links-and-endpoints) -* \[Boba Avalanche L2 (43288) for the Avalanche L1 (43114)] - * [Analytics and eth\_getLogs for Boba Avalanche Mainnet](network-avalanche.md#Analytics-and-eth-getlogs-for-boba-avalanche-mainnet) - * [Boba Avalanche L2 Addresses](network-avalanche.md#boba-avalanche-l2-addresses) - * [Boba Avalanche L2 Links and Endpoints](network-avalanche.md#boba-avalanche-l2-links-and-endpoints) - -
- -### Testnet Fountain for Developers on Boba Avalanche Testnet L2 - -There is a Boba Avalanche testnet [fountain](https://gateway.boba.network/?network=Testnet\&chain=AVAX) for `BOBA`. Authentication is via Twitter - please go to the gateway and connect your MetaMask wallet to the Boba Avalanche Testnet L2. In **gateway > wallet**, you will see the `Developer Twitter/Turing test token fountain`. This system uses Turing hybrid compute to interact with Twitter. - -### Bridging - -The standard bridges for `AVAX` and `BOBA` are active, so you can can both bridge and exit `AVAX` and `BOBA` from Avalanche Testnet to Boba Avalanche Testnet and back. - -### Analytics and eth\_getLogs for Avalanche Testnet - -If you have unusual `getLogs` needs, especially calls from `0 to latest`, the main RPC will block you, since this is how most DoS attacks work. In those cases, we encourage you to run your own RPC endpoint on your own replica of Bobaopera. We have prepared Docker images for you, so this should only take a few minutes. To access these images: - -* clone the `boba` repo -* switch to `master` branch. -* Add `.env` in [boba-node](https://github.com/bobanetwork/boba/tree/master/boba\_community/boba-node) folder - - ``` - RELEASE_VERSION=v0.X.X - ``` - -The docker-compose file is in [`boba-community/boba-node/docker-compose-bobafuji.yml`](https://github.com/bobanetwork/boba/tree/master/boba\_community/boba-node). - -```bash -$ docker compose -f docker-compose-bobafuji.yml pull -$ docker compose -f docker-compose-bobafuji.yml up -``` - -The DTL will first sync with the chain. During the sync, you will see the DTL and Replica gradually catch up with the Boba L2. This can take several minutes to several hours, depending on which chain you are replicating. - -### Boba Avalanche Testnet Addresses - -For **primary contracts and addresses** see [packages/contracts/deployments/bobafuji/README.md](https://github.com/bobanetwork/boba/tree/master/packages/contracts/deployments/bobafuji/) - -For **secondary addresses**, such as L2 Tokens and Messengers, please see the [Boba Avalanche Testnet address registration dump](https://github.com/bobanetwork/boba/tree/master/packages/boba/register/addresses/addressesBobaOperaTestnet\_0x12ad9f501149D3FDd703cC10c567F416B7F0af8b.json). - -### Boba Avalanche Testnet Links and Endpoints - -| | | -| ------------- | -------------------------------------------------------------------------------------------------- | -| ChainID | 4328 | -| RPC | [https://testnet.avax.boba.network](https://testnet.avax.boba.network) | -| Replica RPC | [https://replica.testnet.avax.boba.network](https://replica.testnet.avax.boba.network) | -| Gateway | [https://gateway.boba.network](https://gateway.boba.network) | -| Blockexplorer | [https://blockexplorer.testnet.avax.boba.network](https://blockexplorer.testnet.avax.boba.network) | -| Websocket | [wss://wss.testnet.avax.boba.network](wss://wss.testnet.avax.boba.network) | -| Gas Cap | 50000000 | - -
- -### Analytics and eth\_getLogs for Boba Avalanche Mainnet - -To access these images: - -* clone the `boba` repo -* switch to `master` branch. -* Add `.env` in [boba-node](https://github.com/bobanetwork/boba/tree/master/boba\_community/boba-node) folder - - ``` - RELEASE_VERSION=v0.X.X - ``` - -The bobabeam's docker-compose file is in [`boba-community/boba-node/docker-compose-bobaavax.yml`](https://github.com/bobanetwork/boba/tree/master/boba\_community/boba-node) - -```bash -$ docker compose -f docker-compose-bobaavax.yml pull -$ docker compose -f docker-compose-bobaavax.yml up -``` - -### Boba Avalanche Addresses - -For **primary contracts and addresses** see [packages/contracts/deployments/bobaavax/README.md](https://github.com/bobanetwork/boba/tree/master/packages/contracts/deployments/bobaavax/) - -For **secondary addresses**, such as L2 Tokens and Messengers, please see the [Boba Avalanche address registration dump](https://github.com/bobanetwork/boba/tree/master/packages/boba/register/addresses/addressBobaAvax\_0x00220f8ce1c4be8436574e575fE38558d85e2E6b.json). - -### Boba Avalanche Links and Endpoints - -| | | -| ------------- | ---------------------------------------------------------------------------------- | -| ChainID | 43288 | -| RPC Read | [https://avax.boba.network](https://avax.boba.network) | -| Write RPC | [https://replica.avax.boba.network](https://replica.avax.boba.network) | -| Gateway | [https://gateway.boba.network](https://gateway.boba.network) | -| Blockexplorer | [https://blockexplorer.avax.boba.network](https://blockexplorer.avax.boba.network) | -| Websocket | [wss://wss.avax.boba.network](wss://wss.avax.boba.network) | -| Gas Cap | 50000000 | diff --git a/for-developers/multichain/network-parameters.md b/for-developers/multichain/network-parameters.md index e9defe5617..98ecfa244e 100644 --- a/for-developers/multichain/network-parameters.md +++ b/for-developers/multichain/network-parameters.md @@ -4,6 +4,21 @@ description: A collection of links and addresses to get started on Boba-Ethereum # Contract Addresses Boba/Ethereum +
+ +For **primary network contracts and addresses** see [packages/contracts-bedrock/deployments/boba-sepolia](https://github.com/bobanetwork/v3-anchorage/tree/develop/packages/contracts-bedrock/deployments/boba-sepolia) + +### Sepolia Links and Endpoints + +| | | +| -------------- | ------------------------------------------------------------ | +| Sepolia ChainID | 28882 | +| Sepolia RPC |

https://sepolia.boba.network

This endpoint is not for production systems and is rate limited.

| +| Gateway | [https://gateway.boba.network](https://gateway.boba.network) | +| Blockexplorer | **TDB** | +| Websocket | [wss://wss.sepolia.boba.network](wss://wss.sepolia.boba.network) | +| Gas Cap | 50000000 | +
### Goerli Addresses diff --git a/for-developers/node-operators/README.md b/for-developers/node-operators/README.md new file mode 100644 index 0000000000..df591619e7 --- /dev/null +++ b/for-developers/node-operators/README.md @@ -0,0 +1 @@ +# Node Operators diff --git a/for-developers/node-operators/overview.md b/for-developers/node-operators/overview.md new file mode 100644 index 0000000000..eff7ee5e39 --- /dev/null +++ b/for-developers/node-operators/overview.md @@ -0,0 +1,35 @@ +# Node Operators (Anchorage) + +The anchorage is activated on Sepolia Testnet. For other networks, please refer to [Replica Node (Legacy)](../../boba_community/boba-node/README.md). + +## Overview + +The repliace node section is a collection of guides and tutorials help you run your own BOBA node. + +## Node Architecture + +Every node is made up of two main parts: the Rollup Node and the Execution Client. Additionally, there's an optional part called Legacy Geth, which is used for looking up information about blocks and transactions that were made before the [Anchorage Upgrade](https://github.com/bobanetwork/v3-anchorage/blob/develop/boba-chain-ops/README.md#migration). + +### Rollup Node + +The Rollup Node is responsible for taking data from Layer 1 (L1) and use it to create Layer 2 (L2) block information, which it then sends to the Execution Client. Additionally, the Rollup Node can choose to join a network that lets it get blocks straight from the Sequencer before those blocks are sent to L1. + +### Execution Client + +The Execution Client takes care of running the block information it gets from the Rollup Node. It does this through a common method called JSON-RPC, using a set of rules known as the [Engine API](https://github.com/ethereum/execution-apis/blob/main/src/engine/common.md#engine-api----common-definitions). Boba allows the use of either geth or erigon as the Execution Client. + +### Legacy Geth + +Boba switched its database from **Geth** to **Erigon** during a significant update called the [Anchorage Upgrade](https://github.com/bobanetwork/v3-anchorage/blob/develop/boba-chain-ops/README.md#migration). The old data from Geth, before this upgrade, can still be accessed with the new system but needs a special part called Legacy Geth to work properly. This means if you need to use certain commands, like `eth_call`, on the old data, you'll have to use Legacy Geth. + +You don't always need Legacy Geth, though. It's mainly for those who want to keep a full historical record of Boba nodes. + +### Diagram + +The diagram below explains how three parts - the Rollup Node, Execution Client, and Legacy Geth - fit together to make a full Boba node. It uses examples called `op-node` for the Rollup Node and `op-erigon` for the Execution Client, but this setup is similar for other versions too. + +![image](../../boba_documentation/diagrams/node-operator.png) + +### Software Release + +Make sure to update your node software regularly. This keeps your node working well with others, especially when new updates come out. Updates can fix problems and improve stability. Check the [Software Releases](./releases.md) page to see the newest versions of the software. Also, follow the [@Boba Twitter account](https://twitter.com/bobanetwork) to get alerts about important updates. diff --git a/for-developers/node-operators/run-node-docker.md b/for-developers/node-operators/run-node-docker.md new file mode 100644 index 0000000000..266573c1c3 --- /dev/null +++ b/for-developers/node-operators/run-node-docker.md @@ -0,0 +1,156 @@ +# Running a Node with Docker + +This tutorial will walk you through the process of using Docker to run an BOBA Sepolia node, OP Mainnet node and OP Sepolia node. You can find all Docker Compose files [here](https://github.com/bobanetwork/v3-anchorage/tree/develop/boba-community). + +## Prerequisites + +* [docker](https://docs.docker.com/engine/install/) +* [docker-compose](https://docs.docker.com/compose/install/) + +## Setup + +Clone the `v3-anchorage` repository to get started + +```bash +git clone https://github.com/bobanetwork/v3-anchorage.git +cd v3-anchorage +cd boba-community +``` + +## Configuration + +Configuration for the `docker-compose` is handled through environment variables inside of an `.env` file. + +### Create an `.env` file + +The repository includes a sample environment variable file located at `.env.example` that you can copy and modify to get started. Make a copy of this file and name it `.env`. + +```bash +cp .env.example .env +``` + +### Configure the `.env` file + +Open the `.env` in your directory and set the variables inside. Read the descriptions of each variable to understand what they do and how to set them. Read the [software release](./software-release.md) page to set the correct version. + +## DB Configuration + +### Download Snapshots + +You can download the database snapshot for the client and network you wish to run. + +Always verify snapshots by comparing the sha256sum of the downloaded file to the sha256sum listed on this [page](./snapshot-downloads.md). Check the sha256sum of the downloaded file by running `sha256sum `in a terminal. + +- BOBA Sepolia + + The **erigon** db can be downloaded from the [boba sepolia erigon db](https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-erigon-db.tgz). + + ```bash + curl -o boba-sepolia-erigon-db.tgz -sL https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-erigon-db.tgz + ``` + + The **geth** db can be downloaded from [boba sepolia geth db](https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-geth-db.tgz). + + ```bash + curl -o boba-sepolia-geth-db.tgz -sL https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-geth-db.tgz + ``` + +- OP Mainnet + + The **erigon** db can be downloaded from [Test in Prod OP Mainnet](https://op-erigon-backup.mainnet.testinprod.io). + +- OP Sepolia + + The genesis file can be downloaded from [Optimsim](https://networks.optimism.io/op-sepolia/genesis.json). + + ```bash + curl -o op-sepolia-genesis.json -sL https://networks.optimism.io/op-sepolia/genesis.json + ``` + + Once the genesis file is downloaded to the local directory, you can initialize the data directory with the genesis file. + + ```bash + erigon init --datadir=/db genesis.json + ``` + + The erigon can be built from the [source](https://github.com/bobanetwork/v3-erigon) using `make erigon` . + + +### Extract Snapshots + +Once you've downloaded the database snapshot, you'll need to extract it to a directory on your machine. This will take some time to complete. + +```bash +tar xvf data.tgz +``` + +### Create a Shared Secret (JWT Token) + +```bash +openssl rand -hex 32 > jwt-secret.txt +``` + +### Modify Volume Location + +The volumes of l2 and op-node should be modified to your file locations. + +```yaml +l2: + volumes: + - ./jwt-secret.txt:/config/jwt-secret.txt + - DATA_DIR:/db +op-node: + volumes: + - ./jwt-secret.txt:/config/jwt-secret.txt +``` + +## Run the Node + +Once you've configured your `.env` file, you can run the node using Docker Compose. The following command will start the node in the background. + +```bash +docker-compose -f [docker-compose-file] up -d +``` + +## Optional: Run the Node with Geth + +We support both geth and erigon as the execution engines for Boba Sepolia node. You can start the node with geth using the following command: + +```bash +docker-compose -f docker-compose-sepolia-geth.yml up -d +``` + +## Operating the Node + +### Start + +```bash +docker-compose -f [docker-compose-file] up -d +``` + +Will start the node in a detatched shell (`-d`), meaning the node will continue to run in the background. + +### View Logs + +```bash +docker-compose logs -f --tail 10 +``` + +To view logs of all containers. + +```bash +docker-compose logs -f --tail 10 +``` + +### Stop + +```bash +docker-compose -f [docker-compose-file] down +``` + +### Wipe [DANGER] + +```bash +docker-compose -f [docker-compose-file] down -v +``` + diff --git a/for-developers/node-operators/run-node-source.md b/for-developers/node-operators/run-node-source.md new file mode 100644 index 0000000000..fc0fa159d0 --- /dev/null +++ b/for-developers/node-operators/run-node-source.md @@ -0,0 +1,227 @@ +# Running a Node from Source + +DDocker images make it very simple to run a BOBA node, but you can also create your own node using the source code. You might choose to do this if you need the node to work on a specific architecture or if you want to look closely at the node's code. This guide will show you how to build and run a node from scratch. + +## Software Dependencies + +| Dependency | Version | Version Check Command | +| ------------------------------------------------------------ | -------- | --------------------- | +| [git](https://git-scm.com) | `^2` | `git --version` | +| [go](https://go.dev) | `^1.21` | `go --version` | +| [node](https://nodejs.org/en/) | `^20` | `node --version` | +| [pnpm](https://pnpm.io/installation) | `^8` | `pnpm --version` | +| [foundry](https://github.com/foundry-rs/foundry#installation) | `^0.2.0` | `forge --version` | +| [make](https://linux.die.net/man/1/make) | `^4` | `make --version` | + +## Build the Rollup Node + +### Clone the Boba Monorepo + +```bash +git clone https://github.com/bobanetwork/v3-anchorage.git +cd v3-anchorage +``` + +### Check out the required release branch + +Release branches are created when new versions of the `op-node` are created. Read through the [Releases page](https://github.com/bobanetwork/v3-anchorage/tags) to determine the correct branch to check out. + +``` +git checkout +``` + +### Install dependencies + +Install the Node.js dependencies for the Boba Monorepo. + +```bash +pnpm install +``` + +### Build packages + +Builde the Node.js packages for the Boba Monorepo. + +```bash +pnpm build +``` + +### Build op-node + +Build the `op-node`. + +```bash +make op-node +``` + +## Build the Execution Engine + +### Clone the Erigon repo + +```bash +git clone https://github.com/bobanetwork/v3-erigon.git +cd v3-erigon +``` + +### Check out the required release branch + +Release branches are created when new versions of the `erigon` are created. Read through the [Releases page](https://github.com/bobanetwork/v3-erigon/releases) to determine the correct branch to check out. + +``` +git checkout +``` + +### Build erigon + +Build the `erigon`. + +```bash +make erigon +``` + +## Download Snapshots + +You can download the database snapshot for the client and network you wish to run. + +Always verify snapshots by comparing the sha256sum of the downloaded file to the sha256sum listed on this [page](./snapshot-downloads.md). Check the sha256sum of the downloaded file by running `sha256sum `in a terminal. + +- BOBA Sepolia + + The **erigon** db can be downloaded from the [boba sepolia erigon db](https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-erigon-db.tgz). + + ```bash + curl -o boba-sepolia-erigon-db.tgz -sL https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-erigon-db.tgz + ``` + + The **geth** db can be downloaded from [boba sepolia geth db](https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-geth-db.tgz). + + ```bash + curl -o boba-sepolia-geth-db.tgz -sL https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-geth-db.tgz + ``` + +- OP Mainnet + + The **erigon** db can be downloaded from [Test in Prod OP Mainnet](https://op-erigon-backup.mainnet.testinprod.io). + +- OP Sepolia + + The genesis file can be downloaded from [Optimsim](https://networks.optimism.io/op-sepolia/genesis.json). + + ```bash + curl -o op-sepolia-genesis.json -sL https://networks.optimism.io/op-sepolia/genesis.json + ``` + + Once the genesis file is downloaded to the local directory, you can initialize the data directory with the genesis file. + + ```bash + erigon init --datadir=/db genesis.json + ``` + + The erigon can be built from the [source](https://github.com/bobanetwork/v3-erigon) using `make erigon` . + +## Create a JWT Secret + +`op-erigon` and `op-node` communicate over the engine API authrpc. This communication is secured using a shared secret. You will need to generate a shared secret and provide it to both `op-erigon` and `op-node` when you start them. In this case, the secret takes the form of a 32 byte hex string. + +Run the following command to generate a random 32 byte hex string: + +```bash +openssl rand -hex 32 > jwt.txt +``` + +## Start `op-erigon` + +It's usually simpler to begin with `op-erigon` before you start `op-node`. You can start `op-erigon` even if `op-node` isn't running yet, but `op-erigon` won't get any blocks until `op-node` starts. + +### Navigate to your v3-erigon directory + +```bash +cd v3-erigon +``` + +### Copy in the JWT secret + +Copy the JWT secret you generated in the previous step into the `v3-erigon` directory. + +```bash +cp /path/to/jwt.txt . +``` + +### Start op-erigon + +Using the following command to start `op-erigon` in a default configuration. The JSON-RPC API will become available on port 9545. + +```bash +./build/bin/erigon \ + --datadir=$DBDIR_PATH \ + --private.api.addr=localhost:9090 \ + --http.addr=0.0.0.0 \ + --http.port=9545 \ + --http.corsdomain="*" \ + --http.vhosts="*" \ + --authrpc.addr=0.0.0.0 \ + --authrpc.port=8551 \ + --authrpc.vhosts="*" \ + --authrpc.jwtsecret=./jwt.txt \ + --chain=boba-sepolia \ + --http.api=eth,debug,net,engine,web3 \ + --rollup.disabletxpoolgossip=true \ + --rollup.sequencerhttp=https://sepolia.boba.network \ + --db.size.limit=8TB +``` + +## Start `op-node` + +Once you've started `op-erigon`, you can start `op-node`. `op-node` will connect to `op-erigon` and begin synchronizing the BOBA network. `op-node` will begin sending block payloads to `op-erigon` when it derives enough blocks from Ethereum. + +### Navigate to your op-node directory + +```bash +cd op-node +``` + +### Copy in the JWT secret + +Copy the JWT secret you generated in the previous step into the `v3-erigon` directory. + +```bash +cp /path/to/jwt.txt . +``` + +### Set environment variables + +Set the following environment variable: + +```bash +export L1_RPC_URL=... # URL for the L1 node to sync from +``` + +### Start op-node + +Using the following command to start `op-node` in a default configuration. The JSON-RPC API will become available on port 8545. + +```bash +./bin/op-node \ + --l1=$L1_RPC_URL \ + --l2=http://localhost:8551 \ + --l2.jwt-secret=./jwt.txt \ + --network=boba-sepolia \ + --rpc.addr=0.0.0.0 \ + --rpc.port=8545 +``` + +## Synchornization + +During the initial synchonization, you get log messages from `op-node`, and nothing else appears to happen. + +```bash +INFO [08-04|16:36:07.150] Advancing bq origin origin=df76ff..48987e:8301316 originBehind=false +``` + +After a few minutes, `op-node` finds the right batch and then it starts synchronizing. During this synchonization process, you get log messags from `op-node`. + +```bash +INFO [08-04|16:36:01.204] Found next batch epoch=44e203..fef9a5:8301309 batch_epoch=8301309 batch_timestamp=1,673,567,518 +INFO [08-04|16:36:01.205] generated attributes in payload queue txs=2 timestamp=1,673,567,518 +INFO [08-04|16:36:01.265] inserted block hash=ee61ee..256300 number=4,069,725 state_root=a582ae..33a7c5 timestamp=1,673,567,518 parent=5b102e..13196c prev_randao=4758ca..11ff3a fee_recipient=0x4200000000000000000000000000000000000011 txs=2 update_safe=true +``` \ No newline at end of file diff --git a/for-developers/node-operators/snapshot-downloads.md b/for-developers/node-operators/snapshot-downloads.md new file mode 100644 index 0000000000..b120ae49e1 --- /dev/null +++ b/for-developers/node-operators/snapshot-downloads.md @@ -0,0 +1,27 @@ +# Node Snapshots + +This page has a list of important snapshots for node operators. Data directories and node snapshots are not required but can significantly simplify the node operation process. + +## Snapshots + +Always verify snapshots by comparing the sha256sum of the downloaded file to the sha256sum listed on this page. Check the sha256sum of the downloaded file by running `sha256sum `in a terminal. + +### BOBA Sepolia Testnet (Archive Node) + +| Client | Snapshot Date | Size | Download Link | sha256sum | +| ------ | ------------- | ----- | ------------------------------------------------------------ | ------------------------------------------------------------ | +| Erigon | 2024-01-18 | 912KB | [Link](https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-erigon-db.tgz) | `b887d2e0318e9299e844da7d39ca32040e3d0fb6a9d7abe2dd2f8624eca1cade` | +| Geth | 2024-01-18 | 2MB | [Link](https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-geth-db.tgz) | `713c10e3232fad373ab77b751c2c17fb4d73540b3496d298507dfd3f823d6a5f` | + +### BOBA Sepolia Testnet (Legacy) + +| Client | Snapshot Date | Size | Download Link | sha256sum | +| ------ | ------------- | ----- | ------------------------------------------------------------ | ------------------------------------------------------------ | +| Geth | 2024-01-18 | 1.5MB | [Link](https://boba-db.s3.us-east-2.amazonaws.com/sepolia/boba-sepolia-geth-db-legacy.tgz) | `e8aa790f15e46bdd63cc6532c4b1df77d78cda83fcd6e55568317d23eeabc4c3` | + + + + + + + diff --git a/for-developers/node-operators/software-release.md b/for-developers/node-operators/software-release.md new file mode 100644 index 0000000000..ef00b08aa9 --- /dev/null +++ b/for-developers/node-operators/software-release.md @@ -0,0 +1,62 @@ +# Node Software Releases + +This page provides a list of the necessary versions of node software and instructions on how to keep them updated. + +Our latest releases, notes and changelogs can be found on Github. `op-node` releases can be found [here](https://github.com/bobanetwork/v3-anchorage/tags) and `op-erigon` release can be found [here](https://github.com/bobanetwork/v3-erigon/releases). + +## Required Version by Network + +These are the minimal required versions for the `op-node`, `op-erigon` and `op-geth` by network. + +| Network | op-node | op-erigon | op-geth | +| ------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | +| Boba Sepolia | [v1.5.0](https://github.com/bobanetwork/v3-anchorage/releases/tag/op-node%2Fv1.5.0) | [v0.2.2](https://github.com/bobanetwork/v3-erigon/releases/tag/v0.2.2) | [v1.101305.3](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101305.3) | + +## [op-node v1.5.0](https://github.com/bobanetwork/v3-anchorage/releases/tag/op-node%2Fv1.5.0) + +**Description** + +This is a mandatory release for node operators on Sepolia. It includes three protocol activiations: + +* Regolith activates on Sepolia at Thu Jan 18 17:59:48 UTC 2024 + +* Canyon activates on Sepolia at Thu Jan 18 17:59:48 UTC 2024 +* Shanghai activates on Sepolia at Thu Jan 18 17:59:48 UTC 2024 + +**Required Action** + +Upgrade your `op-node` software. + +**Suggested action** + +Explicitly specify `--network=boba-sepolia` with a pre-configured BOBA network + +## [op-erigon v0.2.2](https://github.com/bobanetwork/v3-erigon/releases/tag/v0.2.2) + +**Description** + +This is a mandatory release for node operators on Sepolia. It includes three protocol activiations: + +* Regolith activates on Sepolia at Thu Jan 18 17:59:48 UTC 2024 + +* Canyon activates on Sepolia at Thu Jan 18 17:59:48 UTC 2024 +* Shanghai activates on Sepolia at Thu Jan 18 17:59:48 UTC 2024 + +**Required Action** + +Upgrade your `op-erigon` software. + +**Suggested action** + +Explicitly specify `--chain=boba-sepolia` with a pre-configured BOBA network + +## [op-geth v1.101305.3](https://github.com/ethereum-optimism/op-geth/releases/tag/v1.101305.3) + +**Description** + +This is a mandatory release for node operators on Sepolia. + +**Required Action** + +* Upgrade your `op-geth` software. +* Set `--networkid=28882`