Skip to content

chore!: enable multiple L1 nodes to be used #11945

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

Merged
merged 43 commits into from
Feb 26, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
1140b31
fix: support multiple L1 node URLs
spypsy Feb 12, 2025
b2faca5
leftovers
spypsy Feb 12, 2025
16146ca
more fixes
spypsy Feb 12, 2025
4f79daf
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 12, 2025
286954a
fix --rpc-url usage
spypsy Feb 12, 2025
f0e23a1
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 12, 2025
0fad63b
fix imports + tests
spypsy Feb 12, 2025
09ea2b1
undo test change
spypsy Feb 12, 2025
d6334bb
update --l1-rpc-urls
spypsy Feb 12, 2025
dd1e0ef
fix imports
spypsy Feb 13, 2025
6d45015
another import
spypsy Feb 13, 2025
4fb917e
externalHosts
spypsy Feb 13, 2025
d129c99
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 20, 2025
4836dd9
post-merge fixes
spypsy Feb 20, 2025
bbacaaf
more post-merge fixes
spypsy Feb 20, 2025
4a91b45
fix e2e test
spypsy Feb 20, 2025
8714406
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 21, 2025
29a1311
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 24, 2025
24ccc68
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 24, 2025
da0e3cb
PR Fixes
spypsy Feb 24, 2025
842ae5d
update docs
spypsy Feb 24, 2025
685d0c5
update docs
spypsy Feb 24, 2025
12cc436
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 24, 2025
688014a
fix typings
spypsy Feb 25, 2025
aa5fa6c
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 25, 2025
8e79c39
fix wallet client types
spypsy Feb 25, 2025
e438592
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 25, 2025
eca0f24
use multi-urls in cheatcode
spypsy Feb 25, 2025
889caad
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 25, 2025
fe3d7d3
fix helper spartan script
spypsy Feb 25, 2025
c489937
fix e2e cheat_codes
spypsy Feb 25, 2025
85c007f
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 25, 2025
1547a62
rm unused import
spypsy Feb 25, 2025
67c81a9
PR Fixes
spypsy Feb 26, 2025
d58918e
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 26, 2025
fc382de
deploy l1 contracts fixes
spypsy Feb 26, 2025
bb6975c
fix type imports
spypsy Feb 26, 2025
9405407
update gh secret names
spypsy Feb 26, 2025
36c9e22
break, don't return
spypsy Feb 26, 2025
b111170
no need to retry get-chain-id
spypsy Feb 26, 2025
da839b8
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 26, 2025
4be11a4
Merge branch 'master' into spy/multi-rpc-urls
spypsy Feb 26, 2025
3bd421e
merge fix
spypsy Feb 26, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/scripts/wait_for_infra.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ API_KEY=$3
# We retry every 20 seconds, and wait for a total of 5 minutes (15 times)

if [ "$INFRA" == "mainnet-fork" ]; then
export ETHEREUM_HOST="https://$DEPLOY_TAG-mainnet-fork.aztec.network:8545/$API_KEY"
export ETHEREUM_HOSTS="https://$DEPLOY_TAG-mainnet-fork.aztec.network:8545/$API_KEY"
curl -H "Content-Type: application/json" -X POST --data '{"method":"eth_chainId","params":[],"id":49,"jsonrpc":"2.0"}' \
--connect-timeout 30 \
--retry 15 \
--retry-delay 20 \
$ETHEREUM_HOST
$ETHEREUM_HOSTS
elif [ "$INFRA" == "pxe" ]; then
export PXE_URL="https://api.aztec.network/$DEPLOY_TAG/aztec-pxe/$API_KEY/status"
curl \
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/devnet-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ jobs:

