-
Notifications
You must be signed in to change notification settings - Fork 413
Add deploy arbitrum chain with genesis json docs #2712
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added front matter and made some editorial changes, primarily regarding sentence casing.
Should this be added to the sidebar and marked as open, @Jason-W123?
@@ -0,0 +1,214 @@ | |||
# Deploying Arbitrum Chains Using Genesis Configuration |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# Deploying Arbitrum Chains Using Genesis Configuration | |
--- | |
title: 'Deploy your Arbitrum chain with genesis configuration' | |
sidebar_label: 'Deploy chain with genesis' | |
description: 'Learn how to deploy your Arbitrum chain using a custom genesis.json configuration file to pre-configure accounts, balances, and smart contracts' | |
user_story: 'As a chain operator, I want to deploy an Arbitrum chain with pre-configured accounts and contracts in the genesis block' | |
content_type: 'how-to' | |
author: 'Jason-W123' | |
sme: 'Jason-W123' | |
--- | |
# Deploying Arbitrum Chains Using Genesis Configuration |
|
||
## Overview | ||
|
||
This guide demonstrates how to deploy an Arbitrum Orbit chain using a custom genesis.json configuration with the orbit-cli-tool and nitro's genesis generator. This approach allows you to deploy chains with pre-configured accounts, balances, and smart contracts in the genesis block. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This guide demonstrates how to deploy an Arbitrum Orbit chain using a custom genesis.json configuration with the orbit-cli-tool and nitro's genesis generator. This approach allows you to deploy chains with pre-configured accounts, balances, and smart contracts in the genesis block. | |
This guide shows you how to deploy your Arbitrum chain using a custom `genesis.json` configuration with the orbit-cli-tool and Nitro's genesis generator. This approach lets you deploy chains with pre-configured accounts, balances, and smart contracts in the genesis block. | |
- Node.js and npm/yarn installed | ||
- orbit-cli-tool repository cloned and configured | ||
- nitro repository with genesis-generator compiled (If compiling locally, follow the [official nitro build documentation](/run-arbitrum-node/nitro/build-nitro-locally)) | ||
- Docker installed (If not compiling locally) | ||
- Custom genesis configuration requirements (accounts, balances, contracts) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Node.js and npm/yarn installed | |
- orbit-cli-tool repository cloned and configured | |
- nitro repository with genesis-generator compiled (If compiling locally, follow the [official nitro build documentation](/run-arbitrum-node/nitro/build-nitro-locally)) | |
- Docker installed (If not compiling locally) | |
- Custom genesis configuration requirements (accounts, balances, contracts) | |
Before you begin, you'll need: | |
- Node.js and npm/yarn installed | |
- orbit-cli-tool repository cloned and configured | |
- Nitro repository with genesis-generator compiled (if compiling locally, follow the [official Nitro build documentation](/run-arbitrum-node/nitro/build-nitro-locally)) | |
- Docker installed (if not compiling locally) | |
- Custom genesis configuration requirements (accounts, balances, contracts) |
## Step 1: Generate Genesis Configuration | ||
|
||
This step creates a custom genesis.json file that includes your specific chain parameters, account allocations, and any pre-deployed contracts needed for your Orbit chain. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## Step 1: Generate Genesis Configuration | |
This step creates a custom genesis.json file that includes your specific chain parameters, account allocations, and any pre-deployed contracts needed for your Orbit chain. | |
## Step 1: Generate genesis configuration | |
This step creates a custom `genesis.json` file that includes your specific chain parameters, account allocations, and any pre-deployed contracts needed for your Arbitrum chain. |
### Setup | ||
|
||
Navigate to your orbit-cli-tool directory and install dependencies: | ||
|
||
```bash | ||
cd orbit-cli-tool | ||
npm install |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
### Setup | |
Navigate to your orbit-cli-tool directory and install dependencies: | |
```bash | |
cd orbit-cli-tool | |
npm install | |
### Set up your environment | |
Navigate to your orbit-cli-tool directory and install dependencies: | |
```shell | |
|
||
**The L1 gas price used in `--initial-l1-base-fee` MUST be exactly identical to the actual gas price when deploying the rollup contracts.** Any difference will cause deployment failure. | ||
|
||
**Important Steps**: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
**Important Steps**: | |
**Important steps**: |
### Deploy Rollup | ||
|
||
Execute the rollup creation command with your genesis block hash: | ||
|
||
```bash |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
### Deploy Rollup | |
Execute the rollup creation command with your genesis block hash: | |
```bash | |
## Step 3: Deploy rollup contracts | |
The final step involves deploying the actual rollup contracts to Arbitrum Sepolia using the calculated genesis block hash. | |
### Deploy rollup | |
Execute the rollup creation command with your genesis block hash: | |
```shell |
|
||
**⚠️ Critical Requirement**: The gas price used for the rollup deployment transaction MUST be exactly identical to the `--initial-l1-base-fee` value used when generating the genesis block hash. Any difference will cause deployment failure. If gas prices have changed at all, regenerate the genesis block hash first. | ||
|
||
### Deployment Process |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
### Deployment Process | |
### Deployment process |
- Extract chain configuration and chain ID | ||
- Deploy rollup contracts to Arbitrum Sepolia testnet | ||
|
||
## Configuration Reference |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
## Configuration Reference | |
## Configuration reference |
|
||
## Configuration Reference | ||
|
||
### Genesis Configuration Structure |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
### Genesis Configuration Structure | |
### Genesis configuration structure |
No description provided.