1+ name : Run test vector generation
2+
3+ defaults :
4+ run :
5+ shell : zsh {0}
6+
7+ on :
8+ workflow_dispatch :
9+ inputs :
10+ ref :
11+ description : The branch, tag or SHA to checkout and build from
12+ default : dev
13+ type : string
14+ required : true
15+
16+ jobs :
17+ generate-tests :
18+ runs-on : [self-hosted-ghr-custom, size-chungus-x64, profile-consensusSpecs]
19+ steps :
20+ - name : Checkout repository
21+ uses : actions/checkout@v4
22+ with :
23+ repository : ' ethereum/consensus-specs'
24+ path : ' consensus-specs'
25+ ref : ${{ inputs.source_ref }}
26+ - name : Checkout consensus-spec-tests repository
27+ uses : actions/checkout@v4
28+ with :
29+ repository : ' ethereum/consensus-spec-tests'
30+ path : ' consensus-spec-tests'
31+ fetch-depth : 1
32+ - name : Setup Python
33+ uses : actions/setup-python@v5
34+ with :
35+ python-version : ' 3.10'
36+ cache : ' '
37+ - name : Clean up Spec Repository
38+ run : |
39+ cd consensus-specs
40+ make clean
41+ - name : Install dependencies and generate pyspec
42+ run : |
43+ cd consensus-specs
44+ make install_test
45+ make -B pyspec
46+ - name : Generate tests
47+ run : |
48+ cd consensus-specs
49+ make -j 16 generate_tests 2>&1 | tee ../consensustestgen.log
50+ cp -r presets/ ../consensus-spec-tests/presets
51+ cp -r configs/ ../consensus-spec-tests/configs
52+ find . -type d -empty -delete
53+ - name : Archive configurations
54+ run : |
55+ cd consensus-spec-tests
56+ tar -czvf general.tar.gz tests/general
57+ tar -czvf minimal.tar.gz tests/minimal
58+ tar -czvf mainnet.tar.gz tests/mainnet
59+ - name : Upload general.tar.gz
60+ uses : actions/upload-artifact@v4
61+ with :
62+ name : General Test Configuration
63+ path : consensus-spec-tests/general.tar.gz
64+ - name : Upload minimal.tar.gz
65+ uses : actions/upload-artifact@v4
66+ with :
67+ name : Minimal Test Configuration
68+ path : consensus-spec-tests/minimal.tar.gz
69+ - name : Upload mainnet.tar.gz
70+ uses : actions/upload-artifact@v4
71+ with :
72+ name : Mainnet Test Configuration
73+ path : consensus-spec-tests/mainnet.tar.gz
74+ - name : Upload consensustestgen
75+ uses : actions/upload-artifact@v4
76+ with :
77+ name : consensustestgen.log
78+ path : consensustestgen.log
0 commit comments