docker run --rm --network host $AZTEC_DOCKER_IMAGE bootstrap-network \
--rpc-url http://127.0.0.1:$PXE_PORT \
--l1-rpc-url http://127.0.0.1:$ETHEREUM_PORT \
--l1-rpc-urls http://127.0.0.1:$ETHEREUM_PORT \
--l1-chain-id "$L1_CHAIN_ID" \
--mnemonic "$MNEMONIC" \
--address-index "$ADDRESS_INDEX" \
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/network-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -116,8 +116,8 @@ jobs:
TF_STATE_BUCKET: aztec-terraform
GKE_CLUSTER_CONTEXT: "gke_testnet-440309_us-west1-a_${{ inputs.cluster }}"
GCP_API_KEY_HEADER: "X-goog-api-key"
EXTERNAL_ETHEREUM_HOST: "https://json-rpc.${{ secrets.SEPOLIA_EXTERNAL_HOST }}?key=${{ secrets.SEPOLIA_API_KEY }}"
EXTERNAL_ETHEREUM_CONSENSUS_HOST: "https://beacon.${{ secrets.SEPOLIA_EXTERNAL_HOST }}"
EXTERNAL_ETHEREUM_HOSTS: "https://json-rpc.${{ secrets.GCP_SEPOLIA_URL }}?key=${{ secrets.GCP_SEPOLIA_API_KEY }},${{ secrets.INFURA_SEPOLIA_URL }}"
EXTERNAL_ETHEREUM_CONSENSUS_HOST: "https://beacon.${{ secrets.GCP_SEPOLIA_URL }}"

steps:
- name: Checkout code
Expand Down Expand Up @@ -195,9 +195,9 @@ jobs:
-var="AZTEC_DOCKER_IMAGE=${{ env.AZTEC_DOCKER_IMAGE }}" \
-var="L1_DEPLOYMENT_PRIVATE_KEY=${{ secrets.SEPOLIA_L1_DEPLOYMENT_PRIVATE_KEY }}" \
-var="L1_DEPLOYMENT_MNEMONIC=$L1_DEPLOYMENT_MNEMONIC" \
-var="EXTERNAL_ETHEREUM_HOST=${{ env.EXTERNAL_ETHEREUM_HOST }}" \
-var="EXTERNAL_ETHEREUM_HOSTS=${{ env.EXTERNAL_ETHEREUM_HOSTS }}" \
-var="EXTERNAL_ETHEREUM_CONSENSUS_HOST=${{ env.EXTERNAL_ETHEREUM_CONSENSUS_HOST }}" \
-var="EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY=${{ secrets.SEPOLIA_API_KEY }}" \
-var="EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY=${{ secrets.GCP_SEPOLIA_API_KEY }}" \
-var="EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY_HEADER=${{ env.GCP_API_KEY_HEADER }}" \
-lock=${{ inputs.respect_tf_lock }}
else
Expand All @@ -223,9 +223,9 @@ jobs:
-var="L1_DEPLOYMENT_PRIVATE_KEY=${{ secrets.SEPOLIA_L1_DEPLOYMENT_PRIVATE_KEY }}" \
-var="L1_DEPLOYMENT_MNEMONIC=$L1_DEPLOYMENT_MNEMONIC" \
-var="L1_DEPLOYMENT_SALT=${DEPLOYMENT_SALT:-$RANDOM}" \
-var="EXTERNAL_ETHEREUM_HOST=${{ env.EXTERNAL_ETHEREUM_HOST }}" \
-var="EXTERNAL_ETHEREUM_HOSTS=${{ env.EXTERNAL_ETHEREUM_HOSTS }}" \
-var="EXTERNAL_ETHEREUM_CONSENSUS_HOST=${{ env.EXTERNAL_ETHEREUM_CONSENSUS_HOST }}" \
-var="EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY=${{ secrets.SEPOLIA_API_KEY }}" \
-var="EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY=${{ secrets.GCP_SEPOLIA_API_KEY }}" \
-var="EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY_HEADER=${{ env.GCP_API_KEY_HEADER }}" \
${{ contains(env.VALUES_FILE, 'devnet') && '-var="EXPOSE_HTTPS_BOOTNODE=true"' || '' }} \
-out=tfplan \
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/nightly-kind-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ env:
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
BUILD_INSTANCE_SSH_KEY: ${{ secrets.BUILD_INSTANCE_SSH_KEY }}
GIT_COMMIT: ${{ github.event.pull_request.head.sha || github.sha }}
EXTERNAL_ETHEREUM_HOST: "https://json-rpc.${{ secrets.SEPOLIA_EXTERNAL_HOST }}?key=${{ secrets.SEPOLIA_API_KEY }}"
EXTERNAL_ETHEREUM_CONSENSUS_HOST: "https://beacon.${{ secrets.SEPOLIA_EXTERNAL_HOST }}"
EXTERNAL_ETHEREUM_HOSTS: "https://json-rpc.${{ secrets.GCP_SEPOLIA_URL }}?key=${{ secrets.GCP_SEPOLIA_API_KEY }}"
EXTERNAL_ETHEREUM_CONSENSUS_HOST: "https://beacon.${{ secrets.GCP_SEPOLIA_URL }}"
GCP_API_KEY_HEADER: "X-goog-api-key"
jobs:
setup:
Expand Down Expand Up @@ -121,9 +121,9 @@ jobs:
docker pull aztecprotocol/end-to-end:${{ env.GIT_COMMIT }}

