Skip to content

add playbook to run execution spec tests#40

Merged
skylenet merged 4 commits intomasterfrom
skylenet/exec-spec-tests
Sep 16, 2024
Merged

add playbook to run execution spec tests#40
skylenet merged 4 commits intomasterfrom
skylenet/exec-spec-tests

Conversation

@skylenet
Copy link
Copy Markdown
Member

@skylenet skylenet commented Sep 13, 2024

  • Added some dependencies on the dockerfiles, so that we can run the execution spec tests
  • Added a playbook to run the tests

Tested on the electra-support branch like this:

kurtosis.devnet.config.yaml:

participants_matrix:
  el:
    - el_type: erigon
      el_image: ethpandaops/erigon:docker_pectra_temp
    - el_type: reth
      el_image: ethpandaops/reth:onbjerg-devnet-3
  cl:
    - cl_type: nimbus
      cl_image: ethpandaops/nimbus-eth2:unstable
    - cl_type: lighthouse
      cl_image: ethpandaops/lighthouse:unstable
    - cl_type: prysm
      cl_image: ethpandaops/prysm-beacon-chain:develop
      vc_image: ethpandaops/prysm-validator:develop
network_params:
  electra_fork_epoch: 1
  min_validator_withdrawability_delay: 1
  shard_committee_period: 1
  churn_limit_quotient: 16
additional_services:
  - dora
  - assertoor
  - blockscout

custom-assertoor.devnet.config.yaml:

web:
  server:
    host: "0.0.0.0"
    port: 8080
  frontend:
    enabled: true
    debug: true
    pprof: true
  api:
    enabled: true

validatorNames:
  inventoryYaml: "${DEVNET_DIR}/generated-validator-ranges.yaml"

tests:
  - name: "Run execution spec tests"
    tasks:
      - name: run_shell
        title: Install dependencies
        config:
          shell: bash
          command: |
            dpkg --add-architecture amd64
            apt-get update
            apt-get install -y build-essential python3 python3-pip
            rm /usr/lib/python3*/EXTERNALLY-MANAGED

      - name: check_clients_are_healthy
        title: "Check if at least one client is ready"
        id: clientCheck
        clientPattern: "1-erigon-nimbus"
        timeout: 5m
        config:
          minClientCount: 1

      - name: get_consensus_specs
        id: consensusSpecs

      - name: run_external_tasks
        title: "Run execution spec tests: eip7702_set_code_tx"
        config:
          testFile: ./playbooks/dev/execution-spec-tests-execute.yaml
          testConfig:
            gitRepo: https://github.com/ethereum/execution-spec-tests.git
            gitBranch: fill-execute-modes
            testPath: ./tests/prague/eip7702_set_code_tx/test_set_code_txs.py::test_self_sponsored_set_code
            seedAmount: "100000000000000000000"
            extraFlags: "--fork=Prague -k=fork_Prague-transaction_post-stop-tx_value_0"
          testConfigVars:
            rpcEndpoint: "tasks.clientCheck.outputs.goodClients[0].elRpcUrl"
            chainID: "tasks.consensusSpecs.outputs.specs.DEPOSIT_CHAIN_ID"
            privateKey: "walletPrivkey"

@skylenet skylenet requested a review from pk910 September 13, 2024 14:09
@skylenet skylenet merged commit d53325e into master Sep 16, 2024
@barnabasbusa barnabasbusa deleted the skylenet/exec-spec-tests branch March 27, 2026 10:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants