1111
1212 version-bump :
1313 name : ' Version Bump'
14- runs-on : ubuntu-latest
14+ runs-on : [self-hosted, linux, flyweight-ephemeral]
1515 steps :
1616 - name : ' Check out code'
1717 uses : actions/checkout@v3
@@ -36,12 +36,14 @@ jobs:
3636 run : git push origin HEAD:${GITHUB_HEAD_REF}
3737
3838 kevm-pyk-code-quality-checks :
39- needs : version-bump
4039 name : ' Code Quality Checks'
41- runs-on : ubuntu-latest
40+ runs-on : [self-hosted, linux, flyweight-ephemeral]
4241 steps :
4342 - name : ' Check out code'
4443 uses : actions/checkout@v3
44+ - uses : actions/setup-python@v4
45+ with :
46+ python-version : " 3.10"
4547 - name : ' Install Poetry'
4648 uses : Gr1N/setup-poetry@v8
4749 - name : ' Run code quality checks'
@@ -52,13 +54,16 @@ jobs:
5254 kevm-pyk-unit-tests :
5355 needs : kevm-pyk-code-quality-checks
5456 name : ' Unit Tests'
55- runs-on : ubuntu-latest
57+ runs-on : [self-hosted, linux, normal-ephemeral]
5658 steps :
5759 - name : ' Check out code'
5860 uses : actions/checkout@v3
5961 with :
6062 submodules : true
6163 fetch-depth : 0
64+ - uses : actions/setup-python@v4
65+ with :
66+ python-version : " 3.10"
6267 - name : ' Install Poetry'
6368 uses : Gr1N/setup-poetry@v8
6469 - name : ' Run unit tests'
@@ -68,29 +73,22 @@ jobs:
6873 kevm-pyk-profile :
6974 needs : kevm-pyk-code-quality-checks
7075 name : ' Profiling'
71- runs-on : [self-hosted, linux, normal]
72- timeout-minutes : 15
76+ runs-on : [self-hosted, linux, normal-ephemeral]
7377 steps :
7478 - name : ' Check out code'
7579 uses : actions/checkout@v3
7680 with :
7781 submodules : recursive
7882 fetch-depth : 0
79- - name : ' Set up Docker '
80- uses : ./.github/ actions/with-docker
83+ - name : Setup Python
84+ uses : actions/setup-python@v4
8185 with :
82- container-name : kevm-ci-profile-${{ github.sha }}
83- - name : ' Build kevm-pyk'
84- run : docker exec -u github-user kevm-ci-profile-${{ github.sha }} /bin/bash -c 'make poetry'
85- - name : ' Build targets'
86- run : docker exec -u github-user kevm-ci-profile-${{ github.sha }} /bin/bash -c 'CXX=clang++-14 poetry -C kevm-pyk run kevm-dist --verbose build -j`nproc` plugin foundry'
86+ python-version : ' 3.10'
87+ - name : ' Install Poetry'
88+ uses : Gr1N/setup-poetry@v8
8789 - name : ' Run profiling'
8890 run : |
89- docker exec -u github-user kevm-ci-profile-${{ github.sha }} /bin/bash -c 'make profile'
90- - name : ' Tear down Docker'
91- if : always()
92- run : |
93- docker stop --time=0 kevm-ci-profile-${{ github.sha }}
91+ make -C kevm-pyk profile
9492
9593 test-concrete-execution :
9694 name : ' Build and Test KEVM concrete execution'
@@ -110,7 +108,7 @@ jobs:
110108 - name : ' Build kevm-pyk'
111109 run : docker exec -u github-user kevm-ci-concrete-${{ github.sha }} /bin/bash -c 'make poetry'
112110 - name : ' Build targets'
113- run : docker exec -u github-user kevm-ci-concrete-${{ github.sha }} /bin/bash -c 'CXX=clang++-14 poetry -C kevm-pyk run kevm-dist --verbose build -j`nproc` plugin llvm haskell'
111+ run : docker exec -u github-user kevm-ci-concrete-${{ github.sha }} /bin/bash -c 'CXX=clang++-14 poetry -C kevm-pyk run kdist --verbose build -j`nproc` evm-semantics. llvm evm-semantics. haskell'
114112 - name : ' Test integration'
115113 run : docker exec -u github-user kevm-ci-concrete-${{ github.sha }} /bin/bash -c 'make test-integration'
116114 - name : ' Test conformance'
@@ -125,7 +123,7 @@ jobs:
125123 test-prove :
126124 name : ' Build and Test KEVM proofs'
127125 needs : kevm-pyk-code-quality-checks
128- runs-on : [self-hosted, linux, normal, fast]
126+ runs-on : [self-hosted, linux, fast]
129127 strategy :
130128 fail-fast : false
131129 matrix :
@@ -135,10 +133,10 @@ jobs:
135133 timeout : 45
136134 - test-suite : ' test-prove-pyk'
137135 test-args :
138- timeout : 120
136+ timeout : 180
139137 - test-suite : ' test-prove-pyk'
140138 test-args : ' --use-booster'
141- timeout : 90
139+ timeout : 150
142140 timeout-minutes : ${{ matrix.timeout }}
143141 steps :
144142 - name : ' Check out code'
@@ -152,50 +150,14 @@ jobs:
152150 - name : ' Build kevm-pyk'
153151 run : docker exec -u github-user kevm-ci-haskell-${{ matrix.test-suite }}-${{ github.sha }} /bin/bash -c 'make poetry'
154152 - name : ' Build distribution'
155- run : docker exec -u github-user kevm-ci-haskell-${{ matrix.test-suite }}-${{ github.sha }} /bin/bash -c 'CXX=clang++-14 poetry -C kevm-pyk run kevm-dist --verbose build -j`nproc` plugin haskell'
153+ run : docker exec -u github-user kevm-ci-haskell-${{ matrix.test-suite }}-${{ github.sha }} /bin/bash -c 'CXX=clang++-14 poetry -C kevm-pyk run kdist --verbose build -j`nproc` evm-semantics. plugin evm-semantics. haskell'
156154 - name : ' Prove Haskell'
157- run : docker exec -u github-user kevm-ci-haskell-${{ matrix.test-suite }}-${{ github.sha }} /bin/bash -c "make ${{ matrix.test-suite }} PYTEST_ARGS='-vv ${{ matrix.test-args }}' PYTEST_PARALLEL=7 "
155+ run : docker exec -u github-user kevm-ci-haskell-${{ matrix.test-suite }}-${{ github.sha }} /bin/bash -c "make ${{ matrix.test-suite }} PYTEST_ARGS='-vv ${{ matrix.test-args }}' PYTEST_PARALLEL=4 "
158156 - name : ' Tear down Docker'
159157 if : always()
160158 run : |
161159 docker stop --time=0 kevm-ci-haskell-${{ matrix.test-suite }}-${{ github.sha }}
162160
163- test-prove-foundry :
164- name : ' Build and Test KEVM Foundry proofs'
165- needs : kevm-pyk-code-quality-checks
166- runs-on : [self-hosted, linux, normal, fast]
167- strategy :
168- fail-fast : false
169- matrix :
170- include :
171- - test-suite : ' legacy'
172- test-args :
173- timeout : 180
174- - test-suite : ' booster'
175- test-args : ' --use-booster'
176- timeout : 90
177- timeout-minutes : ${{ matrix.timeout }}
178- steps :
179- - name : ' Check out code'
180- uses : actions/checkout@v3
181- with :
182- submodules : recursive
183- fetch-depth : 0
184- - name : ' Set up Docker'
185- uses : ./.github/actions/with-docker
186- with :
187- container-name : kevm-ci-foundry-${{ matrix.test-suite }}-${{ github.sha }}
188- - name : ' Build kevm-pyk'
189- run : docker exec -u github-user kevm-ci-foundry-${{ matrix.test-suite }}-${{ github.sha }} /bin/bash -c 'make poetry'
190- - name : ' Build targets'
191- run : docker exec -u github-user kevm-ci-foundry-${{ matrix.test-suite }}-${{ github.sha }} /bin/bash -c 'CXX=clang++-14 poetry -C kevm-pyk run kevm-dist --verbose build -j`nproc` plugin foundry'
192- - name : ' Foundry Prove'
193- run : docker exec -u github-user kevm-ci-foundry-${{ matrix.test-suite }}-${{ github.sha }} /bin/bash -c "make test-foundry-prove PYTEST_ARGS='-vv ${{ matrix.test-args }}'"
194- - name : ' Tear down Docker'
195- if : always()
196- run : |
197- docker stop --time=0 kevm-ci-foundry-${{ matrix.test-suite }}-${{ github.sha }}
198-
199161 nix :
200162 name : ' Nix'
201163 strategy :
0 commit comments