mirror of
https://github.com/vacp2p/linea-monorepo.git
synced 2026-01-09 15:38:06 -05:00
feat: remove l2-node in e2e test and make it to run in local stack op… (#1001)
* feat: remove l2-node in e2e test and make it to run in local stack optionally * fix: l2 spec transaction data size limit e2e test * feat: revise blockscout configs * feat: revised comment in Makefile * feat: update transaction-exclusion-api and postman image * feat: remove expected-traces-api-version-v2 from coordinator local overrides toml * feat: remove shomei-frontend from ci and add disabled option in Type2StateProofProviderConfig * feat: add endpoint for type2-state-proof-provider * feat: revise coordinator local-dev override configs * feat: remove white space
This commit is contained in:
24
Makefile
24
Makefile
@@ -23,6 +23,7 @@ start-env: CLEAN_PREVIOUS_ENV:=true
|
||||
start-env: COMPOSE_FILE:=docker/compose-tracing-v2.yml
|
||||
start-env: L1_CONTRACT_VERSION:=6
|
||||
start-env: SKIP_CONTRACTS_DEPLOYMENT:=false
|
||||
start-env: SKIP_L1_L2_NODE_HEALTH_CHECK:=false
|
||||
start-env: LINEA_PROTOCOL_CONTRACTS_ONLY:=false
|
||||
start-env:
|
||||
@if [ "$(CLEAN_PREVIOUS_ENV)" = "true" ]; then \
|
||||
@@ -32,8 +33,9 @@ start-env:
|
||||
fi; \
|
||||
mkdir -p tmp/local; \
|
||||
COMPOSE_PROFILES=$(COMPOSE_PROFILES) docker compose -f $(COMPOSE_FILE) up -d; \
|
||||
while [ "$$(docker compose -f $(COMPOSE_FILE) ps -q l1-el-node | xargs docker inspect -f '{{.State.Health.Status}}')" != "healthy" ] || \
|
||||
[ "$$(docker compose -f $(COMPOSE_FILE) ps -q sequencer | xargs docker inspect -f '{{.State.Health.Status}}')" != "healthy" ]; do \
|
||||
while [ "$(SKIP_L1_L2_NODE_HEALTH_CHECK)" = "false" ] && \
|
||||
{ [ "$$(docker compose -f $(COMPOSE_FILE) ps -q l1-el-node | xargs docker inspect -f '{{.State.Health.Status}}')" != "healthy" ] || \
|
||||
[ "$$(docker compose -f $(COMPOSE_FILE) ps -q sequencer | xargs docker inspect -f '{{.State.Health.Status}}')" != "healthy" ]; }; do \
|
||||
sleep 2; \
|
||||
echo "Checking health status of l1-el-node and sequencer..."; \
|
||||
done
|
||||
@@ -44,17 +46,17 @@ start-env:
|
||||
fi
|
||||
|
||||
start-l1:
|
||||
command start-env COMPOSE_PROFILES:=l1 COMPOSE_FILE:=docker/compose-tracing-v2.yml SKIP_CONTRACTS_DEPLOYMENT:=true
|
||||
make start-env COMPOSE_PROFILES:=l1 COMPOSE_FILE:=docker/compose-tracing-v2.yml SKIP_CONTRACTS_DEPLOYMENT:=true SKIP_L1_L2_NODE_HEALTH_CHECK:=true
|
||||
|
||||
start-l2:
|
||||
command start-env COMPOSE_PROFILES:=l2 COMPOSE_FILE:=docker/compose-tracing-v2.yml SKIP_CONTRACTS_DEPLOYMENT:=true
|
||||
start-l1-l2:
|
||||
make start-env COMPOSE_PROFILES:=l1,l2 COMPOSE_FILE:=docker/compose-tracing-v2.yml SKIP_CONTRACTS_DEPLOYMENT:=true SKIP_L1_L2_NODE_HEALTH_CHECK:=true
|
||||
|
||||
start-l2-blockchain-only:
|
||||
command start-env COMPOSE_PROFILES:=l2-bc COMPOSE_FILE:=docker/compose-tracing-v2.yml SKIP_CONTRACTS_DEPLOYMENT:=true
|
||||
make start-env COMPOSE_PROFILES:=l2-bc COMPOSE_FILE:=docker/compose-tracing-v2.yml SKIP_CONTRACTS_DEPLOYMENT:=true SKIP_L1_L2_NODE_HEALTH_CHECK:=true
|
||||
|
||||
fresh-start-l2-blockchain-only:
|
||||
make clean-environment
|
||||
make start-l2-blockchain-only
|
||||
make clean-environment
|
||||
make start-l2-blockchain-only
|
||||
|
||||
##
|
||||
## Creating new targets to avoid conflicts with existing targets
|
||||
@@ -63,8 +65,12 @@ fresh-start-l2-blockchain-only:
|
||||
start-env-with-tracing-v2:
|
||||
make start-env COMPOSE_FILE=docker/compose-tracing-v2.yml LINEA_PROTOCOL_CONTRACTS_ONLY=true
|
||||
|
||||
## Enable L2 geth node
|
||||
start-env-with-tracing-v2-extra:
|
||||
make start-env COMPOSE_PROFILES:=l1,l2 COMPOSE_FILE:=docker/compose-tracing-v2-extra-extension.yml LINEA_PROTOCOL_CONTRACTS_ONLY=true DISABLE_JSON_RPC_PRICING_PROPAGATION=false DISABLE_TYPE2_STATE_PROOF_PROVIDER=false
|
||||
|
||||
start-env-with-tracing-v2-ci:
|
||||
make start-env COMPOSE_FILE=docker/compose-tracing-v2-ci-extension.yml DISABLE_JSON_RPC_PRICING_PROPAGATION=false
|
||||
make start-env COMPOSE_FILE=docker/compose-tracing-v2-ci-extension.yml
|
||||
|
||||
start-env-with-staterecovery: COMPOSE_PROFILES:=l1,l2,staterecovery
|
||||
start-env-with-staterecovery: L1_CONTRACT_VERSION:=6
|
||||
|
||||
@@ -85,7 +85,7 @@ allprojects {
|
||||
systemProperty("L1_RPC_URL", "http://localhost:8445")
|
||||
systemProperty("L2_RPC_URL", "http://localhost:8545")
|
||||
systemProperty("L1_GENESIS", "docker/config/l1-node/el/genesis.json")
|
||||
systemProperty("L2_GENESIS", "docker/config/linea-local-dev-genesis-PoA-geth.json")
|
||||
systemProperty("L2_GENESIS", "docker/config/linea-local-dev-genesis-PoA-besu.json")
|
||||
|
||||
systemProperties["junit.jupiter.execution.timeout.default"] = "5 m" // 5 minutes
|
||||
systemProperties["junit.jupiter.execution.parallel.enabled"] = true
|
||||
|
||||
@@ -18,8 +18,8 @@ BLOCKSCOUT_PROTOCOL=http #use https for prod
|
||||
# SECRET_KEY_BASE=
|
||||
# CHECK_ORIGIN=
|
||||
PORT=4000
|
||||
COIN=GOERLI-ETH
|
||||
COIN_NAME="Test Eth"
|
||||
COIN="ethereum"
|
||||
COIN_NAME="ETH"
|
||||
# METADATA_CONTRACT=
|
||||
# VALIDATORS_CONTRACT=
|
||||
# KEYS_MANAGER_CONTRACT=
|
||||
@@ -88,7 +88,7 @@ TXS_STATS_DAYS_TO_COMPILE_AT_INIT=10
|
||||
COIN_BALANCE_HISTORY_DAYS=90
|
||||
APPS_MENU=false
|
||||
# GAS_PRICE=
|
||||
CHAIN_ID=19940131
|
||||
CHAIN_ID=31648428
|
||||
MAX_SIZE_UNLESS_HIDE_ARRAY=50
|
||||
HIDE_BLOCK_MINER=false
|
||||
DISPLAY_TOKEN_ICONS=false
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# DOC of ENV https://docs.blockscout.com/for-developers/information-and-settings/env-variables
|
||||
# DOCKER_TAG=
|
||||
ETHEREUM_JSONRPC_VARIANT=geth
|
||||
ETHEREUM_JSONRPC_VARIANT=besu
|
||||
NETWORK=Ethereum
|
||||
SUBNETWORK="Local Linea"
|
||||
LOGO=/images/blockscout_logo.svg
|
||||
@@ -14,8 +14,8 @@ API_PATH=/
|
||||
SOCKET_ROOT=/
|
||||
BLOCKSCOUT_PROTOCOL=http #use https for prod
|
||||
PORT=4000
|
||||
COIN=GOERLI-ETH
|
||||
COIN_NAME="Goerli Eth"
|
||||
COIN="ethereum"
|
||||
COIN_NAME="ETH"
|
||||
CHAIN_SPEC_PATH=/app/genesis.json
|
||||
POOL_SIZE=20
|
||||
POOL_SIZE_API=5
|
||||
@@ -62,7 +62,7 @@ TXS_HISTORIAN_INIT_LAG=0
|
||||
TXS_STATS_DAYS_TO_COMPILE_AT_INIT=10
|
||||
COIN_BALANCE_HISTORY_DAYS=90
|
||||
APPS_MENU=false
|
||||
CHAIN_ID=59140
|
||||
CHAIN_ID=1337
|
||||
MAX_SIZE_UNLESS_HIDE_ARRAY=50
|
||||
HIDE_BLOCK_MINER=false
|
||||
DISPLAY_TOKEN_ICONS=false
|
||||
|
||||
@@ -9,11 +9,6 @@ fs-responses-directory = "tmp/local/prover/v3/compression/responses"
|
||||
fs-requests-directory = "tmp/local/prover/v3/aggregation/requests"
|
||||
fs-responses-directory = "tmp/local/prover/v3/aggregation/responses"
|
||||
|
||||
[dynamic-gas-price-service]
|
||||
geth-gas-price-update-recipients=[
|
||||
"http://127.0.0.1:8845"
|
||||
]
|
||||
|
||||
[l2]
|
||||
rpc-endpoint="http://127.0.0.1:8745"
|
||||
blocks-to-finalization=0
|
||||
@@ -30,4 +25,4 @@ endpoints=[]
|
||||
[l2-network-gas-pricing.json-rpc-pricing-propagation]
|
||||
disabled=true
|
||||
geth-gas-price-update-recipients=[]
|
||||
besu-gas-price-update-recipients=["http://127.0.0.1:9045"]
|
||||
besu-gas-price-update-recipients=[]
|
||||
|
||||
@@ -12,19 +12,18 @@ endpoint="http://127.0.0.1:9000"
|
||||
|
||||
[prover]
|
||||
[prover.execution]
|
||||
fs-requests-directory = "tmp/local/prover/v3/execution/requests"
|
||||
fs-responses-directory = "tmp/local/prover/v3/execution/responses"
|
||||
fs-requests-directory="tmp/local/prover/v3/execution/requests"
|
||||
fs-responses-directory="tmp/local/prover/v3/execution/responses"
|
||||
[prover.blob-compression]
|
||||
fs-requests-directory = "tmp/local/prover/v3/compression/requests"
|
||||
fs-responses-directory = "tmp/local/prover/v3/compression/responses"
|
||||
fs-requests-directory="tmp/local/prover/v3/compression/requests"
|
||||
fs-responses-directory="tmp/local/prover/v3/compression/responses"
|
||||
[prover.proof-aggregation]
|
||||
fs-requests-directory = "tmp/local/prover/v2/aggregation/requests"
|
||||
fs-responses-directory = "tmp/local/prover/v2/aggregation/responses"
|
||||
fs-requests-directory="tmp/local/prover/v3/aggregation/requests"
|
||||
fs-responses-directory="tmp/local/prover/v3/aggregation/responses"
|
||||
|
||||
# Config of Traces API Facade endpoint
|
||||
[traces]
|
||||
blob-compressor-version="V1_2"
|
||||
expected-traces-api-version-v2="beta-v2.1-rc14"
|
||||
[traces.counters-v2]
|
||||
endpoints=["http://127.0.0.1:8745/"]
|
||||
[traces.conflation-v2]
|
||||
@@ -33,12 +32,17 @@ endpoints=["http://127.0.0.1:8745/"]
|
||||
[state-manager]
|
||||
endpoints=["http://127.0.0.1:8998/"]
|
||||
|
||||
[type2-state-proof-provider]
|
||||
disabled=true
|
||||
endpoints=["http://127.0.0.1:8889/"]
|
||||
|
||||
[l2-network-gas-pricing.extra-data-pricing-propagation]
|
||||
extra-data-update-recipient = "http://127.0.0.1:8545/"
|
||||
extra-data-update-recipient="http://127.0.0.1:8545/"
|
||||
|
||||
[l2-network-gas-pricing.json-rpc-pricing-propagation]
|
||||
geth-gas-price-update-recipients = ["http://127.0.0.1:8845"]
|
||||
besu-gas-price-update-recipients = []
|
||||
disabled=true
|
||||
geth-gas-price-update-recipients=["http://127.0.0.1:8845/"]
|
||||
besu-gas-price-update-recipients=[]
|
||||
|
||||
[l1]
|
||||
rpc-endpoint="http://127.0.0.1:8445"
|
||||
@@ -52,7 +56,7 @@ finalized-block-tag="finalized"
|
||||
earliestBlock=0
|
||||
|
||||
[l2]
|
||||
rpc-endpoint="http://127.0.0.1:8845"
|
||||
rpc-endpoint="http://127.0.0.1:9045"
|
||||
blocks-to-finalization=0
|
||||
|
||||
[database]
|
||||
@@ -60,12 +64,3 @@ host="localhost"
|
||||
|
||||
[api]
|
||||
observability_port=9546
|
||||
|
||||
[type2-state-proof-provider]
|
||||
endpoints = ["http://127.0.0.1:8889/"]
|
||||
|
||||
[conflation]
|
||||
#switch-block-number=20
|
||||
|
||||
[type2-state-proof-provider]
|
||||
endpoints=[]
|
||||
|
||||
@@ -1077,7 +1077,10 @@ class L1DependentApp(
|
||||
l2Web3jClient: Web3j,
|
||||
vertx: Vertx
|
||||
): LongRunningService {
|
||||
if (type2StateProofProviderConfig == null || type2StateProofProviderConfig.endpoints.isEmpty()) {
|
||||
if (type2StateProofProviderConfig == null ||
|
||||
type2StateProofProviderConfig.disabled ||
|
||||
type2StateProofProviderConfig.endpoints.isEmpty()
|
||||
) {
|
||||
return DisabledLongRunningService
|
||||
}
|
||||
|
||||
|
||||
@@ -479,11 +479,12 @@ data class SmartContractErrorCodesConfig(val smartContractErrors: SmartContractE
|
||||
data class GasPriceCapTimeOfDayMultipliersConfig(val gasPriceCapTimeOfDayMultipliers: TimeOfDayMultipliers)
|
||||
|
||||
data class Type2StateProofProviderConfig(
|
||||
override var disabled: Boolean = false,
|
||||
val endpoints: List<URL>,
|
||||
val l1QueryBlockTag: BlockParameter.Tag = BlockParameter.Tag.LATEST,
|
||||
val l1PollingInterval: Duration = Duration.ofSeconds(12),
|
||||
override val requestRetry: RequestRetryConfigTomlFriendly
|
||||
) : RequestRetryConfigurable
|
||||
) : FeatureToggleable, RequestRetryConfigurable
|
||||
|
||||
data class TracesLimitsV2ConfigFile(val tracesLimits: Map<TracingModuleV2, UInt>)
|
||||
|
||||
|
||||
@@ -229,7 +229,7 @@ object L1AccountManager : AccountManager by WhaleBasedAccountManager(
|
||||
|
||||
object L2AccountManager : AccountManager by WhaleBasedAccountManager(
|
||||
web3jClient = Web3jClientManager.l2Client,
|
||||
genesisFile = getPathTo(System.getProperty("L2_GENESIS", "docker/config/linea-local-dev-genesis-PoA-geth.json")),
|
||||
genesisFile = getPathTo(System.getProperty("L2_GENESIS", "docker/config/linea-local-dev-genesis-PoA-besu.json")),
|
||||
log = LogManager.getLogger(L2AccountManager::class.java)
|
||||
)
|
||||
|
||||
|
||||
@@ -36,22 +36,22 @@ services:
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
l2-node:
|
||||
l2-node-besu:
|
||||
condition: service_started
|
||||
# - smart-contract-verifier not supported for v0.1
|
||||
command: bash -c "bin/blockscout eval \"Elixir.Explorer.ReleaseTasks.create_and_migrate()\" && bin/blockscout start"
|
||||
env_file:
|
||||
- ../config/blockscout/l2-blockscout.env
|
||||
environment:
|
||||
ETHEREUM_JSONRPC_HTTP_URL: http://l2-node:8545/
|
||||
ETHEREUM_JSONRPC_TRACE_URL: http://l2-node:8545/
|
||||
ETHEREUM_JSONRPC_WS_URL: ws://l2-node:8546/
|
||||
ETHEREUM_JSONRPC_HTTP_URL: http://l2-node-besu:8545/
|
||||
ETHEREUM_JSONRPC_TRACE_URL: http://l2-node-besu:8545/
|
||||
ETHEREUM_JSONRPC_WS_URL: ws://l2-node-besu:8546/
|
||||
DATABASE_URL: postgresql://${POSTGRES_USER:-postgres}:${POSTGRES_PASSWORD:-postgres}@postgres:5432/l2_blockscout_db?ssl=false
|
||||
ECTO_USE_SSL: 'false'
|
||||
ports:
|
||||
- "4000:4000"
|
||||
volumes:
|
||||
- ./config/linea-local-dev-genesis-PoA-geth.json:/app/genesis.json:ro
|
||||
- ./config/linea-local-dev-genesis-PoA-besu.json:/app/genesis.json:ro
|
||||
networks:
|
||||
- linea
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ services:
|
||||
hostname: l2-node
|
||||
image: consensys/linea-geth:${ZKGETH_TAG:-0588665}
|
||||
platform: linux/amd64
|
||||
profiles: [ "l2", "l2-bc", "debug", "external-to-monorepo" ]
|
||||
profiles: [ "l2", "debug" ]
|
||||
depends_on:
|
||||
sequencer:
|
||||
condition: service_healthy
|
||||
@@ -181,7 +181,7 @@ services:
|
||||
postman:
|
||||
container_name: postman
|
||||
hostname: postman
|
||||
image: consensys/linea-postman:${POSTMAN_TAG:-c332ec7}
|
||||
image: consensys/linea-postman:${POSTMAN_TAG:-8a0bcc8}
|
||||
profiles: [ "l2", "debug" ]
|
||||
platform: linux/amd64
|
||||
restart: on-failure
|
||||
@@ -221,7 +221,7 @@ services:
|
||||
restart: on-failure
|
||||
environment:
|
||||
config__override__l2-network-gas-pricing__json-rpc-pricing-propagation__disabled: ${DISABLE_JSON_RPC_PRICING_PROPAGATION:-true}
|
||||
config__override__type2-state-proof-provider__endpoints: # leave empty to disable
|
||||
config__override__type2-state-proof-provider__disabled: ${DISABLE_TYPE2_STATE_PROOF_PROVIDER:-true}
|
||||
command: [ 'java', '-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005','-Dvertx.configurationFile=/var/lib/coordinator/vertx-options.json', '-Dlog4j2.configurationFile=/var/lib/coordinator/log4j2-dev.xml', '-jar', 'libs/coordinator.jar', '--traces-limits-v2', 'config/traces-limits-v2.toml', '--smart-contract-errors', 'config/smart-contract-errors.toml', '--gas-price-cap-time-of-day-multipliers', 'config/gas-price-cap-time-of-day-multipliers.toml', 'config/coordinator-docker.config.toml', 'config/coordinator-docker-traces-v2-override.config.toml' ]
|
||||
volumes:
|
||||
- ../config/coordinator/coordinator-docker.config.toml:/opt/consensys/linea/coordinator/config/coordinator-docker.config.toml:ro
|
||||
@@ -369,7 +369,7 @@ services:
|
||||
image: consensys/linea-shomei:2.3.0
|
||||
hostname: shomei-frontend
|
||||
container_name: shomei-frontend
|
||||
profiles: [ "l2", "l2-bc", "external-to-monorepo" ]
|
||||
profiles: [ "l2", "l2-bc" ]
|
||||
depends_on:
|
||||
zkbesu-shomei:
|
||||
condition: service_started
|
||||
@@ -410,7 +410,7 @@ services:
|
||||
transaction-exclusion-api:
|
||||
hostname: transaction-exclusion-api
|
||||
container_name: transaction-exclusion-api
|
||||
image: consensys/linea-transaction-exclusion-api:${TRANSACTION_EXCLUSION_API_TAG:-c332ec7}
|
||||
image: consensys/linea-transaction-exclusion-api:${TRANSACTION_EXCLUSION_API_TAG:-8a0bcc8}
|
||||
profiles: [ "l2", "debug" ]
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
|
||||
@@ -2,21 +2,11 @@ include:
|
||||
- compose-tracing-v2.yml
|
||||
|
||||
services:
|
||||
l2-node:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: l2-node
|
||||
|
||||
l2-node-besu:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: l2-node-besu
|
||||
|
||||
shomei-frontend:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: shomei-frontend
|
||||
|
||||
postman:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
|
||||
29
docker/compose-tracing-v2-extra-extension.yml
Normal file
29
docker/compose-tracing-v2-extra-extension.yml
Normal file
@@ -0,0 +1,29 @@
|
||||
include:
|
||||
- compose-tracing-v2.yml
|
||||
|
||||
services:
|
||||
shomei-frontend:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: shomei-frontend
|
||||
|
||||
l2-node:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: l2-node
|
||||
|
||||
l2-node-besu:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: l2-node-besu
|
||||
|
||||
postman:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: postman
|
||||
|
||||
transaction-exclusion-api:
|
||||
extends:
|
||||
file: compose-spec-l2-services.yml
|
||||
service: transaction-exclusion-api
|
||||
|
||||
@@ -46,6 +46,7 @@ plugin-linea-tx-pool-profitability-check-api-enabled=true
|
||||
plugin-linea-tx-pool-simulation-check-api-enabled=true
|
||||
plugin-linea-tx-pool-simulation-check-p2p-enabled=true
|
||||
plugin-linea-extra-data-pricing-enabled=true
|
||||
plugin-linea-max-tx-calldata-size=30000 # lower this to 30000 (default 60000) for the transaction data limit e2e test
|
||||
plugin-linea-tx-pool-min-margin="0.8"
|
||||
plugin-linea-min-margin="1.0"
|
||||
plugin-linea-fixed-gas-cost-wei=30000000
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"@_WARNING": "THIS FILE IS FOR LOCAL DEVELOPMENT ONLY! DO NOT REUSE ELSEWHERE",
|
||||
"@WARNING": "THIS FILE IS FOR LOCAL DEVELOPMENT ONLY! DO NOT REUSE ELSEWHERE",
|
||||
"config": {
|
||||
"chainId": 1337,
|
||||
"homesteadBlock": 0,
|
||||
@@ -26,150 +26,150 @@
|
||||
"nonce": "0x0",
|
||||
"timestamp": "0x645580D1",
|
||||
"baseFeePerGas": "0x7",
|
||||
"@_WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"alloc": {
|
||||
"1b9abeec3215d8ade8a33607f2cf0f4f60e5f0d0": {
|
||||
"balance": "90000000000000000000000",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x1dd171cec7e2995408b5513004e8207fe88d6820aeff0d82463b3e41df251aae",
|
||||
"@comment": "Contract deployer account"
|
||||
"privateKey": "0x1dd171cec7e2995408b5513004e8207fe88d6820aeff0d82463b3e41df251aae",
|
||||
"comment": "Contract deployer account",
|
||||
"balance": "90000000000000000000000"
|
||||
},
|
||||
"fe3b557e8fb62b89f4916b721be55ceb828dbd73": {
|
||||
"balance": "90000000000000000000001",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "8f2a55949038a9610f50fb23b5883af3b4ecb3c3bb792cbcefbd1542c692be63",
|
||||
"@comment": "Used for OPCODE testing, do not use elsewhere"
|
||||
"privateKey": "8f2a55949038a9610f50fb23b5883af3b4ecb3c3bb792cbcefbd1542c692be63",
|
||||
"comment": "Used for OPCODE testing, do not use elsewhere",
|
||||
"balance": "90000000000000000000001"
|
||||
},
|
||||
"627306090abaB3A6e1400e9345bC60c78a8BEf57": {
|
||||
"balance": "90000000000000000000002",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "c87509a1c067bbde78beb793e6fa76530b6382a4c0241e5e4a9ec0a0f44dc0d3",
|
||||
"@comment": "account 2, can be used as end user"
|
||||
"privateKey": "c87509a1c067bbde78beb793e6fa76530b6382a4c0241e5e4a9ec0a0f44dc0d3",
|
||||
"comment": "account 2, can be used as end user",
|
||||
"balance": "90000000000000000000002"
|
||||
},
|
||||
"f17f52151EbEF6C7334FAD080c5704D77216b732": {
|
||||
"balance": "90000000000000000000003",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "ae6ae8e5ccbfb04590405997ee2d52d2b330726137b875053c36d94e974d162f",
|
||||
"@comment": "account 3, can be used as end user"
|
||||
"privateKey": "ae6ae8e5ccbfb04590405997ee2d52d2b330726137b875053c36d94e974d162f",
|
||||
"comment": "L2 Security Council",
|
||||
"balance": "90000000000000000000003"
|
||||
},
|
||||
"6d26dcc30a1693043aefa35ed9171c16da53f275": {
|
||||
"balance": "90000000000000000000004",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x47629fbb4a7ad7772b4d1cc92f26b325577b70f1ed5940e1859b92d690f8a2bf",
|
||||
"@comment": "account 4, can be used as end user"
|
||||
"privateKey": "0x47629fbb4a7ad7772b4d1cc92f26b325577b70f1ed5940e1859b92d690f8a2bf",
|
||||
"comment": "account 4, can be used as end user",
|
||||
"balance": "90000000000000000000004"
|
||||
},
|
||||
"e00cad48944330a60bbaedfbf2e0ac97e9762a1e": {
|
||||
"balance": "90000000000000000000005",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x4f78823f38639b9ef15392eb8024ace1d7b991ea820b0dd36a15d14d1a6785",
|
||||
"@comment": "account 5, can be used as end user"
|
||||
"privateKey": "0x004f78823f38639b9ef15392eb8024ace1d7b991ea820b0dd36a15d14d1a6785",
|
||||
"comment": "account 5, can be used as end user",
|
||||
"balance": "90000000000000000000005"
|
||||
},
|
||||
"2257ae433e214df824eb2ade79d2b305ca61a4f4": {
|
||||
"balance": "90000000000000000000006",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x327456c797d6300e11051c0c19b9dbe480fe57cdfcb8033d313e80c7c2e10369",
|
||||
"@comment": "account 6, can be used as end user"
|
||||
"privateKey": "0x327456c797d6300e11051c0c19b9dbe480fe57cdfcb8033d313e80c7c2e10369",
|
||||
"comment": "account 6, can be used as end user",
|
||||
"balance": "90000000000000000000006"
|
||||
},
|
||||
"0d4278da2f55cf21a014b7fee0a2cb799ce17ede": {
|
||||
"balance": "90000000000000000000007",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x9ffda2814ee771e0af8018aeea65f9eabd47ea9f2a5b628a4571adeafea692d1",
|
||||
"@comment": "account 7, can be used as end user"
|
||||
"privateKey": "0x9ffda2814ee771e0af8018aeea65f9eabd47ea9f2a5b628a4571adeafea692d1",
|
||||
"comment": "account 7, can be used as end user",
|
||||
"balance": "90000000000000000000007"
|
||||
},
|
||||
"994f4c82683f666d13d03a131078f1b94777790c": {
|
||||
"balance": "90000000000000000000008",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0xcd3a170ec22b2f3e4aee76356df0c34712db8c24f8d836bce1e4a79299c87053",
|
||||
"@comment": "account 8, can be used as end user"
|
||||
"privateKey": "0xcd3a170ec22b2f3e4aee76356df0c34712db8c24f8d836bce1e4a79299c87053",
|
||||
"comment": "account 8, can be used as end user",
|
||||
"balance": "90000000000000000000008"
|
||||
},
|
||||
"9d14ef14d4c90436a062efd7dc8354a7ded9712e": {
|
||||
"balance": "90000000000000000000009",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x4a954bb197f7a27a5427f29180fbfd0b32ee0344b4f85c8184ca593cf152866a",
|
||||
"@comment": "account 9, can be used as end user"
|
||||
"privateKey": "0x4a954bb197f7a27a5427f29180fbfd0b32ee0344b4f85c8184ca593cf152866a",
|
||||
"comment": "account 9, can be used as end user",
|
||||
"balance": "90000000000000000000009"
|
||||
},
|
||||
"29a6b94168f04956c6fd1a2c3fdd1f6f7c468148": {
|
||||
"balance": "900000000000000000000010",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x745dda33b5d813bda7f52d646a56498c1539290f59d064b13161f84a1f0a7b4b",
|
||||
"@comment": "account 10, can be used as end user"
|
||||
"privateKey": "0x745dda33b5d813bda7f52d646a56498c1539290f59d064b13161f84a1f0a7b4b",
|
||||
"comment": "account 10, can be used as end user",
|
||||
"balance": "900000000000000000000010"
|
||||
},
|
||||
"dca74800d7ce103a5e6a3f6028ab0963c46e7422": {
|
||||
"balance": "900000000000000000000011",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x75b9700016469b0d7f12c0d6a0225cd9a59818a4bd1437cf9583ca0ffa1d111a",
|
||||
"@comment": "account 11, can be used as end user"
|
||||
"privateKey": "0x75b9700016469b0d7f12c0d6a0225cd9a59818a4bd1437cf9583ca0ffa1d111a",
|
||||
"comment": "account 11, can be used as end user",
|
||||
"balance": "900000000000000000000011"
|
||||
},
|
||||
"9ad149426800dc9e65754a5ceab6bc1f41cc92a7": {
|
||||
"balance": "900000000000000000000012",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0xe08f03f96ff2f4e107a50da222e281db39cd528c8c35e25a17f0a71a4d279da5",
|
||||
"@comment": "account 12, can be used as end user"
|
||||
"privateKey": "0xe08f03f96ff2f4e107a50da222e281db39cd528c8c35e25a17f0a71a4d279da5",
|
||||
"comment": "account 12, can be used as end user",
|
||||
"balance": "900000000000000000000012"
|
||||
},
|
||||
"b3c150df38e91149e260c3233f3121810d4d2976": {
|
||||
"balance": "900000000000000000000013",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x7303d2fadd895018075cbe76d8a700bc65b4a1b8641b97d660533f0e029e3954",
|
||||
"@comment": "account 13, can be used as end user"
|
||||
"privateKey": "0x7303d2fadd895018075cbe76d8a700bc65b4a1b8641b97d660533f0e029e3954",
|
||||
"comment": "account 13, can be used as end user",
|
||||
"balance": "900000000000000000000013"
|
||||
},
|
||||
"42232eab8cfd6b489efe79d3bdcc12f07a9fbac6": {
|
||||
"balance": "900000000000000000000014",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0xc5453712de35e7dc2c599b5f86df5d4f0de442d86a2865cfe557acd6d131aa6f",
|
||||
"@comment": "account 14, can be used as end user"
|
||||
"privateKey": "0xc5453712de35e7dc2c599b5f86df5d4f0de442d86a2865cfe557acd6d131aa6f",
|
||||
"comment": "account 14, can be used as end user",
|
||||
"balance": "900000000000000000000014"
|
||||
},
|
||||
"30b080749e44112c3e679c5e4117dd2d884ec7da": {
|
||||
"balance": "900000000000000000000015",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0xa8cc1b4bf5cd228cfe63c1b73a5515721e72b487cf8b82a285023aa0ed1ef839",
|
||||
"@comment": "account 15, can be used as end user"
|
||||
"privateKey": "0xa8cc1b4bf5cd228cfe63c1b73a5515721e72b487cf8b82a285023aa0ed1ef839",
|
||||
"comment": "account 15, can be used as end user",
|
||||
"balance": "900000000000000000000015"
|
||||
},
|
||||
"82f93ea98b24441dc3e0b2413cc1cbb02f33d7e5": {
|
||||
"balance": "900000000000000000000016",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x8c1c8a65947b79ef919261364e9044d89ffe26fb764d8cd72db0446d6cf56664",
|
||||
"@comment": "account 16, can be used as end user"
|
||||
"privateKey": "0x8c1c8a65947b79ef919261364e9044d89ffe26fb764d8cd72db0446d6cf56664",
|
||||
"comment": "account 16, can be used as end user",
|
||||
"balance": "900000000000000000000016"
|
||||
},
|
||||
"bae3c3fcd73ccf7755ec8a10664f218ad6bbc775": {
|
||||
"balance": "900000000000000000000017",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0xb35972d9380d1be620a2c61da77f68f127ef248ec55e1bc6033d20a7e13ef3fa",
|
||||
"@comment": "account 17, can be used as end user"
|
||||
"privateKey": "0xb35972d9380d1be620a2c61da77f68f127ef248ec55e1bc6033d20a7e13ef3fa",
|
||||
"comment": "account 17, can be used as end user",
|
||||
"balance": "900000000000000000000017"
|
||||
},
|
||||
"54d450f4d728da50f1271a1700b42657940324aa": {
|
||||
"balance": "900000000000000000000018",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x234d87442cf7d43841fbe280febcdfabfb646added67bc19f7e42a5483f614c4",
|
||||
"@comment": "account 18, can be used as end user"
|
||||
"privateKey": "0x234d87442cf7d43841fbe280febcdfabfb646added67bc19f7e42a5483f614c4",
|
||||
"comment": "account 18, can be used as end user",
|
||||
"balance": "900000000000000000000018"
|
||||
},
|
||||
"d42e308fc964b71e18126df469c21b0d7bcb86cc": {
|
||||
"balance": "900000000000000000000019",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x4d01ae6487860981699236a58b68f807ee5f17b12df5740b85cf4c4653be0f55",
|
||||
"@comment": "Message anchorer account"
|
||||
"privateKey": "0x4d01ae6487860981699236a58b68f807ee5f17b12df5740b85cf4c4653be0f55",
|
||||
"comment": "Message anchorer account",
|
||||
"balance": "900000000000000000000019"
|
||||
},
|
||||
"c8c92fe825d8930b9357c006e0af160dfa727a62": {
|
||||
"balance": "900000000000000000000020",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0xfcf854e0a0bc6fd7e97d7050e61a362c915cecd6767a32267b22e8b7af572e58",
|
||||
"@comment": "account 20, can be used as end user"
|
||||
"privateKey": "0xfcf854e0a0bc6fd7e97d7050e61a362c915cecd6767a32267b22e8b7af572e58",
|
||||
"comment": "L2 postman account",
|
||||
"balance": "900000000000000000000020"
|
||||
},
|
||||
"e537D669CA013d86EBeF1D64e40fC74CADC91987": {
|
||||
"balance": "900000000000000000000021",
|
||||
"0xe537D669CA013d86EBeF1D64e40fC74CADC91987": {
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"comment": "account 21, can be used as end user"
|
||||
"comment": "account 21, can be used as end user",
|
||||
"balance": "900000000000000000000021"
|
||||
},
|
||||
"8cdcc370846c9f669489227465f80e6cc4ecd050": {
|
||||
"balance": "90000000000000000000000",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0xb17202c37cce9498e6f7dcdc1abd207802d09b5eee96677ea219ac867a198b91",
|
||||
"@comment": "Account used for smart contract deployment on L1 and L2"
|
||||
"privateKey": "0xb17202c37cce9498e6f7dcdc1abd207802d09b5eee96677ea219ac867a198b91",
|
||||
"comment": "Account used for smart contract deployment on L1 and L2",
|
||||
"balance": "90000000000000000000000"
|
||||
},
|
||||
"d0584d4d37157f7105a4b41ed8ecbdfafdb2547f": {
|
||||
"balance": "90000000000000000000000",
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"@privateKey": "0x202454d1b4e72c41ebf58150030f649648d3cf5590297fb6718e27039ed9c86d",
|
||||
"@comment": "Operator account"
|
||||
"privateKey": "0x202454d1b4e72c41ebf58150030f649648d3cf5590297fb6718e27039ed9c86d",
|
||||
"comment": "Operator account",
|
||||
"balance": "90000000000000000000000"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@
|
||||
},
|
||||
"e00cad48944330a60bbaedfbf2e0ac97e9762a1e": {
|
||||
"@WARNING": "FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE",
|
||||
"privateKey": "0x4f78823f38639b9ef15392eb8024ace1d7b991ea820b0dd36a15d14d1a6785",
|
||||
"privateKey": "0x004f78823f38639b9ef15392eb8024ace1d7b991ea820b0dd36a15d14d1a6785",
|
||||
"comment": "account 5, can be used as end user",
|
||||
"balance": "90000000000000000000005"
|
||||
},
|
||||
|
||||
@@ -7,7 +7,7 @@ L1_LISTENER_INITIAL_FROM_BLOCK=0
|
||||
L1_LISTENER_BLOCK_CONFIRMATION=1
|
||||
L1_MAX_BLOCKS_TO_FETCH_LOGS=1000
|
||||
L1_MAX_GAS_FEE_ENFORCED=true
|
||||
L2_RPC_URL=http://l2-node:8545
|
||||
L2_RPC_URL=http://l2-node-besu:8545
|
||||
L2_CONTRACT_ADDRESS=0xe537D669CA013d86EBeF1D64e40fC74CADC91987
|
||||
# WARNING=FOR LOCAL DEV ONLY - DO NOT REUSE THESE KEYS ELSEWHERE
|
||||
L2_SIGNER_PRIVATE_KEY=0xfcf854e0a0bc6fd7e97d7050e61a362c915cecd6767a32267b22e8b7af572e58
|
||||
@@ -38,7 +38,7 @@ POSTGRES_USER=postgres
|
||||
POSTGRES_PASSWORD=postgres
|
||||
POSTGRES_DB=postman_db
|
||||
DB_CLEANER_ENABLED=false
|
||||
ENABLE_LINEA_ESTIMATE_GAS=false
|
||||
ENABLE_LINEA_ESTIMATE_GAS=true
|
||||
API_PORT=3000
|
||||
L1_L2_ENABLE_POSTMAN_SPONSORING=true
|
||||
L2_L1_ENABLE_POSTMAN_SPONSORING=false
|
||||
|
||||
@@ -27,7 +27,7 @@ export default async (): Promise<void> => {
|
||||
|
||||
async function configureOnceOffPrerequisities() {
|
||||
const account = config.getL1AccountManager().whaleAccount(0);
|
||||
const l2Account = config.getL2AccountManager().whaleAccount(0);
|
||||
const l2Account = config.getL2AccountManager().whaleAccount(0).connect(config.getL2SequencerProvider()!);
|
||||
const lineaRollup = config.getLineaRollupContract(account);
|
||||
|
||||
const [l1AccountNonce, l2AccountNonce] = await Promise.all([account.getNonce(), l2Account.getNonce()]);
|
||||
|
||||
@@ -4,7 +4,7 @@ import { GenesisBasedAccountManager } from "../accounts/genesis-based-account-ma
|
||||
import { Config } from "../types";
|
||||
|
||||
const L1_RPC_URL = new URL("http://localhost:8445");
|
||||
const L2_RPC_URL = new URL("http://localhost:8845");
|
||||
const L2_RPC_URL = new URL("http://localhost:9045");
|
||||
const L2_BESU_NODE_RPC_URL = new URL("http://localhost:9045");
|
||||
const SHOMEI_ENDPOINT = new URL("http://localhost:8998");
|
||||
const SHOMEI_FRONTEND_ENDPOINT = new URL("http://localhost:8889");
|
||||
@@ -43,7 +43,7 @@ const config: Config = {
|
||||
new ethers.JsonRpcProvider(L2_RPC_URL.toString()),
|
||||
path.resolve(
|
||||
process.env.LOCAL_L2_GENESIS ||
|
||||
path.resolve(__dirname, "../../../../..", "docker/config", "linea-local-dev-genesis-PoA-geth.json"),
|
||||
path.resolve(__dirname, "../../../../..", "docker/config", "linea-local-dev-genesis-PoA-besu.json"),
|
||||
),
|
||||
),
|
||||
shomeiEndpoint: SHOMEI_ENDPOINT,
|
||||
|
||||
@@ -17,7 +17,9 @@ describe("Layer 2 test suite", () => {
|
||||
const oversizedData = ethers.randomBytes(TRANSACTION_CALLDATA_LIMIT);
|
||||
logger.debug(`Generated oversized transaction data. dataLength=${oversizedData.length}`);
|
||||
|
||||
await expect(dummyContract.connect(account).setPayload(oversizedData)).rejects.toThrow("missing revert data");
|
||||
await expect(dummyContract.connect(account).setPayload(oversizedData)).rejects.toThrow(
|
||||
"Calldata of transaction is greater than the allowed max of 30000",
|
||||
);
|
||||
logger.debug("Transaction correctly reverted due to oversized data.");
|
||||
});
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ class EventBasedContractDeploymentBlockNumberProvider(
|
||||
}
|
||||
.whenException {
|
||||
log.error(
|
||||
"Failed to get deployment block number for contract={} errorMessage=",
|
||||
"Failed to get deployment block number for contract={} errorMessage={}",
|
||||
contractAddress,
|
||||
it.message
|
||||
)
|
||||
|
||||
@@ -7,7 +7,7 @@ L1_LISTENER_INTERVAL=2000
|
||||
L1_LISTENER_BLOCK_CONFIRMATION=1
|
||||
L1_MAX_BLOCKS_TO_FETCH_LOGS=1000
|
||||
L1_MAX_GAS_FEE_ENFORCED=false
|
||||
L2_RPC_URL=http://localhost:8845
|
||||
L2_RPC_URL=http://localhost:9045
|
||||
L2_CONTRACT_ADDRESS=0xe537D669CA013d86EBeF1D64e40fC74CADC91987
|
||||
# Only use the following PRIVATE KEY for testing
|
||||
L2_SIGNER_PRIVATE_KEY=0xfcf854e0a0bc6fd7e97d7050e61a362c915cecd6767a32267b22e8b7af572e58
|
||||
|
||||
Reference in New Issue
Block a user