Skip to content
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

chore: make fork12 the default fork id and bump images #260

Merged
merged 11 commits into from
Sep 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
10 changes: 0 additions & 10 deletions .github/scripts/compare-default-params.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
# The script outputs the differences between the specified parameters in each file compared to `params.yml`.

INPUT_PARSER_PATH="../../input_parser.star"
KURTOSIS_YML_PATH="../../kurtosis.yml"
PARAMS_YML_PATH="../../params.yml"

# Extracting default parameters from the different files.
Expand All @@ -15,13 +14,6 @@ if ! sed -n '/^DEFAULT_ARGS = {/,/^}/ { s/DEFAULT_ARGS = //; s/}/}/; p; }' "$INP
exit 1
fi

echo "Extracting default parameters from kurtosis.yml..."
# shellcheck disable=SC2016
if ! sed -n '/```yml/,/```/ { /```yml/d; /```/d; p;}' "$KURTOSIS_YML_PATH" | yq --yaml-output >.kurtosis.yml; then
echo "Error: Failed to extract parameters from kurtosis.yml."
exit 1
fi

echo "Extracting default parameters from params.yml..."
if ! yq --yaml-output .args "$PARAMS_YML_PATH" >.params.yml; then
echo "Error: Failed to extract parameters from params.yml."
Expand Down Expand Up @@ -68,5 +60,3 @@ compare_with_source_of_truth() {

echo
compare_with_source_of_truth .input_parser.star
echo
compare_with_source_of_truth .kurtosis.yml
2 changes: 1 addition & 1 deletion .github/tests/additional-services.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ args:
- arpeggio
- blockscout
- blutgang
- pless_zkevm_node
#- pless_zkevm_node # zkevm-node doesn't support fork12
- prometheus_grafana
- tx_spammer
2 changes: 1 addition & 1 deletion .github/tests/forks/fork11.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
args:
zkevm_contracts_image: leovct/zkevm-contracts:v7.0.0-rc.2-fork.11
zkevm_prover_image: hermeznetwork/zkevm-prover:v7.0.0-RC30-fork.11
zkevm_prover_image: hermeznetwork/zkevm-prover:v7.0.0-RC31-fork.11

zkevm_node_image: hermeznetwork/zkevm-node:v0.7.0-fork11-RC1

Expand Down
7 changes: 5 additions & 2 deletions .github/tests/forks/fork12.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
args:
zkevm_contracts_image: leovct/zkevm-contracts:v8.0.0-rc.2-fork.12
zkevm_prover_image: hermeznetwork/zkevm-prover:v8.0.0-RC5-fork.12
# This is a transitional image that includes a fix on top of version v8.0.0-rc.2-fork.12.
# https://github.com/0xPolygonHermez/zkevm-contracts/pull/323
zkevm_contracts_image: leovct/zkevm-contracts:feature-verified-number-e2ef9ca-fork.12
#zkevm_contracts_image: leovct/zkevm-contracts:v8.0.0-rc.2-fork.12
zkevm_prover_image: hermeznetwork/zkevm-prover:v8.0.0-RC10-fork.12

additional_services:
- tx_spammer
5 changes: 3 additions & 2 deletions .github/tests/forks/fork9.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
args:
zkevm_contracts_image: leovct/zkevm-contracts:v6.0.0-rc.1-fork.9
zkevm_prover_image: hermeznetwork/zkevm-prover:v6.0.3-RC20
zkevm_prover_image: hermeznetwork/zkevm-prover:v6.0.4

zkevm_node_image: hermeznetwork/zkevm-node:v0.7.0
zkevm_node_image: hermeznetwork/zkevm-node:v0.7.3-RC1
cdk_validium_node_image: 0xpolygon/cdk-validium-node:0.7.0-cdk

additional_services:
- pless_zkevm_node
- tx_spammer
21 changes: 11 additions & 10 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -127,8 +127,9 @@ jobs:
- name: Verify Blutgang RPC
run: cast bn --rpc-url $(kurtosis port print ${{ env.ENCLAVE_NAME }} blutgang-001 http)

- name: Verify permissionless zkevm-node rpc
run: cast bn --rpc-url $(kurtosis port print ${{ env.ENCLAVE_NAME }} zkevm-node-rpc-pless-001 http-rpc)
# zkevm-node doesn't work with fork12.
#- name: Verify permissionless zkevm-node rpc
# run: cast bn --rpc-url $(kurtosis port print ${{ env.ENCLAVE_NAME }} zkevm-node-rpc-pless-001 http-rpc)

- name: Verify that Prometheus collects Panoptichain metrics
run: |
Expand Down Expand Up @@ -160,7 +161,7 @@ jobs:
run: |
yq -Y --in-place '.args.sequencer_type = "erigon"' params.yml
yq -Y --in-place '.args.sequence_sender_aggregator_type = "cdk"' params.yml
yq -Y --in-place '.args.additional_services = ["pless_zkevm_node", "tx_spammer"]' params.yml
yq -Y --in-place '.args.additional_services = ["tx_spammer"]' params.yml
kurtosis run --enclave=${{ env.ENCLAVE_NAME }} --show-enclave-inspect=false --args-file=params.yml .

- name: Inspect enclave
Expand All @@ -173,7 +174,7 @@ jobs:

- name: Attach a second CDK L2 chain (cdk-erigon sequencer + cdk stack)
run: |
yq -Y --in-place '.args.additional_services = ["pless_zkevm_node", "tx_spammer"]' agglayer-attach-cdk-params.yml
yq -Y --in-place '.args.additional_services = ["tx_spammer"]' agglayer-attach-cdk-params.yml
kurtosis run --enclave=${{ env.ENCLAVE_NAME }} --show-enclave-inspect=false --args-file=agglayer-attach-cdk-params.yml .

- name: Inspect enclave
Expand Down Expand Up @@ -204,14 +205,14 @@ jobs:
working-directory: .github/scripts
run: ./monitor-verified-batches.sh --rpc-url "$(kurtosis port print ${{ env.ENCLAVE_NAME }} cdk-erigon-node-001 http-rpc)"

- name: Monitor verified batches of the first L2 chain (zkEVM Node Permissionless RPC)
working-directory: .github/scripts
run: ./monitor-verified-batches.sh --rpc-url "$(kurtosis port print ${{ env.ENCLAVE_NAME }} zkevm-node-rpc-pless-001 http-rpc)"
# - name: Monitor verified batches of the first L2 chain (zkEVM Node Permissionless RPC)
# working-directory: .github/scripts
# run: ./monitor-verified-batches.sh --rpc-url "$(kurtosis port print ${{ env.ENCLAVE_NAME }} zkevm-node-rpc-pless-001 http-rpc)"

- name: Monitor verified batches of the second L2 chain (CDK Erigon Permissionless RPC)
working-directory: .github/scripts
run: ./monitor-verified-batches.sh --rpc-url "$(kurtosis port print ${{ env.ENCLAVE_NAME }} cdk-erigon-node-002 http-rpc)"

- name: Monitor verified batches of the second L2 chain (zkEVM Node Permissionless RPC)
working-directory: .github/scripts
run: ./monitor-verified-batches.sh --rpc-url "$(kurtosis port print ${{ env.ENCLAVE_NAME }} zkevm-node-rpc-pless-002 http-rpc)"
# - name: Monitor verified batches of the second L2 chain (zkEVM Node Permissionless RPC)
# working-directory: .github/scripts
# run: ./monitor-verified-batches.sh --rpc-url "$(kurtosis port print ${{ env.ENCLAVE_NAME }} zkevm-node-rpc-pless-002 http-rpc)"
35 changes: 21 additions & 14 deletions agglayer-attach-cdk-params.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ args:

# Additional services to run alongside the network.
# Options:
# - arpeggio
# - blockscout
# - blutgang
# - pless_zkevm_node
Expand All @@ -55,19 +56,22 @@ args:
additional_services: []

# Docker images and repositories used to spin up services.
zkevm_prover_image: hermeznetwork/zkevm-prover:v6.0.3-RC20
zkevm_node_image: hermeznetwork/zkevm-node:v0.7.0
# This is a transitional image that includes a fix on top of version v8.0.0-rc.2-fork.12.
# https://github.com/0xPolygonHermez/zkevm-contracts/pull/323
zkevm_contracts_image: leovct/zkevm-contracts:feature-verified-number-e2ef9ca-fork.12
#zkevm_contracts_image: leovct/zkevm-contracts:v8.0.0-rc.2-fork.12
zkevm_prover_image: hermeznetwork/zkevm-prover:v8.0.0-RC10-fork.12

zkevm_node_image: hermeznetwork/zkevm-node:v0.7.3-RC1
cdk_validium_node_image: 0xpolygon/cdk-validium-node:0.7.0-cdk
cdk_node_image: ghcr.io/0xpolygon/cdk:0.0.16
zkevm_da_image: 0xpolygon/cdk-data-availability:0.0.9
zkevm_contracts_image: leovct/zkevm-contracts:v6.0.0-rc.1-fork.9

# zkevm_agglayer_image: 0xpolygon/agglayer:0.1.3
zkevm_agglayer_image: ghcr.io/agglayer/agglayer-rs:main
zkevm_bridge_service_image: hermeznetwork/zkevm-bridge-service:v0.5.0-RC10
cdk_node_image: ghcr.io/0xpolygon/cdk:0.0.17
zkevm_da_image: 0xpolygon/cdk-data-availability:0.0.9
zkevm_agglayer_image: ghcr.io/agglayer/agglayer-rs:pr-96
zkevm_bridge_service_image: hermeznetwork/zkevm-bridge-service:v0.5.0-RC12
zkevm_bridge_ui_image: leovct/zkevm-bridge-ui:multi-network
zkevm_bridge_proxy_image: haproxy:2.9.9-bookworm
zkevm_sequence_sender_image: hermeznetwork/zkevm-sequence-sender:v0.2.0-RC4
zkevm_bridge_proxy_image: haproxy:3.0-bookworm
zkevm_sequence_sender_image: hermeznetwork/zkevm-sequence-sender:v0.2.0-RC12
cdk_erigon_node_image: hermeznetwork/cdk-erigon:v2.0.0-beta18
zkevm_pool_manager_image: hermeznetwork/zkevm-pool-manager:v0.1.0-RC1

Expand Down Expand Up @@ -140,6 +144,13 @@ args:
# The chain id of the new rollup.
zkevm_rollup_chain_id: 20202

# The rollup ID.
# This should increment by 1 with each additional CDKs being created using the rollup manager contract.
zkevm_rollup_id: 2

# The rollup type ID.
zkevm_rollup_type_id: "1"

# If erigon is being used as the sequencer,
# This flag will enable a stateless executor to verify the execution of the batches.
erigon_strict_mode: true
Expand All @@ -152,10 +163,6 @@ args:
rollup_manager_address: "0x2F50ef6b8e8Ee4E579B17619A92dE3E2ffbD8AD2"
# The address of the L2 gas token.
zkevm_gas_token_address: "0xEdE9cf798E0fE25D35469493f43E88FeA4a5da0E"
# The rollup type ID.
zkevm_rollup_type_id: "1"
# The rollup ID. This should increment by 1 with each additional CDKs being created using the rollup manager contract.
zkevm_rollup_id: 2

# The address of the rollup manager contract on L1.
# If specified, the rollup data will be retrieved from this contract instead of using the contracts service.
Expand Down
1 change: 1 addition & 0 deletions docker/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ From now on, the [leovct/zkevm-contracts](https://hub.docker.com/repository/dock
| 11-RC2 | [v7.0.0-rc.2-fork.10](https://github.com/0xPolygonHermez/zkevm-contracts/commits/v7.0.0-rc.2-fork.10) | [leovct/zkevm-contracts:v7.0.0-rc.2-fork.11](https://hub.docker.com/layers/leovct/zkevm-contracts/v7.0.0-rc.2-fork.11/images/sha256-8e7322525e4c0b6fd5141987d786bfd3f7fec3b0c1724843d99751df5f26f46e?context=explore) |
| 12-RC1 | [v8.0.0-rc.1-fork.12](https://github.com/0xPolygonHermez/zkevm-contracts/releases/tag/v8.0.0-rc.1-fork.12) | [leovct/zkevm-contracts:v8.0.0-rc.1-fork.12](https://hub.docker.com/layers/leovct/zkevm-contracts/v8.0.0-rc.1-fork.12/images/sha256-2197c0b502b93e77bee36a4b87e318a49c6b97bb74b0aca8a13767ef0e684607?context=repo) |
| 12-RC2 | [v8.0.0-rc.2-fork.12](https://github.com/0xPolygonHermez/zkevm-contracts/releases/tag/v8.0.0-rc.2-fork.12) | [leovct/zkevm-contracts:v8.0.0-rc.2-fork.12](https://hub.docker.com/layers/leovct/zkevm-contracts/v8.0.0-rc.2-fork.12/images/sha256-5d835411ff43efb1008eeede0d25db79f6cb563e86d76b33274bcaebc8f9f7d0?context=repo) |
| 12-feature-verified-number-e2ef9ca | [feature/verifiers-number@e2ef9ca](https://github.com/0xPolygonHermez/zkevm-contracts/commit/e2ef9ca2defa11e2a66e00d509a5f29eb7339216) | [leovct/zkevm-contracts:feature-verified-number-e2ef9ca-fork.12](https://hub.docker.com/layers/leovct/zkevm-contracts/feature-verified-number-e2ef9ca-fork.12/images/sha256-2c788bb097ea7bc2b3e3e0ac0d79e3d6a643311b8123420c208fd2789e33e739?context=repo) |

The following tags are now deprecated:

Expand Down
16 changes: 8 additions & 8 deletions input_parser.star
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,17 @@ DEFAULT_ARGS = {
"deploy_agglayer": True,
"data_availability_mode": "cdk-validium",
"additional_services": [],
"zkevm_prover_image": "hermeznetwork/zkevm-prover:v6.0.3-RC20",
"zkevm_node_image": "hermeznetwork/zkevm-node:v0.7.0",
"zkevm_contracts_image": "leovct/zkevm-contracts:feature-verified-number-e2ef9ca-fork.12",
"zkevm_prover_image": "hermeznetwork/zkevm-prover:v8.0.0-RC10-fork.12",
"zkevm_node_image": "hermeznetwork/zkevm-node:v0.7.3-RC1",
"cdk_validium_node_image": "0xpolygon/cdk-validium-node:0.7.0-cdk",
"cdk_node_image": "ghcr.io/0xpolygon/cdk:0.0.16",
"cdk_node_image": "ghcr.io/0xpolygon/cdk:0.0.17",
"zkevm_da_image": "0xpolygon/cdk-data-availability:0.0.9",
"zkevm_contracts_image": "leovct/zkevm-contracts:v6.0.0-rc.1-fork.9",
"zkevm_agglayer_image": "ghcr.io/agglayer/agglayer-rs:main",
"zkevm_bridge_service_image": "hermeznetwork/zkevm-bridge-service:v0.5.0-RC10",
"zkevm_agglayer_image": "ghcr.io/agglayer/agglayer-rs:pr-96",
"zkevm_bridge_service_image": "hermeznetwork/zkevm-bridge-service:v0.5.0-RC12",
"zkevm_bridge_ui_image": "leovct/zkevm-bridge-ui:multi-network",
"zkevm_bridge_proxy_image": "haproxy:2.9.9-bookworm",
"zkevm_sequence_sender_image": "hermeznetwork/zkevm-sequence-sender:v0.2.0-RC4",
"zkevm_bridge_proxy_image": "haproxy:3.0-bookworm",
"zkevm_sequence_sender_image": "hermeznetwork/zkevm-sequence-sender:v0.2.0-RC12",
"cdk_erigon_node_image": "hermeznetwork/cdk-erigon:v2.0.0-beta18",
"zkevm_pool_manager_image": "hermeznetwork/zkevm-pool-manager:v0.1.0-RC1",
"zkevm_hash_db_port": 50061,
Expand Down
158 changes: 2 additions & 156 deletions kurtosis.yml
Original file line number Diff line number Diff line change
@@ -1,157 +1,3 @@
name: github.com/0xPolygon/kurtosis-cdk
description: |-
Polygon CDK
========
This package allows you to provision a Polygon CDK Devnet within Kurtosis

Configuration
-------------
Currently, the deployment process includes the following stages:

Deploy Local L1.
Deploy zkEVM contracts on L1.
Deploy zkEVM node and CDK peripheral databases.
Deploy CDK central/trusted environment.
Deploy CDK/bridge infrastructure.
Deploy permissionless node.
Deploy CDK erigon node.
Deploy observability stack.
Deploy eth load balancer.
Apply workload to the different components of the CDK stack.

These are configurable via the form inputs.

The following other args optionally configurable via args object. Here are the default values:

```yml
# Suffix appended to service names.
# Note: It should be a string.
deployment_suffix: "-001"

# The global log level that all components of the stack should log at.
# Valid values are "error", "warn", "info", "debug", and "trace".
global_log_level: info

sequencer_type: erigon

deploy_agglayer: true

# The type of data availability to use.
# Options:
# - 'rollup': Transaction data is stored on-chain on L1.
# - 'cdk-validium': Transaction data is stored off-chain using the CDK DA layer and a DAC.
# In the future, we would like to support external DA protocols such as Avail, Celestia and Near.
data_availability_mode: cdk-validium

# Additional services to run alongside the network.
additional_services: []

# Docker images and repositories used to spin up services.
zkevm_prover_image: hermeznetwork/zkevm-prover:v6.0.3-RC20
zkevm_node_image: hermeznetwork/zkevm-node:v0.7.0
cdk_validium_node_image: 0xpolygon/cdk-validium-node:0.7.0-cdk
cdk_node_image: ghcr.io/0xpolygon/cdk:0.0.16
zkevm_da_image: 0xpolygon/cdk-data-availability:0.0.9
zkevm_contracts_image: leovct/zkevm-contracts:v6.0.0-rc.1-fork.9

zkevm_agglayer_image: ghcr.io/agglayer/agglayer-rs:main
zkevm_bridge_service_image: hermeznetwork/zkevm-bridge-service:v0.5.0-RC10

# temporary fork https://github.com/praetoriansentry/zkevm-bridge-ui/commit/6eaa899997f70e53947d7b067ff7ae37ef1875f3
zkevm_bridge_ui_image: leovct/zkevm-bridge-ui:multi-network
zkevm_bridge_proxy_image: haproxy:2.9.9-bookworm

zkevm_sequence_sender_image: hermeznetwork/zkevm-sequence-sender:v0.2.0-RC4
cdk_erigon_node_image: hermeznetwork/cdk-erigon:v2.0.0-beta18
zkevm_pool_manager_image: hermeznetwork/zkevm-pool-manager:v0.1.0-RC1

# Port configuration.
zkevm_hash_db_port: 50061
zkevm_executor_port: 50071
zkevm_aggregator_port: 50081
zkevm_pprof_port: 6060
zkevm_prometheus_port: 9091
zkevm_data_streamer_port: 6900
zkevm_rpc_http_port: 8123
zkevm_rpc_ws_port: 8133
zkevm_bridge_rpc_port: 8080
zkevm_bridge_grpc_port: 9090
zkevm_bridge_ui_port: 80
zkevm_agglayer_port: 4444
zkevm_dac_port: 8484
zkevm_pool_manager_port: 8545

# Addresses and private keys of the different components.
# They have been generated using the following command:
# polycli wallet inspect --mnemonic 'lab code glass agree maid neutral vessel horror deny frequent favorite soft gate galaxy proof vintage once figure diary virtual scissors marble shrug drop' --addresses 9 | tee keys.txt | jq -r '.Addresses[] | [.ETHAddress, .HexPrivateKey] | @tsv' | awk 'BEGIN{split("sequencer,aggregator,claimtxmanager,timelock,admin,loadtest,agglayer,dac,proofsigner",roles,",")} {print "zkevm_l2_" roles[NR] "_address: \"" $1 "\""; print "zkevm_l2_" roles[NR] "_private_key: \"0x" $2 "\"\n"}'
zkevm_l2_sequencer_address: "0x5b06837A43bdC3dD9F114558DAf4B26ed49842Ed"
zkevm_l2_sequencer_private_key: "0x183c492d0ba156041a7f31a1b188958a7a22eebadca741a7fe64436092dc3181"

zkevm_l2_aggregator_address: "0xCae5b68Ff783594bDe1b93cdE627c741722c4D4d"
zkevm_l2_aggregator_private_key: "0x2857ca0e7748448f3a50469f7ffe55cde7299d5696aedd72cfe18a06fb856970"

zkevm_l2_claimtxmanager_address: "0x5f5dB0D4D58310F53713eF4Df80ba6717868A9f8"
zkevm_l2_claimtxmanager_private_key: "0x8d5c9ecd4ba2a195db3777c8412f8e3370ae9adffac222a54a84e116c7f8b934"

zkevm_l2_timelock_address: "0x130aA39Aa80407BD251c3d274d161ca302c52B7A"
zkevm_l2_timelock_private_key: "0x80051baf5a0a749296b9dcdb4a38a264d2eea6d43edcf012d20b5560708cf45f"

zkevm_l2_admin_address: "0xE34aaF64b29273B7D567FCFc40544c014EEe9970"
zkevm_l2_admin_private_key: "0x12d7de8621a77640c9241b2595ba78ce443d05e94090365ab3bb5e19df82c625"

zkevm_l2_loadtest_address: "0x81457240ff5b49CaF176885ED07e3E7BFbE9Fb81"
zkevm_l2_loadtest_private_key: "0xd7df6d64c569ffdfe7c56e6b34e7a2bdc7b7583db74512a9ffe26fe07faaa5de"

zkevm_l2_agglayer_address: "0x351e560852ee001d5D19b5912a269F849f59479a"
zkevm_l2_agglayer_private_key: "0x1d45f90c0a9814d8b8af968fa0677dab2a8ff0266f33b136e560fe420858a419"

zkevm_l2_dac_address: "0x5951F5b2604c9B42E478d5e2B2437F44073eF9A6"
zkevm_l2_dac_private_key: "0x85d836ee6ea6f48bae27b31535e6fc2eefe056f2276b9353aafb294277d8159b"

zkevm_l2_proofsigner_address: "0x7569cc70950726784c8D3bB256F48e43259Cb445"
zkevm_l2_proofsigner_private_key: "0x77254a70a02223acebf84b6ed8afddff9d3203e31ad219b2bf900f4780cf9b51"

# Keystore password.
zkevm_l2_keystore_password: pSnv6Dh5s9ahuzGzH9RoCDrKAMddaX3m

## L1 configuration.
l1_chain_id: 271828
l1_preallocated_mnemonic: code code code code code code code code code code code quality
l1_funding_amount: 100ether
l1_rpc_url: http://el-1-geth-lighthouse:8545
l1_ws_url: ws://el-1-geth-lighthouse:8546
# https://github.com/ethpandaops/ethereum-package/tree/main?tab=readme-ov-file#configuration
l1_additional_services: [
# blockscout, # block explorer
# dora, # beaconchain explorer
# el_forkmon, # fork monitor tool
]
l1_preset: minimal
l1_seconds_per_slot: 1

## Rollup configuration.

# The chain id of the new rollup.
zkevm_rollup_chain_id: 10101

# The rollupID of the CDK.
zkevm_rollup_id: 1

# If erigon is being used as the sequencer,
# This flag will enable a stateless executor to verify the execution of the batches.
erigon_strict_mode: true
# This flag will allow pre EIP155 transactions.
erigon_pre_eip155_transactions: true

polygon_zkevm_explorer: https://explorer.private/
l1_explorer_url: https://sepolia.etherscan.io/

# If this is true, we will automatically deploy an ERC20 contract on
# L1 to be used at the gasTokenAddress
zkevm_use_gas_token_contract: false

## Permissionless node configuration.
trusted_sequencer_node_uri: zkevm-node-sequencer-001:6900
zkevm_aggregator_host: zkevm-node-aggregator-001
genesis_file: templates/permissionless-node/genesis.json
```
description: |
A Kurtosis package that deploys a private, portable, and modular Polygon CDK devnet.
Loading