Create Fixture Full Release #1
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Create Fixture Full Release | |
| on: | |
| push: | |
| tags: | |
| - "tests-v[0-9]+.[0-9]+.[0-9]+*" | |
| workflow_dispatch: | |
| jobs: | |
| features: | |
| runs-on: ubuntu-latest | |
| outputs: | |
| features: ${{ steps.parse.outputs.features }} | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | |
| - name: Get names from .github/configs/feature.yaml | |
| id: parse | |
| shell: bash | |
| run: | | |
| # Get all features without `feature_only: true` | |
| grep -Po "^[0-9a-zA-Z_\-]+" ./.github/configs/feature.yaml | \ | |
| while read feature; do | |
| if ! awk "/^$feature:/{flag=1; next} /^[[:alnum:]]/{flag=0} flag && /feature_only:.*true/{exit 1}" \ | |
| ./.github/configs/feature.yaml; then | |
| continue | |
| fi | |
| echo "$feature" | |
| done | jq -R . | jq -cs . > features.json | |
| echo "features=$(cat features.json)" >> "$GITHUB_OUTPUT" | |
| build: | |
| needs: features | |
| runs-on: [self-hosted-ghr, size-gigachungus-x64] | |
| timeout-minutes: 1440 | |
| strategy: | |
| matrix: | |
| name: ${{ fromJson(needs.features.outputs.features) }} | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | |
| with: | |
| submodules: true | |
| - name: Fetch lllc | |
| uses: ./.github/actions/fetch-binary | |
| with: | |
| version: v1.0.0 | |
| repo_owner: felix314159 | |
| repo_name: lllc-custom | |
| remote_name: lllc | |
| binary_name: lllc | |
| expected_sha256: 865a0d5379acb3b5471337b5dcf686a2dd71587c6b65b9da6c963de627e0b300 | |
| - name: Fetch Solidity | |
| uses: ./.github/actions/fetch-binary | |
| with: | |
| version: v0.8.24 | |
| repo_owner: ethereum | |
| repo_name: solidity | |
| remote_name: solc-static-linux | |
| binary_name: solc | |
| expected_sha256: fb03a29a517452b9f12bcf459ef37d0a543765bb3bbc911e70a87d6a37c30d5f | |
| - uses: ./.github/actions/build-fixtures | |
| with: | |
| release_name: ${{ matrix.name }} | |
| uv_version: ${{ vars.UV_VERSION }} | |
| python_version: ${{ vars.DEFAULT_PYTHON_VERSION }} | |
| release: | |
| runs-on: ubuntu-latest | |
| needs: build | |
| if: startsWith(github.ref, 'refs/tags/tests-') | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 | |
| with: | |
| submodules: false | |
| - name: Download all artifacts | |
| run: | | |
| gh run download ${{ github.run_id }} --dir ./artifacts | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| - name: Create Release | |
| run: | | |
| # Strip "tests-" prefix from tag for EEST | |
| TAG_NAME="${{ github.ref_name }}" | |
| RELEASE_TAG="${TAG_NAME#tests-}" | |
| gh release create "$RELEASE_TAG" \ | |
| --repo ethereum/execution-spec-tests \ | |
| --draft \ | |
| --generate-notes \ | |
| ./artifacts/**/* | |
| env: | |
| GH_TOKEN: ${{ secrets.EEST_RELEASE_TOKEN }} |