# Set the sepolia run variables
export EXTERNAL_ETHEREUM_HOST=${{ env.EXTERNAL_ETHEREUM_HOST }}
export EXTERNAL_ETHEREUM_HOSTS=${{ env.EXTERNAL_ETHEREUM_HOSTS }}
export EXTERNAL_ETHEREUM_CONSENSUS_HOST=${{ env.EXTERNAL_ETHEREUM_CONSENSUS_HOST }}
export EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY=${{ secrets.SEPOLIA_API_KEY }}
export EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY=${{ secrets.GCP_SEPOLIA_API_KEY }}
export EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY_HEADER=${{ env.GCP_API_KEY_HEADER }}
export L1_DEPLOYMENT_PRIVATE_KEY=${{ secrets.SEPOLIA_L1_DEPLOYMENT_PRIVATE_KEY }}
export L1_ACCOUNTS_MNEMONIC="${{ secrets.SEPOLIA_ACCOUNTS_MNEMONIC }}"
Expand Down
4 changes: 2 additions & 2 deletions boxes/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ services:
working_dir: /root/aztec-packages/yarn-project/aztec
command: "node ./dest/bin start --sandbox"
environment:
ETHEREUM_HOSTS: http://ethereum:8545
HARDWARE_CONCURRENCY: 4
ETHEREUM_HOST: http://ethereum:8545
L1_CHAIN_ID: 31337
FORCE_COLOR: ${FORCE_COLOR:-1}
ARCHIVER_POLLING_INTERVAL_MS: 50
Expand Down Expand Up @@ -45,7 +45,7 @@ services:
HARDWARE_CONCURRENCY: 4
DEBUG: "aztec:*"
DEBUG_COLORS: "true"
ETHEREUM_HOST: http://ethereum:8545
ETHEREUM_HOSTS: http://ethereum:8545
L1_CHAIN_ID: 31337
FORCE_COLOR: ${FORCE_COLOR:-1}
PXE_URL: http://aztec:8080
Expand Down
12 changes: 6 additions & 6 deletions ci3/tmux_split
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ set -eu

# Check if at least two commands are provided (otherwise what is the point)
if [ "$#" -lt 2 ]; then
echo "Usage: $0 <main-command> <background commands>..."
exit 1
echo "Usage: $0 <main-command> <background commands>..."
exit 1
fi

# Launches tmux with 1 window that has as many panes as commands
Expand All @@ -23,7 +23,7 @@ tmux new-session -d -s "$session_name" -e LOG_LEVEL=${LOG_LEVEL:-"debug"} \
-e OTEL_EXPORTER_OTLP_METRICS_ENDPOINT=${OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:-} \
-e OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=${OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:-} \
-e L1_CONSENSUS_HOST_URL=${L1_CONSENSUS_HOST_URL:-} \
-e ETHEREUM_HOST=${ETHEREUM_HOST:-} \
-e ETHEREUM_HOSTS=${ETHEREUM_HOSTS:-} \
-e LOG_JSON=${LOG_JSON:-}

shift 1
Expand All @@ -39,7 +39,7 @@ echo "Using tmux base_index=$base_index"

