Skip to content

Commit

Permalink
ci: include conversion tests | use matrix. (#470)
Browse files Browse the repository at this point in the history
* feat: tweak eest ci (matrix).

* chore: remove prev ci.
  • Loading branch information
spencer-tb authored Aug 8, 2024
1 parent 308e802 commit 47addd7
Show file tree
Hide file tree
Showing 2 changed files with 118 additions and 40 deletions.
118 changes: 118 additions & 0 deletions .github/workflows/spec-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
name: Execution Spec Tests Fill and Consume (Verkle genesis & conversion)

on:
push:
branches: [master]
pull_request:
branches: [master, kaustinen-with-shapella]
workflow_dispatch:

env:
EEST_USER: 'jsign'
EEST_BRANCH: 'jsign-verkle-rebased-mainnet'

jobs:
setup:
runs-on: ubuntu-latest
steps:
- name: Checkout go-ethereum
uses: actions/checkout@v4

- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.12.4"

- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.22.4

- name: Build geth evm
run: |
go build -v ./cmd/evm
mkdir -p ${{ github.workspace }}/bin
mv evm ${{ github.workspace }}/bin/evm
chmod +x ${{ github.workspace }}/bin/evm
- name: Archive built evm
uses: actions/upload-artifact@v4
with:
name: evm
path: ${{ github.workspace }}/bin/evm

fill:
runs-on: ubuntu-latest
needs: setup
strategy:
matrix:
test-type: [genesis, conversion]
steps:
- name: Download geth evm
uses: actions/download-artifact@v4
with:
name: evm
path: ./bin

- name: Make evm binary executable and add to PATH
run: |
chmod +x ./bin/evm
echo "${{ github.workspace }}/bin" >> $GITHUB_PATH
- name: Clone execution-spec-tests and fill tests
run: |
git clone https://github.com/${{ env.EEST_USER }}/execution-spec-tests -b ${{ env.EEST_BRANCH }}
cd execution-spec-tests
python3 -m venv venv
. venv/bin/activate
pip install --upgrade pip
pip install -e ".[docs,lint,test]"
solc-select use 0.8.24 --always-install
if [ "${{ matrix.test-type }}" == "genesis" ]; then
fill --fork Verkle --output=../fixtures-${{ matrix.test-type }} -v -m blockchain_test -n auto
else
fill --fork EIP6800Transition --output=../fixtures-${{ matrix.test-type }} -v -m blockchain_test -n auto
fi
shell: bash

- name: Upload fixtures
uses: actions/upload-artifact@v4
with:
name: fixtures-${{ matrix.test-type }}
path: fixtures-${{ matrix.test-type }}

consume:
runs-on: ubuntu-latest
needs: fill
strategy:
matrix:
test-type: [genesis, conversion]
steps:
- name: Download geth evm
uses: actions/download-artifact@v4
with:
name: evm
path: ./bin

- name: Make evm binary executable and add to PATH
run: |
chmod +x ./bin/evm
echo "${{ github.workspace }}/bin" >> $GITHUB_PATH
- name: Download fixtures
uses: actions/download-artifact@v4
with:
name: fixtures-${{ matrix.test-type }}
path: ./fixtures-${{ matrix.test-type }}

- name: Clone execution-spec-tests and consume tests
run: |
git clone https://github.com/${{ env.EEST_USER }}/execution-spec-tests -b ${{ env.EEST_BRANCH }}
cd execution-spec-tests
python3 -m venv venv
. venv/bin/activate
pip install --upgrade pip
pip install -e ".[docs,lint,test]"
solc-select use 0.8.24 --always-install
consume direct --input=../fixtures-${{ matrix.test-type }} -n auto
shell: bash
40 changes: 0 additions & 40 deletions .github/workflows/spectests-genesis.yml

This file was deleted.

0 comments on commit 47addd7

Please sign in to comment.