Skip to content

Commit 5d5fcfb

Browse files
committed
add fillup-all-el-queues-valid test
1 parent b689ec8 commit 5d5fcfb

3 files changed

Lines changed: 106 additions & 4 deletions

File tree

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
2+
id: fillup-all-el-queues-valid
3+
name: "Fillup all EL request queues with valid requests"
4+
timeout: 1h
5+
config:
6+
walletPrivkey: ""
7+
requestCount: 500 # number of requests to send
8+
walletCount: 1 # number of wallets to send from
9+
requestFeeAmount: 10000000000000000 # 0.01 ETH
10+
throughputPerWallet: 20
11+
maxPendingPerWallet: 40
12+
walletSeed: ""
13+
keysPerRequestType: 500
14+
validatorMnemonic: "giant issue aisle success illegal bike spike question tent bar rely arctic volcano long crawl hungry vocal artwork sniff fantasy very lucky have athlete"
15+
tasks:
16+
- name: check_clients_are_healthy
17+
title: "Check if at least one client is ready"
18+
timeout: 5m
19+
config:
20+
minClientCount: 1
21+
22+
# wait for electra activation
23+
- name: get_consensus_specs
24+
id: get_specs
25+
title: "Get consensus chain specs"
26+
- name: check_consensus_slot_range
27+
title: "Wait for electra activation"
28+
timeout: 1h
29+
configVars:
30+
minEpochNumber: "tasks.get_specs.outputs.specs.ELECTRA_FORK_EPOCH"
31+
32+
# generate child wallets
33+
- name: generate_child_wallet
34+
id: withdrawal_wallet
35+
title: "Generate withdrawal wallet"
36+
config:
37+
prefundMinBalance: 1000000000000000000
38+
configVars:
39+
walletSeed: "| \"fillup-withdrawal-queue-\" + .walletSeed + \"0\""
40+
privateKey: "walletPrivkey"
41+
- name: generate_child_wallet
42+
id: consolidation_wallet
43+
title: "Generate consolidation wallet"
44+
config:
45+
prefundMinBalance: 1000000000000000000
46+
configVars:
47+
walletSeed: "| \"fillup-consolidation-queue-\" + .walletSeed + \"0\""
48+
privateKey: "walletPrivkey"
49+
50+
# generate BLS changes for all validators
51+
- name: run_tasks
52+
title: "Generate BLS changes for all validators"
53+
config:
54+
stopChildOnResult: false
55+
tasks:
56+
- name: generate_bls_changes
57+
title: "Send BLS changes for withdrawal wallet"
58+
config:
59+
startIndex: 0
60+
configVars:
61+
mnemonic: "validatorMnemonic"
62+
targetAddress: "tasks.withdrawal_wallet.outputs.childWallet.address"
63+
limitTotal: "keysPerRequestType"
64+
indexCount: "keysPerRequestType"
65+
- name: generate_bls_changes
66+
title: "Send BLS changes for consolidation wallet"
67+
configVars:
68+
mnemonic: "validatorMnemonic"
69+
targetAddress: "tasks.consolidation_wallet.outputs.childWallet.address"
70+
startIndex: "keysPerRequestType"
71+
limitTotal: "keysPerRequestType"
72+
indexCount: "keysPerRequestType"
73+
74+
# fillup all EL request queues (deposit, withdrawal, consolidation)
75+
- name: run_tasks_concurrent
76+
title: "Fillup all EL request queues"
77+
config:
78+
tasks:
79+
- name: run_external_tasks
80+
title: "Fillup deposit queue with ${{requestCount}} deposits"
81+
config:
82+
testFile: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/pectra-dev/kurtosis/fillup-deposit-queue.yaml
83+
configVars:
84+
testConfig: "| { \"depositCount\": .requestCount, \"depositMaxIndex\": 1, \"throughputPerIndex\": .throughputPerWallet, \"maxPendingPerIndex\": .maxPendingPerWallet, \"walletSeed\": .walletSeed }"
85+
- name: run_external_tasks
86+
title: "Fillup withdrawal request queue with ${{requestCount}} withdrawal requests"
87+
config:
88+
testFile: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/pectra-dev/kurtosis/fillup-withdrawal-queue.yaml
89+
configVars:
90+
testConfig: "| { \"withdrawalCount\": .requestCount, \"withdrawalMaxIndex\": 1, \"withdrawalTxFee\": .requestFeeAmount, \"throughputPerIndex\": .throughputPerWallet, \"maxPendingPerIndex\": .maxPendingPerWallet, \"walletSeed\": .walletSeed, \"sourceStartValidatorIndex\": 0, \"sourceValidatorCount\": .keysPerRequestType }"
91+
- name: run_external_tasks
92+
title: "Fillup consolidation request queue with ${{requestCount}} consolidation requests"
93+
config:
94+
testFile: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/pectra-dev/kurtosis/fillup-consolidation-queue.yaml
95+
configVars:
96+
testConfig: "| { \"consolidationCount\": .requestCount, \"consolidationMaxIndex\": 1, \"consolidationTxFee\": .requestFeeAmount, \"throughputPerIndex\": .throughputPerWallet, \"maxPendingPerIndex\": .maxPendingPerWallet, \"walletSeed\": .walletSeed, \"sourceStartValidatorIndex\": .keysPerRequestType, \"sourceValidatorCount\": .keysPerRequestType, \"targetValidatorIndex\": .keysPerRequestType }"