# Create the necessary number of panes and set titles
num_commands=${#commands[@]}
for ((i=0; i<num_commands; i++)); do
for ((i = 0; i < num_commands; i++)); do
if [[ $i -gt 0 ]]; then
# Split the first pane each time
tmux split-window -t "$session_name:${base_index}.${base_index}" -h
Expand All @@ -53,9 +53,9 @@ done
tmux set-hook -t "$session_name" pane-exited "if-shell -F '#{==:#{pane_index},0}' 'kill-session -t \"$session_name\"'"

# Now send commands to each pane
for ((i=0; i<num_commands; i++)); do
for ((i = 0; i < num_commands; i++)); do
tmux send-keys -t "$session_name:$base_index.$((base_index + i))" "${commands[$i]}" C-m
done

# Attach to the session
tmux attach-session -t "$session_name"
tmux attach-session -t "$session_name"
35 changes: 17 additions & 18 deletions docker-compose.provernet.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,10 @@
# Logs latest block numbers every 10 seconds.
name: aztec-provernet
services:

# Anvil instance that serves as L1
ethereum:
image: aztecprotocol/foundry:25f24e677a6a32a62512ad4f561995589ac2c7dc-${ARCH_TAG:-amd64}
entrypoint: 'anvil --block-time 12 --silent -p 8545 --host 0.0.0.0 --chain-id 31337'
entrypoint: "anvil --block-time 12 --silent -p 8545 --host 0.0.0.0 --chain-id 31337"
ports:
- 8545:8545

Expand All @@ -18,7 +17,7 @@ services:
- "8080:80"
environment:
LOG_LEVEL: info
ETHEREUM_HOST: http://ethereum:8545
ETHEREUM_HOSTS: http://ethereum:8545
L1_CHAIN_ID: 31337
AZTEC_PORT: 80
DEPLOY_AZTEC_CONTRACTS: 1
Expand All @@ -37,7 +36,7 @@ services:
volumes:
- ./log/aztec-node/:/usr/src/yarn-project/aztec/log:rw
healthcheck:
test: [ "CMD", "curl", "-fSs", "http://127.0.0.1:80/status" ]
test: ["CMD", "curl", "-fSs", "http://127.0.0.1:80/status"]
interval: 3s
timeout: 30s
start_period: 120s
Expand All @@ -58,7 +57,7 @@ services:
- "8083:80"
environment:
LOG_LEVEL: verbose
ETHEREUM_HOST: http://ethereum:8545
ETHEREUM_HOSTS: http://ethereum:8545
PROVER_COORDINATION_NODE_URL: http://aztec-node
AZTEC_PORT: 80
ARCHIVER_POLLING_INTERVAL_MS: 1000
Expand All @@ -79,11 +78,11 @@ services:
aztec-prover-broker:
condition: service_healthy
healthcheck:
test: [ "CMD", "curl", "-fSs", "http://127.0.0.1:80/status" ]
test: ["CMD", "curl", "-fSs", "http://127.0.0.1:80/status"]
interval: 3s
timeout: 30s
start_period: 120s
command: [ "start", "--prover-node", "--archiver" ]
command: ["start", "--prover-node", "--archiver"]
restart: on-failure:5

aztec-prover-broker:
Expand All @@ -94,11 +93,11 @@ services:
LOG_LEVEL: verbose
AZTEC_PORT: 80
healthcheck:
test: [ "CMD", "curl", "-fSs", "http://127.0.0.1:80/status" ]
test: ["CMD", "curl", "-fSs", "http://127.0.0.1:80/status"]
interval: 3s
timeout: 30s
start_period: 120s
command: [ "start", "--prover-broker" ]
command: ["start", "--prover-broker"]
restart: on-failure:5

# Prover agent that connects to the prover-node for fetching proving jobs and executing them
Expand All @@ -109,7 +108,7 @@ services:
- "8090:80"
environment:
LOG_LEVEL: verbose
ETHEREUM_HOST: http://ethereum:8545
ETHEREUM_HOSTS: http://ethereum:8545
PROVER_BROKER_HOST: http://aztec-prover-broker
L1_CHAIN_ID: 31337
AZTEC_PORT: 80
Expand All @@ -124,13 +123,13 @@ services:
depends_on:
aztec-prover-broker:
condition: service_healthy
command: [ "start", "--prover-agent" ]
command: ["start", "--prover-agent"]
deploy:
mode: replicated
replicas: 2
restart: on-failure:5
healthcheck:
test: [ "CMD", "curl", "-fSs", "http://127.0.0.1:80/status" ]
test: ["CMD", "curl", "-fSs", "http://127.0.0.1:80/status"]
interval: 3s
timeout: 30s
start_period: 20s
Expand All @@ -143,7 +142,7 @@ services:
- "8082:80"
environment:
LOG_LEVEL: info
ETHEREUM_HOST: http://ethereum:8545
ETHEREUM_HOSTS: http://ethereum:8545
AZTEC_NODE_URL: http://aztec-node
L1_CHAIN_ID: 31337
AZTEC_PORT: 80
Expand All @@ -167,23 +166,23 @@ services:
aztec-node:
condition: service_healthy
healthcheck:
test: [ "CMD", "curl", "-fSs", "http://127.0.0.1:80/status" ]
test: ["CMD", "curl", "-fSs", "http://127.0.0.1:80/status"]
interval: 3s
timeout: 30s
start_period: 90s
restart: on-failure:5
command: [ "start", "--bot", "--pxe" ]
command: ["start", "--bot", "--pxe"]

# Simple watcher that logs the latest block numbers every few seconds using the CLI and the bot's PXE
aztec-block-watcher:
image: "aztecprotocol/${IMAGE:-aztec:master}"
environment:
ETHEREUM_HOST: http://ethereum:8545
ETHEREUM_HOSTS: http://ethereum:8545
L1_CHAIN_ID: 31337
depends_on:
aztec-bot:
condition: service_healthy
entrypoint: '/bin/bash -c'
entrypoint: "/bin/bash -c"
command: >
'while true; do node --no-warnings /usr/src/yarn-project/aztec/dest/bin/index.js block-number -u http://aztec-bot | head -n2; sleep 10; done'
restart: on-failure:5
Expand All @@ -194,7 +193,7 @@ services:
aztec-cli:
image: "aztecprotocol/${IMAGE:-aztec:master}"
environment:
ETHEREUM_HOST: http://ethereum:8545
ETHEREUM_HOSTS: http://ethereum:8545
PXE_URL: http://aztec-bot
L1_CHAIN_ID: 31337
stdin_open: true
Expand Down
12 changes: 6 additions & 6 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ services:
OUTBOX_CONTRACT_ADDRESS: "0x3ec4b6c68a8c2ce4c78cdd465b3019b11a568d1d"
FEE_JUICE_CONTRACT_ADDRESS: "0x73c43b919973711e096bfc04c9d4b3be511ffc0b"
FEE_JUICE_PORTAL_CONTRACT_ADDRESS: "0xdf25b0a34dbee9f25518f7a4d63bab8b3bb3e496"
ETHEREUM_HOST:
ETHEREUM_HOSTS:
P2P_TCP_LISTEN_ADDR: "0.0.0.0:9000"
P2P_UDP_LISTEN_ADDR: "0.0.0.0:9001"
P2P_TCP_ANNOUNCE_ADDR: ":9000"
Expand All @@ -60,11 +60,11 @@ services:
OTEL_EXPORTER_OTLP_METRICS_ENDPOINT: ${OTEL_EXPORTER_OTLP_METRICS_ENDPOINT:-http://otel-collector:4318/v1/metrics}
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT: ${OTEL_EXPORTER_OTLP_TRACES_ENDPOINT:-http://otel-collector:4318/v1/traces}
secrets:
- ethereum-host
- ethereum-hosts
- p2p-boot-node
entrypoint: |
/bin/sh -c '
export ETHEREUM_HOST=$$(cat /var/run/secrets/ethereum-host)
export ETHEREUM_HOSTS=$$(cat /var/run/secrets/ethereum-hosts)
export BOOTSTRAP_NODES=$$(cat /var/run/secrets/p2p-boot-node)

test -z "$$PEER_ID_PRIVATE_KEY" -a ! -f /var/lib/aztec/p2p-private-key && node /usr/src/yarn-project/cli/dest/bin/index.js generate-p2p-private-key | head -1 | cut -d" " -f 3 | tee /var/lib/aztec/p2p-private-key || echo "Re-using existing P2P private key"
Expand Down Expand Up @@ -105,7 +105,7 @@ services:
PXE_URL: http://pxe:8080
NODE_NO_WARNINGS: 1
SECRET_KEY:
ETHEREUM_HOST:
ETHEREUM_HOSTS:
profiles:
- cli

Expand All @@ -121,7 +121,7 @@ services:
secrets:
aztec-node-url:
environment: AZTEC_NODE_URL
ethereum-host:
environment: ETHEREUM_HOST
ethereum-hosts:
environment: ETHEREUM_HOSTS
p2p-boot-node:
environment: BOOTSTRAP_NODES
Original file line number Diff line number Diff line change
Expand Up @@ -285,7 +285,7 @@ aztec deploy-l1-contracts [options]
```

Required options:
- `-u, --rpc-url <string>`: URL of the Ethereum host.
- `-u, --rpc-urls <string>`: List of URLs of Ethereum nodes (comma separated).
- `-pk, --private-key <string>`: The private key to use for deployment.

### deploy-l1-verifier
Expand All @@ -296,7 +296,7 @@ aztec deploy-l1-verifier [options]
```

Required options:
- `--eth-rpc-url <string>`: URL of the Ethereum host.
- `--eth-rpc-urls <string>`: List of URLs of Ethereum nodes (comma separated).
- `-pk, --private-key <string>`: The private key to use for deployment.
- `--verifier <verifier>`: Either 'mock' or 'real'.

Expand All @@ -308,7 +308,7 @@ aztec bridge-fee-juice <amount> <recipient> [options]
```

Required option:
- `--l1-rpc-url <string>`: URL of the Ethereum host.
- `--l1-rpc-urls <string>`: List of URLs of Ethereum nodes (comma separated).

### get-l1-balance
Gets the balance of ETH or an ERC20 token on L1 for a given Ethereum address.
Expand All @@ -318,7 +318,7 @@ aztec get-l1-balance <who> [options]
```

Required option:
- `--l1-rpc-url <string>`: URL of the Ethereum host.
- `--l1-rpc-urls <string>`: List of URLs of Ethereum nodes (comma separated).

## Utility Commands

Expand Down Expand Up @@ -370,6 +370,6 @@ aztec sequencers <command> [who] [options]
Commands: list, add, remove, who-next

Required option:
- `--l1-rpc-url <string>`: URL of the Ethereum host.
- `--l1-rpc-urls <string>`: List of URLs of Ethereum nodes (comma separated).

Note: Most commands accept a `--rpc-url` option to specify the Aztec node URL, and many accept fee-related options for gas limit and price configuration.
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ To change them, you can open `~/.aztec/docker-compose.sandbox.yml` and edit them
```sh
LOG_LEVEL=debug # Options are 'fatal', 'error', 'warn', 'info', 'verbose', 'debug', 'trace'
HOST_WORKDIR='${PWD}' # The location to store log outputs. Will use ~/.aztec where the docker-compose.yml file is stored by default.
ETHEREUM_HOST=http://ethereum:8545 # The Ethereum JSON RPC URL. We use an anvil instance that runs in parallel to the sandbox on docker by default.
ETHEREUM_HOSTS=http://ethereum:8545 # List of Ethereum JSON RPC URLs. We use an anvil instance that runs in parallel to the sandbox on docker by default.
L1_CHAIN_ID=31337 # The Chain ID that the Ethereum host is using.
TEST_ACCOUNTS='true' # Option to deploy 3 test account when sandbox starts. (default: true)
MODE='sandbox' # Option to start the sandbox or a standalone part of the system. (default: sandbox)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ import { TokenContract } from "@aztec/noir-contracts.js/Token";

const {
PXE_URL = "http://localhost:8080",
ETHEREUM_HOST = "http://localhost:8545",
ETHEREUM_HOSTS = "http://localhost:8545",
} = process.env;

describe("token contract", () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ To run a prover agent, either run `aztec start --prover`, or add the `--prover`

The Aztec client is configured via environment variables, the following ones being relevant for the prover node:

- **ETHEREUM_HOST**: URL to an Ethereum node.
- **ETHEREUM_HOSTS**: List of URLs of Ethereum nodes (comma separated).
- **L1_CHAIN_ID**: Chain ID for the L1 Ethereum chain.
- **DATA_DIRECTORY**: Local folder where archive and world state data is stored.
- **AZTEC_PORT**: Port where the JSON-RPC APIs will be served.
Expand All @@ -93,4 +93,3 @@ Both the prover node and agent also rely on the following:
- **LOG_LEVEL**: One of `debug`, `verbose`, `info`, `warn`, or `error`.
- **LOG_JSON**: Set to `true` to output logs in JSON format (unreleased).
- **OTEL_EXPORTER_OTLP_METRICS_ENDPOINT**: Optional URL for pushing telemetry data to a remote OpenTelemetry data collector.

Loading
Loading