@@ -3,20 +3,58 @@ name: "Run execution spec tests"
33timeout : 1h
44config :
55 # walletPrivkey: ""
6+ walletSeed : " spectests"
67tasks :
78 # setup dependencies
89 - name : run_external_tasks
910 title : " Setup dependencies for execution spec tests"
1011 timeout : 30m
1112 config :
1213 testFile : https://raw.githubusercontent.com/ethpandaops/assertoor/master/playbooks/dev/execution-spec-tests-dependencies.yaml
14+
15+ - name : run_shell
16+ title : " Create temp dir for execution spec tests"
17+ id : tempdir
18+ config :
19+ shell : bash
20+ command : |
21+ set -e
22+ tmp_dir=$(mktemp -d -t execution-spec-tests-XXXXXXXXXX)
23+
24+ echo "============================"
25+ echo "Temp dir created: ${tmp_dir}"
26+ echo "============================"
27+
28+ echo "::set-output path ${tmp_dir}"
1329
30+ - name : run_external_tasks
31+ title : " Clone and prepare execution spec tests"
32+ id : setup
33+ timeout : 10m
34+ config :
35+ testFile : https://raw.githubusercontent.com/ethpandaops/assertoor/master/playbooks/dev/execution-spec-tests-execute.yaml
36+ testConfig :
37+ gitRepo : https://github.com/pk910/execution-spec-tests.git
38+ gitBranch : pk910/devnet-execution-fixes
39+ runTests : false
40+ testConfigVars :
41+ specTestsPath : " tasks.tempdir.outputs.path"
42+
1443 - name : check_clients_are_healthy
1544 title : " Check if at least one client is ready"
1645 id : clientCheck
1746 timeout : 5m
1847 config :
1948 minClientCount : 1
49+
50+ - name : generate_child_wallet
51+ id : specTestsWallet
52+ title : " Generate main wallet for tests"
53+ config :
54+ prefundMinBalance : 10000000000000000000000 # ensure a balance of 10000 ETH
55+ configVars :
56+ privateKey : " walletPrivkey"
57+ walletSeed : " walletSeed"
2058
2159 # wait for electra activation
2260 - name : get_consensus_specs
@@ -29,18 +67,120 @@ tasks:
2967 minEpochNumber : " tasks.consensusSpecs.outputs.specs.ELECTRA_FORK_EPOCH"
3068
3169 # run execution spec tests
32- - name : run_external_tasks
33- title : " Run execution spec tests: tests/prague"
34- timeout : 1h
70+
71+ - name : run_tasks_concurrent
72+ title : " Run execution spec tests"
73+ id : tests
3574 config :
36- testFile : https://raw.githubusercontent.com/ethpandaops/assertoor/master/playbooks/dev/execution-spec-tests-execute.yaml
37- testConfig :
38- gitRepo : https://github.com/ethereum/execution-spec-tests.git
39- gitBranch : main
40- testPath : ./tests/prague
41- seedAmount : " 100000000000000000000"
42- extraFlags : " --fork=Prague -n 16"
43- testConfigVars :
44- rpcEndpoint : " tasks.clientCheck.outputs.goodClients[0].elRpcUrl"
45- chainID : " tasks.consensusSpecs.outputs.specs.DEPOSIT_CHAIN_ID"
46- seedPrivateKey : " walletPrivkey"
75+ failTaskCount : 0
76+ tasks :
77+ - name : run_external_tasks
78+ title : " Run execution spec tests: tests/prague/eip2537_bls_12_381_precompiles"
79+ timeout : 2h
80+ config :
81+ testFile : https://raw.githubusercontent.com/ethpandaops/assertoor/master/playbooks/dev/execution-spec-tests-execute.yaml
82+ testConfig :
83+ gitRepo : https://github.com/pk910/execution-spec-tests.git
84+ gitBranch : pk910/devnet-execution-fixes
85+ testPath : ./tests/prague/eip2537_bls_12_381_precompiles
86+ seedAmount : " 100000000000000000000" # 100 ETH
87+ extraFlags : " --fork=Prague -n 16"
88+ runSetup : false
89+ cleanupTestsPath : false
90+ testConfigVars :
91+ rpcEndpoint : " tasks.clientCheck.outputs.goodClients[0].elRpcUrl"
92+ chainID : " tasks.consensusSpecs.outputs.specs.DEPOSIT_CHAIN_ID"
93+ seedPrivateKey : " tasks.specTestsWallet.outputs.childWallet.privkey"
94+ specTestsPath : " tasks.tempdir.outputs.path"
95+
96+ - name : run_external_tasks
97+ title : " Run execution spec tests: tests/prague/eip7002_el_triggerable_withdrawals"
98+ timeout : 2h
99+ config :
100+ testFile : https://raw.githubusercontent.com/ethpandaops/assertoor/master/playbooks/dev/execution-spec-tests-execute.yaml
101+ testConfig :
102+ gitRepo : https://github.com/pk910/execution-spec-tests.git
103+ gitBranch : pk910/devnet-execution-fixes
104+ testPath : ./tests/prague/eip7002_el_triggerable_withdrawals
105+ seedAmount : " 100000000000000000000" # 100 ETH
106+ extraFlags : " --fork=Prague -n 16"
107+ runSetup : false
108+ cleanupTestsPath : false
109+ testConfigVars :
110+ rpcEndpoint : " tasks.clientCheck.outputs.goodClients[0].elRpcUrl"
111+ chainID : " tasks.consensusSpecs.outputs.specs.DEPOSIT_CHAIN_ID"
112+ seedPrivateKey : " tasks.specTestsWallet.outputs.childWallet.privkey"
113+ specTestsPath : " tasks.tempdir.outputs.path"
114+
115+ - name : run_external_tasks
116+ title : " Run execution spec tests: tests/prague/eip7251_consolidations"
117+ timeout : 2h
118+ config :
119+ testFile : https://raw.githubusercontent.com/ethpandaops/assertoor/master/playbooks/dev/execution-spec-tests-execute.yaml
120+ testConfig :
121+ gitRepo : https://github.com/pk910/execution-spec-tests.git
122+ gitBranch : pk910/devnet-execution-fixes
123+ testPath : ./tests/prague/eip7251_consolidations
124+ seedAmount : " 100000000000000000000" # 100 ETH
125+ extraFlags : " --fork=Prague -n 16"
126+ runSetup : false
127+ cleanupTestsPath : false
128+ testConfigVars :
129+ rpcEndpoint : " tasks.clientCheck.outputs.goodClients[0].elRpcUrl"
130+ chainID : " tasks.consensusSpecs.outputs.specs.DEPOSIT_CHAIN_ID"
131+ seedPrivateKey : " tasks.specTestsWallet.outputs.childWallet.privkey"
132+ specTestsPath : " tasks.tempdir.outputs.path"
133+
134+ - name : run_external_tasks
135+ title : " Run execution spec tests: tests/prague/eip7623_increase_calldata_cost"
136+ timeout : 2h
137+ config :
138+ testFile : https://raw.githubusercontent.com/ethpandaops/assertoor/master/playbooks/dev/execution-spec-tests-execute.yaml
139+ testConfig :
140+ gitRepo : https://github.com/pk910/execution-spec-tests.git
141+ gitBranch : pk910/devnet-execution-fixes
142+ testPath : ./tests/prague/eip7623_increase_calldata_cost
143+ seedAmount : " 100000000000000000000" # 100 ETH
144+ extraFlags : " --fork=Prague -n 16"
145+ runSetup : false
146+ cleanupTestsPath : false
147+ testConfigVars :
148+ rpcEndpoint : " tasks.clientCheck.outputs.goodClients[0].elRpcUrl"
149+ chainID : " tasks.consensusSpecs.outputs.specs.DEPOSIT_CHAIN_ID"
150+ seedPrivateKey : " tasks.specTestsWallet.outputs.childWallet.privkey"
151+ specTestsPath : " tasks.tempdir.outputs.path"
152+
153+ - name : run_external_tasks
154+ title : " Run execution spec tests: tests/prague/eip7702_set_code_tx"
155+ timeout : 2h
156+ config :
157+ testFile : https://raw.githubusercontent.com/ethpandaops/assertoor/master/playbooks/dev/execution-spec-tests-execute.yaml
158+ testConfig :
159+ gitRepo : https://github.com/pk910/execution-spec-tests.git
160+ gitBranch : pk910/devnet-execution-fixes
161+ testPath : ./tests/prague/eip7702_set_code_tx
162+ seedAmount : " 100000000000000000000" # 100 ETH
163+ extraFlags : " --fork=Prague -n 16"
164+ runSetup : false
165+ cleanupTestsPath : false
166+ testConfigVars :
167+ rpcEndpoint : " tasks.clientCheck.outputs.goodClients[0].elRpcUrl"
168+ chainID : " tasks.consensusSpecs.outputs.specs.DEPOSIT_CHAIN_ID"
169+ seedPrivateKey : " tasks.specTestsWallet.outputs.childWallet.privkey"
170+ specTestsPath : " tasks.tempdir.outputs.path"
171+
172+ cleanupTasks :
173+ - name : run_shell
174+ title : " Cleanup temp dir for execution spec tests"
175+ id : tempdir
176+ config :
177+ shell : bash
178+ envVars :
179+ SPEC_TESTS_PATH : specTestsPath
180+ command : |
181+ set -e
182+ SPEC_TESTS_PATH=$(echo $SPEC_TESTS_PATH | jq -r)
183+
184+ if [ ! -z "$SPEC_TESTS_PATH" ]; then
185+ rm -rf $SPEC_TESTS_PATH
186+ fi
0 commit comments