playbooks/pectra-dev/kurtosis/fillup-consolidation-queue.yaml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ config:
1010
throughputPerIndex: 20
1111
maxPendingPerIndex: 40
1212
walletSeed: ""
13+
sourceStartValidatorIndex: 0
14+
sourceValidatorCount: 0
15+
targetValidatorIndex: 0
1316
tasks:
1417
- name: check_clients_are_healthy
1518
title: "Check if at least one client is ready"
@@ -84,8 +87,6 @@ tasks:
8487
name: generate_consolidations
8588
title: "Generate consolidations for key ${{worker.index}} (${{tasks.get_validator.outputs.pubkey}})"
8689
config:
87-
sourceStartValidatorIndex: 0
88-
targetValidatorIndex: 0
8990
awaitReceipt: true
9091
failOnReject: true
9192
configVars:
@@ -94,4 +95,7 @@ tasks:
9495
limitPending: "maxPendingPerIndex"
9596
walletPrivkey: "tasks.consolidationor_wallet.outputs.childWallet.privkey"
9697
txAmount: "consolidationTxFee"
98+
sourceStartValidatorIndex: "sourceStartValidatorIndex"
99+
sourceIndexCount: "sourceValidatorCount"
100+
targetValidatorIndex: "targetValidatorIndex"
97101

playbooks/pectra-dev/kurtosis/fillup-withdrawal-queue.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ config:
1010
throughputPerIndex: 20
1111
maxPendingPerIndex: 40
1212
walletSeed: ""
13+
sourceStartValidatorIndex: 0
14+
sourceValidatorCount: 0
1315
tasks:
1416
- name: check_clients_are_healthy
1517
title: "Check if at least one client is ready"
@@ -85,8 +87,6 @@ tasks:
8587
title: "Generate withdrawals for key ${{worker.index}} (${{tasks.get_validator.outputs.pubkey}})"
8688
config:
8789
withdrawAmount: 1 # 1 ETH
88-
sourceStartValidatorIndex: 0
89-
targetValidatorIndex: 0
9090
awaitReceipt: true
9191
failOnReject: true
9292
configVars:
@@ -95,4 +95,6 @@ tasks:
9595
limitPending: "maxPendingPerIndex"
9696
walletPrivkey: "tasks.withdrawal_wallet.outputs.childWallet.privkey"
9797
txAmount: "withdrawalTxFee"
98+
sourceStartValidatorIndex: "sourceStartValidatorIndex"
99+
sourceIndexCount: "sourceValidatorCount"
98100

0 commit comments

Comments
 (0)