Skip to content

Commit aa367b4

Browse files
committed
Set up github actions
1 parent f0e83c3 commit aa367b4

2 files changed

Lines changed: 296 additions & 22 deletions

File tree

.github/workflows/evm-tests.yml

Lines changed: 296 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,296 @@
1+
name: EVM Tests
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
branches: [main]
8+
9+
jobs:
10+
blockchain-test-0-12000:
11+
name: BlockchainTest [0-12000]
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v4
15+
16+
- uses: oven-sh/setup-bun@v2
17+
18+
- name: Cache bun dependencies
19+
uses: actions/cache@v4
20+
with:
21+
path: ~/.bun/install/cache
22+
key: bun-${{ runner.os }}-${{ hashFiles('bun.lock') }}
23+
restore-keys: |
24+
bun-${{ runner.os }}-
25+
26+
- run: bun install
27+
28+
- name: Cache test fixtures
29+
uses: actions/cache@v4
30+
with:
31+
path: packages/evm/test-fixtures
32+
key: evm-test-fixtures-stable-${{ hashFiles('packages/evm/package.json') }}
33+
restore-keys: |
34+
evm-test-fixtures-stable-
35+
36+
- name: Setup uv
37+
uses: astral-sh/setup-uv@v4
38+
39+
- name: Download test fixtures
40+
working-directory: packages/evm
41+
run: uvx --from git+https://github.com/ethereum/execution-spec-tests consume cache --input=stable@latest --extract-to ./test-fixtures
42+
43+
- run: bun run build
44+
- run: LIMIT=12000 SKIP=0 bun test packages/evm/test/fixtures.test.ts --test-name-pattern=BlockchainTest
45+
46+
blockchain-test-12000-24000:
47+
name: BlockchainTest [12000-24000]
48+
runs-on: ubuntu-latest
49+
steps:
50+
- uses: actions/checkout@v4
51+
52+
- uses: oven-sh/setup-bun@v2
53+
54+
- name: Cache bun dependencies
55+
uses: actions/cache@v4
56+
with:
57+
path: ~/.bun/install/cache
58+
key: bun-${{ runner.os }}-${{ hashFiles('bun.lock') }}
59+
restore-keys: |
60+
bun-${{ runner.os }}-
61+
62+
- run: bun install
63+
64+
- name: Cache test fixtures
65+
uses: actions/cache@v4
66+
with:
67+
path: packages/evm/test-fixtures
68+
key: evm-test-fixtures-stable-${{ hashFiles('packages/evm/package.json') }}
69+
restore-keys: |
70+
evm-test-fixtures-stable-
71+
72+
- name: Setup uv
73+
uses: astral-sh/setup-uv@v4
74+
75+
- name: Download test fixtures
76+
working-directory: packages/evm
77+
run: uvx --from git+https://github.com/ethereum/execution-spec-tests consume cache --input=stable@latest --extract-to ./test-fixtures
78+
79+
- run: bun run build
80+
- run: LIMIT=12000 SKIP=12000 bun test packages/evm/test/fixtures.test.ts --test-name-pattern=BlockchainTest
81+
82+
blockchain-test-24000-36000:
83+
name: BlockchainTest [24000-36000]
84+
runs-on: ubuntu-latest
85+
steps:
86+
- uses: actions/checkout@v4
87+
88+
- uses: oven-sh/setup-bun@v2
89+
90+
- name: Cache bun dependencies
91+
uses: actions/cache@v4
92+
with:
93+
path: ~/.bun/install/cache
94+
key: bun-${{ runner.os }}-${{ hashFiles('bun.lock') }}
95+
restore-keys: |
96+
bun-${{ runner.os }}-
97+
98+
- run: bun install
99+
100+
- name: Cache test fixtures
101+
uses: actions/cache@v4
102+
with:
103+
path: packages/evm/test-fixtures
104+
key: evm-test-fixtures-stable-${{ hashFiles('packages/evm/package.json') }}
105+
restore-keys: |
106+
evm-test-fixtures-stable-
107+
108+
- name: Setup uv
109+
uses: astral-sh/setup-uv@v4
110+
111+
- name: Download test fixtures
112+
working-directory: packages/evm
113+
run: uvx --from git+https://github.com/ethereum/execution-spec-tests consume cache --input=stable@latest --extract-to ./test-fixtures
114+
115+
- run: bun run build
116+
- run: LIMIT=12000 SKIP=24000 bun test packages/evm/test/fixtures.test.ts --test-name-pattern=BlockchainTest
117+
118+
blockchain-test-36000-48000:
119+
name: BlockchainTest [36000-48000]
120+
runs-on: ubuntu-latest
121+
steps:
122+
- uses: actions/checkout@v4
123+
124+
- uses: oven-sh/setup-bun@v2
125+
126+
- name: Cache bun dependencies
127+
uses: actions/cache@v4
128+
with:
129+
path: ~/.bun/install/cache
130+
key: bun-${{ runner.os }}-${{ hashFiles('bun.lock') }}
131+
restore-keys: |
132+
bun-${{ runner.os }}-
133+
134+
- run: bun install
135+
136+
- name: Cache test fixtures
137+
uses: actions/cache@v4
138+
with:
139+
path: packages/evm/test-fixtures
140+
key: evm-test-fixtures-stable-${{ hashFiles('packages/evm/package.json') }}
141+
restore-keys: |
142+
evm-test-fixtures-stable-
143+
144+
- name: Setup uv
145+
uses: astral-sh/setup-uv@v4
146+
147+
- name: Download test fixtures
148+
working-directory: packages/evm
149+
run: uvx --from git+https://github.com/ethereum/execution-spec-tests consume cache --input=stable@latest --extract-to ./test-fixtures
150+
151+
- run: bun run build
152+
- run: LIMIT=12000 SKIP=36000 bun test packages/evm/test/fixtures.test.ts --test-name-pattern=BlockchainTest
153+
154+
state-test-0-12000:
155+
name: StateTest [0-12000]
156+
runs-on: ubuntu-latest
157+
steps:
158+
- uses: actions/checkout@v4
159+
160+
- uses: oven-sh/setup-bun@v2
161+
162+
- name: Cache bun dependencies
163+
uses: actions/cache@v4
164+
with:
165+
path: ~/.bun/install/cache
166+
key: bun-${{ runner.os }}-${{ hashFiles('bun.lock') }}
167+
restore-keys: |
168+
bun-${{ runner.os }}-
169+
170+
- run: bun install
171+
172+
- name: Cache test fixtures
173+
uses: actions/cache@v4
174+
with:
175+
path: packages/evm/test-fixtures
176+
key: evm-test-fixtures-stable-${{ hashFiles('packages/evm/package.json') }}
177+
restore-keys: |
178+
evm-test-fixtures-stable-
179+
180+
- name: Setup uv
181+
uses: astral-sh/setup-uv@v4
182+
183+
- name: Download test fixtures
184+
working-directory: packages/evm
185+
run: uvx --from git+https://github.com/ethereum/execution-spec-tests consume cache --input=stable@latest --extract-to ./test-fixtures
186+
187+
- run: bun run build
188+
- run: LIMIT=12000 SKIP=0 bun test packages/evm/test/fixtures.test.ts --test-name-pattern=StateTest
189+
190+
state-test-12000-24000:
191+
name: StateTest [12000-24000]
192+
runs-on: ubuntu-latest
193+
steps:
194+
- uses: actions/checkout@v4
195+
196+
- uses: oven-sh/setup-bun@v2
197+
198+
- name: Cache bun dependencies
199+
uses: actions/cache@v4
200+
with:
201+
path: ~/.bun/install/cache
202+
key: bun-${{ runner.os }}-${{ hashFiles('bun.lock') }}
203+
restore-keys: |
204+
bun-${{ runner.os }}-
205+
206+
- run: bun install
207+
208+
- name: Cache test fixtures
209+
uses: actions/cache@v4
210+
with:
211+
path: packages/evm/test-fixtures
212+
key: evm-test-fixtures-stable-${{ hashFiles('packages/evm/package.json') }}
213+
restore-keys: |
214+
evm-test-fixtures-stable-
215+
216+
- name: Setup uv
217+
uses: astral-sh/setup-uv@v4
218+
219+
- name: Download test fixtures
220+
working-directory: packages/evm
221+
run: uvx --from git+https://github.com/ethereum/execution-spec-tests consume cache --input=stable@latest --extract-to ./test-fixtures
222+
223+
- run: bun run build
224+
- run: LIMIT=12000 SKIP=12000 bun test packages/evm/test/fixtures.test.ts --test-name-pattern=StateTest
225+
226+
state-test-24000-36000:
227+
name: StateTest [24000-36000]
228+
runs-on: ubuntu-latest
229+
steps:
230+
- uses: actions/checkout@v4
231+
232+
- uses: oven-sh/setup-bun@v2
233+
234+
- name: Cache bun dependencies
235+
uses: actions/cache@v4
236+
with:
237+
path: ~/.bun/install/cache
238+
key: bun-${{ runner.os }}-${{ hashFiles('bun.lock') }}
239+
restore-keys: |
240+
bun-${{ runner.os }}-
241+
242+
- run: bun install
243+
244+
- name: Cache test fixtures
245+
uses: actions/cache@v4
246+
with:
247+
path: packages/evm/test-fixtures
248+
key: evm-test-fixtures-stable-${{ hashFiles('packages/evm/package.json') }}
249+
restore-keys: |
250+
evm-test-fixtures-stable-
251+
252+
- name: Setup uv
253+
uses: astral-sh/setup-uv@v4
254+
255+
- name: Download test fixtures
256+
working-directory: packages/evm
257+
run: uvx --from git+https://github.com/ethereum/execution-spec-tests consume cache --input=stable@latest --extract-to ./test-fixtures
258+
259+
- run: bun run build
260+
- run: LIMIT=12000 SKIP=24000 bun test packages/evm/test/fixtures.test.ts --test-name-pattern=StateTest
261+
262+
state-test-36000-48000:
263+
name: StateTest [36000-48000]
264+
runs-on: ubuntu-latest
265+
steps:
266+
- uses: actions/checkout@v4
267+
268+
- uses: oven-sh/setup-bun@v2
269+
270+
- name: Cache bun dependencies
271+
uses: actions/cache@v4
272+
with:
273+
path: ~/.bun/install/cache
274+
key: bun-${{ runner.os }}-${{ hashFiles('bun.lock') }}
275+
restore-keys: |
276+
bun-${{ runner.os }}-
277+
278+
- run: bun install
279+
280+
- name: Cache test fixtures
281+
uses: actions/cache@v4
282+
with:
283+
path: packages/evm/test-fixtures
284+
key: evm-test-fixtures-stable-${{ hashFiles('packages/evm/package.json') }}
285+
restore-keys: |
286+
evm-test-fixtures-stable-
287+
288+
- name: Setup uv
289+
uses: astral-sh/setup-uv@v4
290+
291+
- name: Download test fixtures
292+
working-directory: packages/evm
293+
run: uvx --from git+https://github.com/ethereum/execution-spec-tests consume cache --input=stable@latest --extract-to ./test-fixtures
294+
295+
- run: bun run build
296+
- run: LIMIT=12000 SKIP=36000 bun test packages/evm/test/fixtures.test.ts --test-name-pattern=StateTest

bun.lock

Lines changed: 0 additions & 22 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)